package com.gkhy.exam.admin.web; import com.gkhy.exam.common.annotation.Log; import com.gkhy.exam.common.annotation.RepeatSubmit; import com.gkhy.exam.common.api.CommonResult; import com.gkhy.exam.common.enums.BusinessType; import com.gkhy.exam.system.domain.ExQuestionBank; import com.gkhy.exam.system.service.ExQuestionBankService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; /** *
* 题库表 前端控制器 *
* * @author kzy * @since 2024-06-14 17:42:30 */ @Api(tags = "题库前端控制器") @RestController @RequestMapping("/question-bank") public class ExQuestionBankController { @Autowired private ExQuestionBankService questionBankService; @ApiOperation(value = "题库列表(分页)") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", name = "pageNum", dataType = "int", required = false, value = "当前页,默认1"), @ApiImplicitParam(paramType = "query", name = "pageSize", dataType = "int", required = false, value = "每页数目,默认10") }) @GetMapping("/list") public CommonResult list(ExQuestionBank questionBank){ return CommonResult.success(questionBankService.selectQuestionBankList(questionBank)); } @ApiOperation(value = "根据id获取题库信息") @GetMapping(value = { "/{bankId}" }) public CommonResult getQuestionBankInfo(@PathVariable(value = "bankId", required = true) Long bankId) { return CommonResult.success(questionBankService.selectQuestionBankById(bankId)); } @RepeatSubmit @Log(title = "题库管理", businessType = BusinessType.INSERT) @ApiOperation(value = "新增题库") @PostMapping public CommonResult add(@Validated @RequestBody ExQuestionBank questionBank){ return CommonResult.success(questionBankService.insertQuestionBank(questionBank)); } @RepeatSubmit @Log(title = "题库管理", businessType = BusinessType.UPDATE) @ApiOperation(value = "编辑题库") @PutMapping public CommonResult edit(@Validated @RequestBody ExQuestionBank questionBank){ return CommonResult.success(questionBankService.updateQuestionBank(questionBank)); } @RepeatSubmit @Log(title = "题库管理", businessType = BusinessType.UPDATE) @ApiOperation(value = "删除题库") @DeleteMapping(value = { "/{bankId}" }) public CommonResult delete(@PathVariable(value = "bankId", required = true) Long bankId){ return CommonResult.success(questionBankService.deleteQuestionBankById(bankId)); } @ApiOperation(value = "校验题库名称是否唯一") @PostMapping("/checkNameUnique") public CommonResult checkNameUnique(@RequestBody ExQuestionBank questionBank) { return CommonResult.success(questionBankService.checkNameUnique(questionBank)); } }