yangfeng преди 2 години
родител
ревизия
a5837259ca
променени са 1 файла, в които са добавени 11 реда и са изтрити 11 реда
  1. 11 11
      web/src/main/java/com/yntravelsky/buss/exam/exam/service/impl/ExamServiceImpl.java

+ 11 - 11
web/src/main/java/com/yntravelsky/buss/exam/exam/service/impl/ExamServiceImpl.java

@@ -375,19 +375,19 @@ public class ExamServiceImpl extends ServiceImpl<ExamMapper, Exam> implements IE
         List<ExamAnswerDTO> examAnswers = dto.getExamAnswers();
         if (CollectionUtils.isEmpty(examAnswers)) {
             updateUserExamAndResult(0, userExam);
-            return;
-        }
-
-        Map<Integer, UserExamQuestion> userExamQuestionMap = userExamQuestionList.stream().collect(Collectors
-                .toMap(UserExamQuestion::getQuestionIndex, a -> a, (k1, k2) -> k1));
+        } else {
+            //有作答
+            Map<Integer, UserExamQuestion> userExamQuestionMap = userExamQuestionList.stream().collect(Collectors
+                    .toMap(UserExamQuestion::getQuestionIndex, a -> a, (k1, k2) -> k1));
 
-        //获取题目和答案
-        Map<String, Question> questionMap = getQuestionMap(userExamQuestionList, true, false);
+            //获取题目和答案
+            Map<String, Question> questionMap = getQuestionMap(userExamQuestionList, true, false);
 
-        //计算最终得分
-        int score = calcFinalScore(examAnswers, userExamQuestionMap, questionMap, userExamQuestionList);
-        //更新用户考试信息和成绩
-        updateUserExamAndResult(score, userExam);
+            //计算最终得分
+            int score = calcFinalScore(examAnswers, userExamQuestionMap, questionMap, userExamQuestionList);
+            //更新用户考试信息和成绩
+            updateUserExamAndResult(score, userExam);
+        }
 
         //异步删除自动交卷任务
         ThreadPoolUtil.getExecutor().execute(() -> this.deleteAutoCommitJob(dto.getUserExamId()));