ソースを参照

客户端bug修改

xiaof 4 年 前
コミット
c570ef3d97

+ 6 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskDetailServiceImpl.java

@@ -76,6 +76,12 @@ public class ExamTaskDetailServiceImpl extends ServiceImpl<ExamTaskDetailMapper,
         ExamTask examTask = examTaskService.getById(examTaskDetail.getId());
         List<ExamDetail> examDetails = examDetailService.listByCourseCodeAndPaperNumber(examTask.getSchoolId(), examTask.getCourseCode(), examTask.getPaperNumber());
         if (examDetails != null && examDetails.size() > 0) {
+            // 有考场提交打印,不能禁用启用
+            long count = examDetails.stream().filter(m-> !ExamDetailStatusEnum.NEW.name().equals(m.getStatus().name()) && !ExamDetailStatusEnum.READY.name().equals(m.getStatus().name())).count();
+            if(count > 0){
+                throw ExceptionResultEnum.ERROR.exception("有考场已提交打印,不能启用/禁用");
+            }
+
             Map<Long, List<Long>> map = examDetails.stream().collect(Collectors.groupingBy(ExamDetail::getPrintPlanId, Collectors.mapping(ExamDetail::getId, Collectors.toList())));
             for (Map.Entry<Long, List<Long>> listEntry : map.entrySet()) {
                 boolean b = tbTaskService.countByPrintPlanIdAndEntityId(examTask.getSchoolId(), listEntry.getKey(), listEntry.getValue());