From 1cd80b0193db031638fcda535573e2d8bc40e499 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 02 Mar 2022 17:46:24 +0800
Subject: [PATCH] 考勤打卡查询修改,导出修改
---
src/main/java/org/springblade/modules/simulateexam/service/impl/SimulateExamRecordServiceImpl.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 55 insertions(+), 3 deletions(-)
diff --git a/src/main/java/org/springblade/modules/simulateexam/service/impl/SimulateExamRecordServiceImpl.java b/src/main/java/org/springblade/modules/simulateexam/service/impl/SimulateExamRecordServiceImpl.java
index 11f58e8..5d4848b 100644
--- a/src/main/java/org/springblade/modules/simulateexam/service/impl/SimulateExamRecordServiceImpl.java
+++ b/src/main/java/org/springblade/modules/simulateexam/service/impl/SimulateExamRecordServiceImpl.java
@@ -6,11 +6,14 @@
import org.redisson.misc.Hash;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition;
+import org.springblade.modules.apply.entity.Apply;
import org.springblade.modules.exam.entity.ExamAnswerRecord;
+import org.springblade.modules.exam.entity.ExamPaper;
import org.springblade.modules.exam.entity.ExamScore;
import org.springblade.modules.exam.entity.ExamSubjectChoices;
import org.springblade.modules.exam.service.ExamPaperService;
import org.springblade.modules.exam.service.ExamSubjectChoicesService;
+import org.springblade.modules.exam.vo.ExamResultVO;
import org.springblade.modules.exam.vo.ExamSubjectChoicesVO;
import org.springblade.modules.simulateexam.entity.SimulateExamAnswerRecord;
import org.springblade.modules.simulateexam.entity.SimulateExamRecord;
@@ -18,8 +21,10 @@
import org.springblade.modules.simulateexam.service.SimulateExamAnswerRecordService;
import org.springblade.modules.simulateexam.service.SimulateExamRecordService;
import org.springblade.modules.simulateexam.vo.SimulateExamRecordVO;
+import org.springblade.modules.simulateexam.vo.SimulateExamScoreVO;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.service.IUserService;
+import org.springblade.modules.system.vo.UserVO;
import org.springblade.modules.training.entity.TrainingRegistration;
import org.springblade.modules.vip.entity.VipTopic;
import org.springblade.modules.vip.service.VipTopicService;
@@ -27,6 +32,7 @@
import org.springframework.stereotype.Service;
import java.lang.reflect.Array;
+import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@@ -99,13 +105,13 @@
List<ExamSubjectChoicesVO> radioRandomSubjectList = examPaperService.queryRandomSubjectList(radio,25);
List<ExamSubjectChoicesVO> checkboxRandomSubjectList = examPaperService.queryRandomSubjectList(checkbox,10);
List<ExamSubjectChoicesVO> judgeRandomSubjectList = examPaperService.queryRandomSubjectList(judge,20);
- List<ExamSubjectChoicesVO> sortRandomSubjectList = examPaperService.queryRandomSubjectList(sort,5);
+// List<ExamSubjectChoicesVO> sortRandomSubjectList = examPaperService.queryRandomSubjectList(sort,5);
//合并集合数据
choicesVOList.addAll(radioRandomSubjectList);
choicesVOList.addAll(checkboxRandomSubjectList);
choicesVOList.addAll(judgeRandomSubjectList);
- choicesVOList.addAll(sortRandomSubjectList);
+// choicesVOList.addAll(sortRandomSubjectList);
//取出考试id
List<Long> longList = choicesVOList.stream().map(ExamSubjectChoicesVO::getId).collect(Collectors.toList());
@@ -124,9 +130,14 @@
simulateExamRecord.setStatus(1);
//新增模拟考试记录信息
boolean status = this.save(simulateExamRecord);
+
+ ExamSubjectChoices examSubjectChoices = new ExamSubjectChoices();
+ examSubjectChoices.setId(choicesVOList.get(0).getId());
+ ExamSubjectChoicesVO examSubjectChoicesVO = examSubjectChoicesService.selectExamSubjectChoicesInfo(examSubjectChoices);
if (status){
map.put("simulateExamRecord",simulateExamRecord);
map.put("examSubjectInfo",choicesVOList);
+ map.put("examSubjectChoicesVO",examSubjectChoicesVO);
//返回信息
return map;
}
@@ -165,7 +176,7 @@
/**
* 考试暂停后继续,1查询所有的答题信息,2查询所有的已答信息 3其他信息
- * @param simulateExamRecord 必须包含 模拟考试id,id_card_no, type 1: 继续考试 2: 放弃之前的考试,重新生成题目考试
+ * @param simulateExamRecord 必须包含 模拟考试id,, type 1: 继续考试 2: 放弃之前的考试,重新生成题目考试
* @return
*/
@Override
@@ -235,4 +246,45 @@
}
return null;
}
+
+ /**
+ * 提交考试
+ * @param simulateExamScore 模拟考试成绩信息对象
+ * @return
+ */
+ @Override
+ public Object saveSimulateExam(SimulateExamScoreVO simulateExamScore) {
+ //取出考试结果
+ if (simulateExamScore.getExamResultVOS().size() > 0) {
+ List<ExamResultVO> examResultVOS = simulateExamScore.getExamResultVOS();
+ //查询模拟考试信息
+ SimulateExamRecord simulateExamRecord = this.getById(simulateExamScore.getSimulateExamId());
+ int count = 0;
+ //计算考试得分,并存入考试答题记录
+ for (ExamResultVO examResultVO : examResultVOS) {
+ SimulateExamAnswerRecord answerRecord = new SimulateExamAnswerRecord();
+ answerRecord.setSimulateExamId(simulateExamScore.getSimulateExamId());
+ answerRecord.setSubjectChoicesId(examResultVO.getSubjectChoicesId());
+ answerRecord.setAnswerOption(examResultVO.getValue());
+ answerRecord.setAnswerScore(examResultVO.getGrade());
+ if (examResultVO.getGrade() > 0) {
+ answerRecord.setAnswerResult(1);
+ } else {
+ answerRecord.setAnswerResult(2);
+ }
+ count = count + examResultVO.getGrade();
+ answerRecord.setAnswerTime(new Date());
+ //新增
+ simulateExamAnswerRecordService.save(answerRecord);
+ }
+ //设置总分
+ simulateExamRecord.setScore(count);
+ //更新模拟考试信息
+ this.updateById(simulateExamRecord);
+ //返回
+ return true;
+ }
+ //返回结果
+ return false;
+ }
}
--
Gitblit v1.9.3