瀏覽代碼

修复未评完进入可复核状态

ting.yin 4 年之前
父節點
當前提交
31942b34bb

+ 9 - 6
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/dao/MarkGroupStudentDao.java

@@ -1,16 +1,19 @@
 package cn.com.qmth.stmms.biz.exam.dao;
 package cn.com.qmth.stmms.biz.exam.dao;
 
 
-import cn.com.qmth.stmms.biz.exam.model.MarkGroupStudent;
-import cn.com.qmth.stmms.biz.exam.model.MarkGroupStudentPK;
-import cn.com.qmth.stmms.common.enums.LibraryStatus;
-import cn.com.qmth.stmms.common.enums.SubjectiveStatus;
+import java.util.List;
+
+import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.repository.PagingAndSortingRepository;
 import org.springframework.data.repository.PagingAndSortingRepository;
 
 
-import java.util.List;
+import cn.com.qmth.stmms.biz.exam.model.MarkGroupStudent;
+import cn.com.qmth.stmms.biz.exam.model.MarkGroupStudentPK;
+import cn.com.qmth.stmms.common.enums.LibraryStatus;
+import cn.com.qmth.stmms.common.enums.SubjectiveStatus;
 
 
-public interface MarkGroupStudentDao extends PagingAndSortingRepository<MarkGroupStudent, MarkGroupStudentPK> {
+public interface MarkGroupStudentDao extends JpaRepository<MarkGroupStudent, MarkGroupStudentPK>,
+        PagingAndSortingRepository<MarkGroupStudent, MarkGroupStudentPK> {
 
 
     @Query("select s from MarkGroupStudent s where s.pk.studentId=?1 and s.pk.groupNumber=?2")
     @Query("select s from MarkGroupStudent s where s.pk.studentId=?1 and s.pk.groupNumber=?2")
     MarkGroupStudent findByStudentIdAndGroupNumber(Integer studentId, Integer groupNumber);
     MarkGroupStudent findByStudentIdAndGroupNumber(Integer studentId, Integer groupNumber);

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

@@ -616,9 +616,8 @@ public class MarkServiceImpl implements MarkService {
                             buildThirdLibrary(library, group);
                             buildThirdLibrary(library, group);
                         } else {
                         } else {
                             // 两两比较,触发仲裁
                             // 两两比较,触发仲裁
-                            List<MarkLibrary> libraries = libraryDao.findByStudentIdAndGroupNumber(
-                                    library.getStudentId(), library.getGroupNumber());
-                            history = buildArbitrateHistory(libraries, group.getArbitrateThreshold(), now);
+                            history = buildArbitrateHistory(list, group.getArbitrateThreshold(), now);
+                            break;
                         }
                         }
                     } else {
                     } else {
                         // 未开启三评,触发仲裁
                         // 未开启三评,触发仲裁
@@ -634,6 +633,9 @@ public class MarkServiceImpl implements MarkService {
             // 触发仲裁后续状态更新
             // 触发仲裁后续状态更新
             libraryDao.updateByStudentIdAndGroupNumber(library.getStudentId(), library.getGroupNumber(),
             libraryDao.updateByStudentIdAndGroupNumber(library.getStudentId(), library.getGroupNumber(),
                     LibraryStatus.WAIT_ARBITRATE);
                     LibraryStatus.WAIT_ARBITRATE);
+            // 未评完
+            resetStudentGroup(library.getStudentId(), library.getExamId(), library.getSubjectCode(),
+                    library.getGroupNumber());
         } else {
         } else {
             // 判断当前分组是否已完成评卷
             // 判断当前分组是否已完成评卷
             checkStudentGroup(library.getStudentId(), group);
             checkStudentGroup(library.getStudentId(), group);
@@ -1279,7 +1281,7 @@ public class MarkServiceImpl implements MarkService {
         gs.setSubjectCode(subjectCode);
         gs.setSubjectCode(subjectCode);
         gs.setGroupNumber(groupNumber);
         gs.setGroupNumber(groupNumber);
         gs.setStatus(status);
         gs.setStatus(status);
-        groupStudentDao.save(gs);
+        groupStudentDao.saveAndFlush(gs);
     }
     }
 
 
     private void updateStudentGroupScore(Integer studentId, Integer examId, String subjectCode, Integer groupNumber,
     private void updateStudentGroupScore(Integer studentId, Integer examId, String subjectCode, Integer groupNumber,