|
@@ -208,6 +208,16 @@ public class ExamControlServiceImpl implements ExamControlService {
|
|
|
return defaultPaper;
|
|
|
}
|
|
|
|
|
|
+ private double parsePaperScore(DefaultPaper defaultPaper) {
|
|
|
+ double paperScore = 0d;
|
|
|
+ if (CollectionUtils.isNotEmpty(defaultPaper.getQuestionGroupList())) {
|
|
|
+ for (DefaultQuestionGroup group : defaultPaper.getQuestionGroupList()) {
|
|
|
+ paperScore += group.getGroupScore();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return paperScore;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 开始考试
|
|
|
*
|
|
@@ -250,12 +260,13 @@ public class ExamControlServiceImpl implements ExamControlService {
|
|
|
// 是否采用千人千卷规则
|
|
|
boolean randomPaper = CallType.RANDOM_PAPER.name().equals(examBean.getCallType());
|
|
|
DefaultPaper defaultPaper = this.buildPaper(extractConfig, examingSession.getPaperType(), randomPaper);
|
|
|
+ double paperScore = this.parsePaperScore(defaultPaper);
|
|
|
|
|
|
// 生成考试记录
|
|
|
ExamStudentCacheBean examStudent = CacheHelper.getExamStudent(examStudentId);
|
|
|
ExamRecordData examRecordData = examRecordDataService.createExamRecordData(examingSession,
|
|
|
examBean, courseBean, defaultPaper.getId(), defaultPaper.getFullyObjective(),
|
|
|
- examStudent.getExamStageId(), examStudent.getExamStageOrder(), randomPaper);
|
|
|
+ examStudent.getExamStageId(), examStudent.getExamStageOrder(), randomPaper, paperScore);
|
|
|
|
|
|
// 如果开启人脸比对,将同步人脸比对结果存储到抓后结果表中
|
|
|
Long rootOrgId = examRecordData.getRootOrgId();
|