Parcourir la source

重审,临时支持跳过评卷任务已生成情况

deason il y a 1 an
Parent
commit
d63c1aab3a

+ 8 - 5
examcloud-core-oe-admin-api-provider/src/main/java/cn/com/qmth/examcloud/core/oe/admin/api/controller/ExamAuditController.java

@@ -224,13 +224,16 @@ public class ExamAuditController extends ControllerSupport {
         //原需求:已经生成了评卷任务,不能重新审为不通过,但是可以审核为已通过
         //20191220,需求临时调整:已经生成了评卷任务,均不可重审
         //20200923,需求调整,恢复至原需求:已经生成了评卷任务,不能重新审为不通过,但是可以审核为已通过
-        String markingTaskBuilt =
-                ExamCacheTransferHelper.getDefaultCachedExamProperty(examId, ExamProperties.MARKING_TASK_BUILDED.name()).getValue();
-        if (StringUtils.isNotBlank(markingTaskBuilt) && Constants.isTrue.equals(markingTaskBuilt)) {
-            if (!redoAuditInfo.getIsPass()) {
-                throw new StatusException("redoAudit-005", "该考试评卷任务已生成,不允许重审");
+        if(redoAuditInfo.getSkip() == null || !redoAuditInfo.getSkip()){
+            String markingTaskBuilt =
+                    ExamCacheTransferHelper.getDefaultCachedExamProperty(examId, ExamProperties.MARKING_TASK_BUILDED.name()).getValue();
+            if (StringUtils.isNotBlank(markingTaskBuilt) && Constants.isTrue.equals(markingTaskBuilt)) {
+                if (!redoAuditInfo.getIsPass()) {
+                    throw new StatusException("redoAudit-005", "该考试评卷任务已生成,不允许重审");
+                }
             }
         }
+
         examAuditService.redoAudit(redoAuditInfo, user);
         StringBuilder sb = new StringBuilder();
         sb.append("考试记录ID:" + redoAuditInfo.getExamRecordDataIds().get(0));

+ 13 - 0
examcloud-core-oe-admin-service/src/main/java/cn/com/qmth/examcloud/core/oe/admin/service/bean/examaudit/RedoAuditInfo.java

@@ -40,6 +40,19 @@ public class RedoAuditInfo implements JsonSerializable {
      */
     private String disciplineDetail;
 
+    /**
+     * 是否跳过评卷限制
+     */
+    private Boolean skip;
+
+    public Boolean getSkip() {
+        return skip;
+    }
+
+    public void setSkip(Boolean skip) {
+        this.skip = skip;
+    }
+
     public List<Long> getExamRecordDataIds() {
         return examRecordDataIds;
     }