新增根据课程ID获取题目数量接口

master
xiaoCJ 6 months ago
parent c4baf4dc40
commit fca419f2c1

@ -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<PageQuestionDTO> 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<QuestionContDTO> getCount(@RequestBody(required = false) List<Long> ids) {
return questionBiz.getCount(ids);
public Result<QuestionContDTO> getCount() {
return questionBiz.getCount();
}
@PostMapping(value = "getCountByIds")
public Result<QuestionContDTO> 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 随机抽取逻辑

@ -161,24 +161,11 @@ public class PCQuestionBiz {
return Result.success(dto);
}
public Result<QuestionContDTO> getCount(List<Long> 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<QuestionContDTO> 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);

@ -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<Long> questionIds;
}
Loading…
Cancel
Save