|
@@ -8,6 +8,8 @@ import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordQuestionsService;
|
|
|
import cn.com.qmth.examcloud.core.oe.admin.service.ExamStudentFinalScoreService;
|
|
|
import cn.com.qmth.examcloud.core.oe.admin.service.FixExamScoreService;
|
|
|
import cn.com.qmth.examcloud.core.oe.admin.service.bean.examscore.ReFixScoreReq;
|
|
|
+import cn.com.qmth.examcloud.marking.api.StudentPaperCloudService;
|
|
|
+import cn.com.qmth.examcloud.marking.api.request.UpdateObjectiveScoreReq;
|
|
|
import cn.com.qmth.examcloud.question.commons.core.paper.DefaultPaper;
|
|
|
import cn.com.qmth.examcloud.question.commons.core.paper.DefaultQuestionGroup;
|
|
|
import cn.com.qmth.examcloud.question.commons.core.paper.DefaultQuestionStructureWrapper;
|
|
@@ -54,6 +56,9 @@ public class FixExamScoreServiceImpl implements FixExamScoreService {
|
|
|
@Autowired
|
|
|
private ExamStudentFinalScoreService examStudentFinalScoreService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private StudentPaperCloudService studentPaperCloudService;
|
|
|
+
|
|
|
/**
|
|
|
* 按考生ID重算成绩分数(用于实施小工具,适用场景:考后修改试题正确答案、试题分值)
|
|
|
*/
|
|
@@ -224,6 +229,15 @@ public class FixExamScoreServiceImpl implements FixExamScoreService {
|
|
|
log.warn("【重算成绩】ExamRecordForMarkingEntity-已更新!examRecordDataId:{} objectiveScore:{}",
|
|
|
examRecordDataId, objectiveScore);
|
|
|
}
|
|
|
+
|
|
|
+ try {
|
|
|
+ UpdateObjectiveScoreReq fixReq = new UpdateObjectiveScoreReq();
|
|
|
+ fixReq.setExamRecordDataId(examRecordDataId);
|
|
|
+ fixReq.setScore(objectiveScore);
|
|
|
+ studentPaperCloudService.updateObjectiveScore(fixReq);
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("【重算成绩】更新阅卷模块的客观分失败!examRecordDataId:{} err:{}", examRecordDataId, e.getMessage());
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private void changeQuestionScore(ReFixScoreReq req, ExamRecordDataEntity examRecordData,
|
|
@@ -366,6 +380,7 @@ public class FixExamScoreServiceImpl implements FixExamScoreService {
|
|
|
}
|
|
|
|
|
|
if (curQuestionUnits.size() != rightAnswers.size()) {
|
|
|
+ // 注:千人千卷调卷模式出现过抽到重复题BUG,此处需特殊处理 to do...
|
|
|
log.warn("【修改试题正确答案】跳过,正确答案集合与小题数量不匹配!questionId:{}", curExamQuestionId);
|
|
|
continue;
|
|
|
}
|