1
0
ting.yin 5 лет назад
Родитель
Сommit
d81864ea07

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

@@ -518,7 +518,9 @@ public class MarkServiceImpl implements MarkService {
                             buildThirdLibrary(library, group);
                         } else {
                             // 两两比较,触发仲裁
-                            history = getArbitrate(list, group.getArbitrateThreshold(), now);
+                            List<MarkLibrary> libraries = libraryDao.findByStudentIdAndGroupNumber(
+                                    library.getStudentId(), library.getGroupNumber());
+                            history = getArbitrate(libraries, group.getArbitrateThreshold(), now);
                         }
                     } else {
                         // 未开启三评,触发仲裁
@@ -539,6 +541,12 @@ public class MarkServiceImpl implements MarkService {
     }
 
     private ArbitrateHistory getArbitrate(List<MarkLibrary> list, Double arbitrateThreshold, Date now) {
+        for (MarkLibrary library : list) {
+            if (library.getStatus() != LibraryStatus.MARKED && library.getStatus() != LibraryStatus.INSPECTED
+                    && library.getStatus() != LibraryStatus.ARBITRATED) {
+                return null;
+            }
+        }
         int count = 0;
         for (int i = 0; i < list.size(); i++) {
             int next = i + 1;

+ 4 - 2
stmms-web/src/main/java/cn/com/qmth/stmms/admin/exam/LibraryController.java

@@ -96,8 +96,10 @@ public class LibraryController extends BaseExamController {
                         group.getSubjectCode(), false, group.getNumber()));
             }
         }
-        MarkLibrarySearchQuery query2 = query;
-        query2.clearStatus();
+        MarkLibrarySearchQuery query2 = new MarkLibrarySearchQuery();
+        query2.setExamId(examId);
+        query2.setSubjectCode(query.getSubjectCode());
+        query2.setGroupNumber(query.getGroupNumber());
         query2.addStatus(LibraryStatus.MARKED);
         long inspectedCount = libraryService.countByQuery(query2);
         model.addAttribute("query", query);