Explorar el Código

练习交卷bug fix

lideyin hace 5 años
padre
commit
e146bcae85

+ 11 - 0
examcloud-core-oe-student-service/src/main/java/cn/com/qmth/examcloud/core/oe/student/service/impl/ExamControlServiceImpl.java

@@ -17,8 +17,10 @@ import cn.com.qmth.examcloud.core.oe.admin.api.request.GetPartialExamRecordDataR
 import cn.com.qmth.examcloud.core.oe.admin.api.request.SyncExamDataReq;
 import cn.com.qmth.examcloud.core.oe.admin.api.response.GetPartialExamRecordDataResp;
 import cn.com.qmth.examcloud.core.oe.student.api.bean.StuExamQuestionBean;
+import cn.com.qmth.examcloud.core.oe.student.api.request.CalcExamScoreReq;
 import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamRecordPaperStructReq;
 import cn.com.qmth.examcloud.core.oe.student.api.request.GetExamRecordQuestionsReq;
+import cn.com.qmth.examcloud.core.oe.student.api.response.CalcExamScoreResp;
 import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamRecordPaperStructResp;
 import cn.com.qmth.examcloud.core.oe.student.api.response.GetExamRecordQuestionsResp;
 import cn.com.qmth.examcloud.core.oe.student.base.utils.CommonUtil;
@@ -482,6 +484,15 @@ public class ExamControlServiceImpl implements ExamControlService {
                             ? ExamRecordStatus.EXAM_END
                             : ExamRecordStatus.EXAM_OVERDUE);
 
+            //自动计算客观分
+            CalcExamScoreReq cesReq = new CalcExamScoreReq();
+            cesReq.setExamRecordDataId(examRecordDataId);
+            CalcExamScoreResp calcExamScoreResp = examRecordDataService.calcExamScore(cesReq);
+            examRecordData.setObjectiveScore(calcExamScoreResp.getObjectiveScore());
+            examRecordData.setObjectiveAccuracy(calcExamScoreResp.getObjectiveAccuracy());
+            examRecordData.setSuccPercent(calcExamScoreResp.getSuccPercent());
+            examRecordData.setTotalScore(calcExamScoreResp.getTotalScore());
+
             //提前同步部分数据
             SyncExamDataReq syncExamDataReq = new SyncExamDataReq();
             syncExamDataReq.setExamRecordData(copyExamRecordDataFrom(examRecordData));