caozixuan 4 vuotta sitten
vanhempi
commit
35790a1092

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/CommonService.java

@@ -155,7 +155,7 @@ public interface CommonService {
      * @param courseCode
      * @param paperNumber
      */
-    public void checkData(Long schoolId, String courseCode, String paperNumber) throws IOException;
+    public void checkData(Long schoolId, String courseCode, String paperNumber,SysUser user) throws IOException;
 
     /**
      * 根据orgId查询所有子机构ID集合

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/CommonServiceImpl.java

@@ -499,7 +499,7 @@ public class CommonServiceImpl implements CommonService {
     }
 
     @Override
-    public void checkData(Long schoolId, String courseCode, String paperNumber) throws IOException {
+    public void checkData(Long schoolId, String courseCode, String paperNumber,SysUser user) throws IOException {
         // 校验命题任务是否提交
         ExamTask examTask = examTaskService.getByCourseCodeAndPaperNumber(schoolId, courseCode, paperNumber);
         if (examTask != null && !examTask.getEnable()) {
@@ -515,7 +515,7 @@ public class CommonServiceImpl implements CommonService {
                     List<ExamDetailCourse> examDetailCourses = examDetailCourseService.listByExamDetailId(examDetail.getId());
                     // 4.没有未完成的命题任务
                     if (examDetailCourses.isEmpty()) {
-                        Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.CREATE_PDF, examDetail.getPrintPlanId());
+                        Map<String, Object> map = tbTaskService.saveTask(TaskTypeEnum.CREATE_PDF, examDetail.getPrintPlanId(),user);
                         if (Objects.nonNull(examDetail.getId())) {
                             map.computeIfAbsent("examDetailId", v -> examDetail.getId());
                         }

+ 2 - 2
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamTaskServiceImpl.java

@@ -400,7 +400,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
             statusEnum = ExamStatusEnum.FINISH;
             // 校验是否可以提交打印状态
             ExamTask examTask = this.getById(taskReviewLog.getExamTaskId());
-            commonService.checkData(examTask.getSchoolId(), examTask.getCourseCode(), examTask.getPaperNumber());
+            commonService.checkData(examTask.getSchoolId(), examTask.getCourseCode(), examTask.getPaperNumber(),sysUser);
         } else {
             statusEnum = ExamStatusEnum.STAGE;
         }
@@ -494,7 +494,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         if (examTask.getStatus().name().equals(ExamStatusEnum.SUBMIT.name()) && !examTask.getReview()) {
             examTask.setStatus(ExamStatusEnum.FINISH);
             // 校验是否可以提交打印状态
-            commonService.checkData(examTask.getSchoolId(), examTask.getCourseCode(), examTask.getPaperNumber());
+            commonService.checkData(examTask.getSchoolId(), examTask.getCourseCode(), examTask.getPaperNumber(),(SysUser) ServletUtil.getRequestUser());
         }
 
         UpdateWrapper<ExamTask> updateWrapper = new UpdateWrapper<>();

+ 15 - 13
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/service/impl/TaskLogicServiceImpl.java

@@ -505,19 +505,21 @@ public class TaskLogicServiceImpl implements TaskLogicService {
         examDetailService.disposeExamStudentByExaminationExcel(dataList, userId);
 
         // TODO: 2021/4/13 调用检验接口 dataList按照schoolId,courseCode,paperNumber归集
-//        List<Map<String, Object>> checkList = dataList.stream().flatMap(e -> {
-//            Map<String, Object> tmp = new HashMap<>();
-//            tmp.put("schoolId", e.get("schoolId"));
-//            tmp.put("courseCode", e.get("courseCode"));
-//            tmp.put("paperNumber", e.get("paperNumber"));
-//            return Stream.of(tmp);
-//        }).distinct().collect(Collectors.toList());
-//        for (Map<String, Object> stringObjectMap : checkList) {
-//            Long checkSchoolId = SystemConstant.convertIdToLong(String.valueOf(stringObjectMap.get("schoolId")));
-//            String checkCourseCode = String.valueOf(stringObjectMap.get("courseCode"));
-//            String checkPaperNumber = String.valueOf(stringObjectMap.get("paperNumber"));
-//            commonService.checkData(checkSchoolId, checkCourseCode, checkPaperNumber);
-//        }
+        List<Map<String, Object>> checkList = dataList.stream().flatMap(e -> {
+            Map<String, Object> tmp = new HashMap<>();
+            tmp.put("schoolId", e.get("schoolId"));
+            tmp.put("courseCode", e.get("courseCode"));
+            tmp.put("paperNumber", e.get("paperNumber"));
+            return Stream.of(tmp);
+        }).distinct().collect(Collectors.toList());
+        for (Map<String, Object> stringObjectMap : checkList) {
+            Long checkSchoolId = SystemConstant.convertIdToLong(String.valueOf(stringObjectMap.get("schoolId")));
+            String checkCourseCode = String.valueOf(stringObjectMap.get("courseCode"));
+            String checkPaperNumber = String.valueOf(stringObjectMap.get("paperNumber"));
+            SysUser user = (SysUser) map.get(SystemConstant.USER);
+            user.setSchoolId(schoolId);
+            commonService.checkData(checkSchoolId, checkCourseCode, checkPaperNumber,user);
+        }
         map.put("dataCount",dataList.size());
         return map;
     }