diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java index 3d0b8ad..e97ba7c 100644 --- a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java +++ b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/PCQuestionController.java @@ -2,24 +2,25 @@ package com.tz.platform.pc; import com.tz.platform.common.core.base.BaseController; import com.tz.platform.common.core.base.Result; +import com.tz.platform.common.core.enmus.QuestionTypeEnum; import com.tz.platform.exam.pc.dto.QuestionContDTO; import com.tz.platform.pc.biz.PCQuestionBiz; import com.tz.platform.pc.dto.ListQuestionDTO; import com.tz.platform.pc.dto.PageQuestionDTO; import com.tz.platform.pc.dto.QuestionDTO; import com.tz.platform.pc.vo.*; +import com.tz.platform.repository.QuestionDao; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.List; - @RestController @RequestMapping(value = "/pc/question") public class PCQuestionController extends BaseController { @Autowired private PCQuestionBiz questionBiz; - + @Autowired + private QuestionDao questionDao; @PostMapping(value = "list") public Result list(@RequestBody PageQuestionVO questionVO) { return questionBiz.list(questionVO); @@ -55,10 +56,23 @@ public class PCQuestionController extends BaseController { return questionBiz.listByIds(vo); } - @GetMapping(value = "getCount") - public Result getCount(@RequestBody(required = false) List ids) { - return questionBiz.getCount(ids); + public Result getCount() { + return questionBiz.getCount(); + } + + @PostMapping(value = "getCountByIds") + public Result getCountByIds(@RequestBody ListIdsVO ids) { + QuestionContDTO dto = new QuestionContDTO(); + int singleCount = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.SINGLE.getCode(), 0, ids.getQuestionIds()); + int multiCount = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.MULTY.getCode(), 0, ids.getQuestionIds()); + int judgeCount = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.JUDGE.getCode(), 0, ids.getQuestionIds()); + int gapFilling = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.GAPFILLING.getCode(), 0, ids.getQuestionIds()); + dto.setJudgeCount(judgeCount); + dto.setMultiCount(multiCount); + dto.setSingleCount(singleCount); + dto.setGapFilling(gapFilling); + return Result.success(dto); } //todo 随机抽取逻辑 diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java index 022eeff..7c1d902 100644 --- a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java +++ b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/biz/PCQuestionBiz.java @@ -161,24 +161,11 @@ public class PCQuestionBiz { return Result.success(dto); } - public Result getCount(List ids) { - int singleCount; - int multiCount; - int judgeCount; - int gapFilling; - - if (ids != null && !ids.isEmpty()) { - singleCount = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.SINGLE.getCode(), 0, ids); - multiCount = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.MULTY.getCode(), 0, ids); - judgeCount = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.JUDGE.getCode(), 0, ids); - gapFilling = questionDao.countByQuestionTypeAndTypeAndCourseIdIn(QuestionTypeEnum.GAPFILLING.getCode(), 0, ids); - } else { - singleCount = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.SINGLE.getCode(), 0); - multiCount = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.MULTY.getCode(), 0); - judgeCount = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.JUDGE.getCode(), 0); - gapFilling = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.GAPFILLING.getCode(), 0); - } - + public Result getCount() { + int singleCount = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.SINGLE.getCode(), 0); + int multiCount = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.MULTY.getCode(), 0); + int judgeCount = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.JUDGE.getCode(), 0); + int gapFilling = questionDao.countByQuestionTypeAndType(QuestionTypeEnum.GAPFILLING.getCode(), 0); QuestionContDTO dto = new QuestionContDTO(); dto.setJudgeCount(judgeCount); dto.setMultiCount(multiCount); diff --git a/tz/exam/exam-service/src/main/java/com/tz/platform/pc/vo/ListIdsVO.java b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/vo/ListIdsVO.java new file mode 100644 index 0000000..5908667 --- /dev/null +++ b/tz/exam/exam-service/src/main/java/com/tz/platform/pc/vo/ListIdsVO.java @@ -0,0 +1,14 @@ +package com.tz.platform.pc.vo; + +import lombok.Data; + +import java.util.List; + +/** + * @Author xcj + * @Date 2024/9/11 + */ +@Data +public class ListIdsVO { + List questionIds; +}