ting.yin 3 anni fa
parent
commit
68158ccdfb

+ 1 - 1
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/service/ExamStudentService.java

@@ -145,7 +145,7 @@ public interface ExamStudentService {
 
     public List<ExamStudent> findByExamIdAndStudentCodeAndSubjectCode(int examId, String studentCode, String subjectCode);
 
-    long countByExamIdAndSubjectCodeAndStatus(int examId, String subjectCode, SubjectiveStatus status);
+    long countByExamIdAndSubjectCodeAndStatus(int examId, String subjectCode, SubjectiveStatus... status);
 
     public ExamStudent randomStudent(Integer examId, String code);
 }

+ 4 - 2
stmms-biz/src/main/java/cn/com/qmth/stmms/biz/exam/service/impl/ExamStudentServiceImpl.java

@@ -1035,11 +1035,13 @@ public class ExamStudentServiceImpl extends BaseQueryService<ExamStudent> implem
     }
 
     @Override
-    public long countByExamIdAndSubjectCodeAndStatus(int examId, String subjectCode, SubjectiveStatus status) {
+    public long countByExamIdAndSubjectCodeAndStatus(int examId, String subjectCode, SubjectiveStatus... status) {
         ExamStudentSearchQuery query = new ExamStudentSearchQuery();
         query.setExamId(examId);
         query.setSubjectCode(subjectCode);
-        query.addStatus(status);
+        for (SubjectiveStatus subjectiveStatus : status) {
+            query.addStatus(subjectiveStatus);
+        }
         return countByQuery(query);
     }
 

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

@@ -169,7 +169,7 @@ public class MarkCronService {
             List<MarkGroup> groups = groupService.findByExamAndSubjectAndStatus(subject.getExamId(), subject.getCode(),
                     MarkStatus.TRIAL);
             long trialCount = studentService.countByExamIdAndSubjectCodeAndStatus(examId, subject.getCode(),
-                    SubjectiveStatus.TRIAL);
+                    SubjectiveStatus.TRIAL, SubjectiveStatus.MARKED, SubjectiveStatus.INSPECTED);
             if (!groups.isEmpty() && trialCount < subject.getTrialCount()) {
                 while (trialCount < subject.getTrialCount()) {
                     // 取一个的考生

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

@@ -1566,7 +1566,7 @@ public class MarkServiceImpl implements MarkService {
     public boolean deleteByQuestion(ExamQuestion question) {
         SelectiveGroup selectiveGroup = selectiveGroupService.findOne(question.getExamId(), question.getSubjectCode(),
                 question.getMainNumber());
-        if (question.isSelective() && selectiveGroup != null) {
+        if (selectiveGroup != null) {
             return false;
         }
         if (!question.isObjective() && question.getGroupNumber() != null) {