From 62eb499b0c969f246d3245d1429a97da4de1ce28 Mon Sep 17 00:00:00 2001
From: 钟日健 <arsn163@163.com>
Date: Mon, 01 Jun 2026 20:46:13 +0800
Subject: [PATCH] feat: 成绩查询增加年龄查询返回
---
src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java | 39 ++++++++++++++++++++++++++++++---------
1 files changed, 30 insertions(+), 9 deletions(-)
diff --git a/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java b/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java
index ff7094a..cda1fa8 100644
--- a/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java
+++ b/src/main/java/org/springblade/modules/exam/service/impl/ExamPaperServiceImpl.java
@@ -297,23 +297,44 @@
Map<String, Object> map = new HashMap<>(4);
//1.查询当前人员当前考试的考试题目信息
List<ExamSubjectChoicesVO> examSubjectChoicesVOSList = baseMapper.getExaminationSubjectList(examPaperVO);
-
+ if (examSubjectChoicesVOSList.size()==0) {
+ examSubjectChoicesVOSList = baseMapper.queryRandomSubject(null);
+ List<ExamExaminationSubject> list = new ArrayList<>();
+ examSubjectChoicesVOSList.forEach(examSubjectChoicesVO -> {
+ //新增个人对应每场考试成绩试卷
+ ExamExaminationSubject ksxtSginup = new ExamExaminationSubject();
+ ksxtSginup.setExaminationId(examPaperVO.getScoreId());
+ ksxtSginup.setCategoryId(examSubjectChoicesVO.getChoicesType());
+ ksxtSginup.setSubjectId(examSubjectChoicesVO.getId());
+ //新增
+ list.add(ksxtSginup);
+ //将题目答案设置为空字符串,不让前端看到
+ examSubjectChoicesVO.setAnswer("");
+ });
+ //批量新增
+ baseMapper.insertBatch(list);
+ }
//2.查询当前人员已答的题目信息
ExamAnswerRecord examAnswerRecord = new ExamAnswerRecord();
examAnswerRecord.setScoreId(examPaperVO.getScoreId());
List<ExamAnswerRecord> examAnswerRecordList = examAnswerRecordService.list(Condition.getQueryWrapper(examAnswerRecord));
//3.查询正在答题的信息
- int count = examAnswerRecordList.size();
+ int count = examAnswerRecordList.size();
//查询下一题题目信息
ExamSubjectChoicesVO examSubjectChoicesVO = new ExamSubjectChoicesVO();
ExamSubjectChoices examSubjectChoices = new ExamSubjectChoices();
- if (count>0) {
+ if (count == 0) {
+ examSubjectChoices.setId(examSubjectChoicesVOSList.get(0).getId());
+ examSubjectChoicesVO = examSubjectChoicesService.selectExamSubjectChoicesInfo(examSubjectChoices);
+ }
+ if (count > 0 && count<100) {
examSubjectChoices.setId(examSubjectChoicesVOSList.get(count).getId());
examSubjectChoicesVO = examSubjectChoicesService.selectExamSubjectChoicesInfo(examSubjectChoices);
}
- if (count==0) {
- examSubjectChoices.setId(examSubjectChoicesVOSList.get(0).getId());
+ if (count == 100) {
+ // 查最后一道题信息
+ examSubjectChoices.setId(examSubjectChoicesVOSList.get(99).getId());
examSubjectChoicesVO = examSubjectChoicesService.selectExamSubjectChoicesInfo(examSubjectChoices);
}
@@ -321,10 +342,10 @@
ExamScore examScore = examScoreService.getById(examPaperVO.getScoreId());
//5.数据封装
- map.put("examSubjectChoicesVOSList",examSubjectChoicesVOSList);
- map.put("examAnswerRecordList",examAnswerRecordList);
- map.put("examSubjectChoicesVO",examSubjectChoicesVO);
- map.put("examScore",examScore);
+ map.put("examSubjectChoicesVOSList", examSubjectChoicesVOSList);
+ map.put("examAnswerRecordList", examAnswerRecordList);
+ map.put("examSubjectChoicesVO", examSubjectChoicesVO);
+ map.put("examScore", examScore);
//6.返回数据
return map;
--
Gitblit v1.9.3