package com.jwl.driver.server.controller; import cn.hutool.core.collection.CollectionUtil; import com.jwl.driver.server.dto.QuestionQueryDto; import com.jwl.driver.server.exception.BusinessException; import com.jwl.driver.server.response.BaseResponse; import com.jwl.driver.server.service.ITdQuestionService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.stereotype.Controller; import java.util.Collections; import java.util.Objects; /** *

* 题库; 前端控制器 *

* * @author Automated procedures * @since 2023-08-10 */ @Api(tags = "考试题库") @RestController @RequestMapping("/tdQuestion") @Slf4j public class TdQuestionController { @Autowired private ITdQuestionService tdQuestionService; @ApiOperation("根据id获取题目") @PostMapping("/queryQuestionById") public BaseResponse queryQuestionById(@RequestBody QuestionQueryDto queryDto) { log.info("获取题型======>queryDto:{}", queryDto); return BaseResponse.success(tdQuestionService.queryQuestionById(queryDto)); } @ApiOperation("根据id列表获取题目") @PostMapping("/queryQuestionByIdList") public BaseResponse queryQuestionByIdList(@RequestBody QuestionQueryDto queryDto) { log.info("获取题型======>queryDto:{}", queryDto); return BaseResponse.success(tdQuestionService.queryQuestionByIdList(queryDto)); } @ApiOperation("根据查询条件获取题目") @PostMapping("/queryQuestion") public BaseResponse queryQuestion(@RequestBody QuestionQueryDto queryDto) { log.info("获取题型======>queryDto:{}", queryDto); return BaseResponse.success(tdQuestionService.queryQuestion(queryDto)); } @ApiOperation("获取模拟考试题目") @PostMapping("/getTestQuestion") public BaseResponse getTestQuestion(@RequestBody QuestionQueryDto queryDto) { log.info("获取模拟考试题目======>queryDto:{}", queryDto); if (Objects.isNull(queryDto.getCarTypeId()) && Objects.isNull(queryDto.getSubject())){ throw new BusinessException("缺少必要参数"); } return BaseResponse.success(tdQuestionService.getTestQuestion(queryDto)); } @ApiOperation("题目分类") @PostMapping("/questionCategory") public BaseResponse questionCategory(@RequestBody QuestionQueryDto queryDto) { log.info("分类题目标识======>questionIdList:{}", queryDto.getQuestionIdList()); if (CollectionUtil.isEmpty(queryDto.getQuestionIdList())){ return BaseResponse.success(Collections.emptyList()); } return BaseResponse.success(tdQuestionService.questionCategory(queryDto)); } }