Explorar o código

修改MarkService不必要的强制flush,避免回滚失败

luoshi %!s(int64=6) %!d(string=hai) anos
pai
achega
fbed54ac52

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

@@ -188,7 +188,7 @@ public class MarkServiceImpl implements MarkService {
                 question.setObjective(false);
                 question.setTotalScore(score);
                 question.setIntervalScore(1d);
-                questionDao.saveAndFlush(question);
+                questionDao.save(question);
             }
             groupDao.updateTotalScore(group.getExamId(), group.getSubjectCode(), group.getNumber(), totalScore);
             groupDao.updateScorePolicy(group.getExamId(), group.getSubjectCode(), group.getNumber(), policy);
@@ -376,12 +376,13 @@ public class MarkServiceImpl implements MarkService {
                         history.setExamNumber(library.getExamNumber());
                         history.setStatus(HistoryStatus.WAITING);
                         history.setCreateTime(now);
-                        arbitrateDao.saveAndFlush(history);
                         break;
                     }
                 }
             }
             if (history != null) {
+                // 保存仲裁记录
+                arbitrateDao.save(history);
                 // 触发仲裁后续状态更新
                 libraryDao.updateByStudentIdAndGroupNumber(library.getStudentId(), library.getGroupNumber(),
                         LibraryStatus.WAIT_ARBITRATE);
@@ -440,7 +441,7 @@ public class MarkServiceImpl implements MarkService {
     @Transactional
     public void processArbitrate(ArbitrateHistory history) {
         lockService.waitUnlockGroup(history.getExamId(), history.getSubjectCode(), history.getGroupNumber());
-        arbitrateDao.saveAndFlush(history);
+        arbitrateDao.save(history);
         libraryDao.updateHeaderResult(history.getStudentId(), history.getGroupNumber(), history.getUserId(),
                 history.getTotalScore(), history.getScoreList(), history.getUpdateTime(), LibraryStatus.ARBITRATED);
         updateLibraryCount(history.getExamId(), history.getSubjectCode(), history.getGroupNumber());