Browse Source

代码优化

lideyin 5 years ago
parent
commit
38116d92ce

+ 7 - 1
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/impl/PracticeServiceImpl.java

@@ -9,6 +9,7 @@ import cn.com.qmth.examcloud.core.oe.admin.dao.ExamStudentRepo;
 import cn.com.qmth.examcloud.core.oe.admin.dao.entity.*;
 import cn.com.qmth.examcloud.core.oe.admin.dao.enums.ExamRecordStatus;
 import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordPaperStructService;
+import cn.com.qmth.examcloud.core.oe.admin.service.ExamRecordQuestionsService;
 import cn.com.qmth.examcloud.core.oe.admin.service.PracticeService;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.PaperStructInfo;
 import cn.com.qmth.examcloud.core.oe.admin.service.bean.PracticeCourseInfo;
@@ -52,6 +53,9 @@ public class PracticeServiceImpl implements PracticeService {
     @Autowired
     private ExamRecordPaperStructService examRecordPaperStructService;
 
+    @Autowired
+    private ExamRecordQuestionsService examRecordQuestionsService;
+
     @Override
     public List<PracticeCourseInfo> queryPracticeCourseList(Long examId, Long studentId) {
         if (examId == null || studentId == null) {
@@ -155,7 +159,9 @@ public class PracticeServiceImpl implements PracticeService {
 
         ExamScoreEntity examScoreEntity = examScoreRepo.findByExamRecordDataId(examRecordData.getId());
         practiceRecordInfo.setObjectiveAccuracy(examScoreEntity.getObjectiveAccuracy());//客观题答对的比率
-        ExamRecordQuestionsEntity examRecordQuestions = examRecordQuestionsRepo.findByExamRecordDataId(examRecordData.getId());
+        ExamRecordQuestionsEntity examRecordQuestions =
+                examRecordQuestionsService.getExamRecordQuestionsAndFixExamRecordDataIfNecessary(examRecordData.getId());
+
         List<ExamQuestionEntity> examQuestionEntities = examRecordQuestions.getExamQuestionEntities();
         practiceRecordInfo = calculationExamQuestionSituationInfo(practiceRecordInfo, examQuestionEntities);