ting.yin 2 years ago
parent
commit
d653999906

+ 6 - 3
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/mark/service/Impl/MarkServiceImpl.java

@@ -937,6 +937,9 @@ public class MarkServiceImpl implements MarkService {
             for (SubjectiveScore subjectiveScore : mainScoreList) {
             for (SubjectiveScore subjectiveScore : mainScoreList) {
                 if (subjectiveScore.getScore() != UN_SELECTIVE_SCORE) {
                 if (subjectiveScore.getScore() != UN_SELECTIVE_SCORE) {
                     mainScore = mainScore.add(BigDecimal.valueOf(subjectiveScore.getScore()));
                     mainScore = mainScore.add(BigDecimal.valueOf(subjectiveScore.getScore()));
+                } else {
+                    mainScore = new BigDecimal(UN_SELECTIVE_SCORE);
+                    break;
                 }
                 }
             }
             }
             for (SubjectiveScore subjectiveScore : mainScoreList) {
             for (SubjectiveScore subjectiveScore : mainScoreList) {
@@ -980,7 +983,7 @@ public class MarkServiceImpl implements MarkService {
                 for (SelectiveGroup selectiveGroup : partList) {
                 for (SelectiveGroup selectiveGroup : partList) {
                     double mainScore = scoreMap.get(selectiveGroup.getMainNumber());
                     double mainScore = scoreMap.get(selectiveGroup.getMainNumber());
                     scoreMap.remove(selectiveGroup.getMainNumber());
                     scoreMap.remove(selectiveGroup.getMainNumber());
-                    if (mainScore == UN_SELECTIVE_SCORE) {
+                    if (mainScore == UN_SELECTIVE_SCORE || unselectivePart) {
                         unselectivePart = true;
                         unselectivePart = true;
                     } else {
                     } else {
                         selectiveList.add(mainScore);
                         selectiveList.add(mainScore);
@@ -992,8 +995,8 @@ public class MarkServiceImpl implements MarkService {
                         List<SubjectiveScore> mainScoreList = mainScoreMap.get(selectiveGroup.getMainNumber());
                         List<SubjectiveScore> mainScoreList = mainScoreMap.get(selectiveGroup.getMainNumber());
                         for (SubjectiveScore ss : mainScoreList) {
                         for (SubjectiveScore ss : mainScoreList) {
                             ss.setUncalculate(true);
                             ss.setUncalculate(true);
+                            scoreDao.saveAndFlush(ss);
                         }
                         }
-                        scoreDao.save(mainScoreList);
                     }
                     }
                 } else {
                 } else {
                     BigDecimal partScore = BigDecimal.ZERO;
                     BigDecimal partScore = BigDecimal.ZERO;
@@ -1027,8 +1030,8 @@ public class MarkServiceImpl implements MarkService {
                     List<SubjectiveScore> mainScoreList = mainScoreMap.get(group.getMainNumber());
                     List<SubjectiveScore> mainScoreList = mainScoreMap.get(group.getMainNumber());
                     for (SubjectiveScore ss : mainScoreList) {
                     for (SubjectiveScore ss : mainScoreList) {
                         ss.setUncalculate(true);
                         ss.setUncalculate(true);
+                        scoreDao.saveAndFlush(ss);
                     }
                     }
-                    scoreDao.save(mainScoreList);
                 }
                 }
             }
             }
         }
         }

+ 1 - 1
stmms-web/src/main/webapp/WEB-INF/views/modules/exam/selectiveList.jsp

@@ -158,7 +158,7 @@
 				<td>${group.selectiveIndex}</td>
 				<td>${group.selectiveIndex}</td>
 				<td>${group.selectivePart}选${group.selectiveCount}</td>
 				<td>${group.selectivePart}选${group.selectiveCount}</td>
 				<td>${group.title}</td>
 				<td>${group.title}</td>
-				<td><fmt:formatNumber pattern="###.###" value="${group.partScore}"/></td>
+				<td><fmt:formatNumber pattern="###.###" value="${group.partScore*group.selectiveCount}"/></td>
 				<td><a href="${ctx}/admin/exam/selectiveGroup/delete?subjectCode=${subject.code}&selectiveIndex=${group.selectiveIndex}">删除</a></td>
 				<td><a href="${ctx}/admin/exam/selectiveGroup/delete?subjectCode=${subject.code}&selectiveIndex=${group.selectiveIndex}">删除</a></td>
 			</tr>
 			</tr>
 		</c:forEach>
 		</c:forEach>