Преглед на файлове

修复科目新增选做题分组时主观题分数计算错误问题

yin преди 1 година
родител
ревизия
2e13a5ee44
променени са 1 файла, в които са добавени 7 реда и са изтрити 3 реда
  1. 7 3
      stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/service/impl/SelectiveGroupServiceImpl.java

+ 7 - 3
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/service/impl/SelectiveGroupServiceImpl.java

@@ -142,11 +142,15 @@ public class SelectiveGroupServiceImpl extends BaseQueryService<SelectiveGroup>
 
     @Override
     public double sumScoreByExamIdAndSubjectCode(int examId, String subjectCode) {
-        List<ExamQuestion> questionList = questionService.findMainByExamAndSubjectAndObjective(examId, subjectCode,
-                false);
+        List<ExamQuestion> questionList = questionService.findByExamAndSubjectAndObjective(examId, subjectCode, false);
         Map<Integer, Double> mainScoreMap = new HashMap<Integer, Double>();
         for (ExamQuestion question : questionList) {
-            mainScoreMap.put(question.getMainNumber(), question.getTotalScore());
+            Double mainScore = mainScoreMap.get(question.getMainNumber());
+            if (mainScore == null) {
+                mainScoreMap.put(question.getMainNumber(), question.getTotalScore());
+            } else {
+                mainScoreMap.put(question.getMainNumber(), BigDecimalUtils.add(mainScore, question.getTotalScore()));
+            }
         }
 
         Map<Integer, List<SelectiveGroup>> indexMap = this.findGroupByExamIdAndSubjectCode(examId, subjectCode);