xiaof 3 anos atrás
pai
commit
662ef9404f

+ 1 - 1
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamTaskMapper.java

@@ -93,7 +93,7 @@ public interface ExamTaskMapper extends BaseMapper<ExamTask> {
 
     List<ExamTask> listExamTaskAuditExpire(@Param("startTime") Long startTime, @Param("endTime") Long endTime);
 
-    List<ExamTaskDetailDto> listTaskPaper(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("orgIds") Set<Long> orgIds, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId);
+    List<ExamTaskDetailDto> listTaskPaper(@Param("schoolId") Long schoolId, @Param("courseCode") String courseCode, @Param("paperNumber") String paperNumber, @Param("cardRuleId") Long cardRuleId, @Param("makeMethod") MakeMethodEnum makeMethod, @Param("startTime") Long startTime, @Param("endTime") Long endTime, @Param("orgIds") Set<Long> orgIds, @Param("containsQuestionTeacher") boolean containsQuestionTeacher, @Param("userId") Long userId);
 
     /**
      * 获取待办任务

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

@@ -149,9 +149,9 @@ public interface ExamTaskService extends IService<ExamTask> {
      */
     void sendSmsOverdueTask();
 
-    List<ExamTaskDetailDto> listTaskPaper(String courseCode, String paperNumber, Long startTime, Long endTime);
+    List<ExamTaskDetailDto> listTaskPaper(String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long endTime);
 
-    TBTask taskDownloadPdf(String courseCode, String paperNumber, Long startTime, Long endTime);
+    TBTask taskDownloadPdf(String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long endTime);
 
     /**
      * 获取待办任务

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

@@ -28,6 +28,7 @@ import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
 import com.qmth.teachcloud.common.enums.MqTagEnum;
 import com.qmth.teachcloud.common.enums.OrgTypeEnum;
 import com.qmth.teachcloud.common.enums.TaskTypeEnum;
+import com.qmth.teachcloud.common.service.BasicClazzService;
 import com.qmth.teachcloud.common.service.BasicStudentService;
 import com.qmth.teachcloud.common.service.BasicUserCourseService;
 import com.qmth.teachcloud.common.service.TBTaskService;
@@ -36,6 +37,7 @@ import com.qmth.teachcloud.common.util.RedisUtil;
 import com.qmth.teachcloud.common.util.ServletUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
@@ -77,8 +79,12 @@ public class ExamTaskPrintServiceImpl extends ServiceImpl<ExamTaskPrintMapper, E
     TBTaskService tbTaskService;
 
     @Autowired
+    @Lazy
     PrintCommonService printCommonService;
 
+    @Autowired
+    BasicClazzService basicClazzService;
+
     @Resource
     RedisUtil redisUtil;
 
@@ -235,7 +241,8 @@ public class ExamTaskPrintServiceImpl extends ServiceImpl<ExamTaskPrintMapper, E
         } else {
             // 校验班级
             QueryWrapper<ExamTaskPrint> queryWrapper = new QueryWrapper<>();
-            queryWrapper.lambda().eq(ExamTaskPrint::getPrintPlanId, examTaskPrint).ne(ExamTaskPrint::getId, examTaskPrint.getId());
+            queryWrapper.lambda().eq(ExamTaskPrint::getPrintPlanId, examTaskPrint.getPrintPlanId())
+                    .ne(ExamTaskPrint::getId, examTaskPrint.getId());
             List<ExamTaskPrint> examTaskPrints = this.list(queryWrapper);
             // 校验班级
             validateClass(examTaskPrints, classIds);
@@ -380,7 +387,8 @@ public class ExamTaskPrintServiceImpl extends ServiceImpl<ExamTaskPrintMapper, E
                 List<String> hisClassIds = Arrays.asList(taskPrint.getClassId().split(","));
                 for (String classId : classIds) {
                     if (hisClassIds.contains(classId)) {
-                        throw ExceptionResultEnum.ERROR.exception(classId + "已分配考场");
+                        String clazzNamesByClazzIds = basicClazzService.findClazzNamesByClazzIds(classId, ",");
+                        throw ExceptionResultEnum.ERROR.exception(clazzNamesByClazzIds + "已分配考场");
                     }
                 }
             }

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

@@ -1270,7 +1270,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
     }
 
     @Override
-    public List<ExamTaskDetailDto> listTaskPaper(String courseCode, String paperNumber, Long startTime, Long
+    public List<ExamTaskDetailDto> listTaskPaper(String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long
             endTime) {
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         // 查询用户角色是否包含命题老师
@@ -1278,13 +1278,13 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         boolean containsQuestionTeacher = list.stream().filter(m -> RoleTypeEnum.QUESTION_TEACHER.equals(m.getType())).count() > 0;
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
-        List<ExamTaskDetailDto> examTaskDetailDtos = this.baseMapper.listTaskPaper(schoolId, courseCode, paperNumber, startTime, endTime, orgIds, containsQuestionTeacher, sysUser.getId());
+        List<ExamTaskDetailDto> examTaskDetailDtos = this.baseMapper.listTaskPaper(schoolId, courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime, orgIds, containsQuestionTeacher, sysUser.getId());
         return examTaskDetailDtos;
     }
 
     @Override
-    public TBTask taskDownloadPdf(String courseCode, String paperNumber, Long startTime, Long endTime) {
-        List<ExamTaskDetailDto> examTasks = this.listTaskPaper(courseCode, paperNumber, startTime, endTime);
+    public TBTask taskDownloadPdf(String courseCode, String paperNumber, Long cardRuleId, MakeMethodEnum makeMethod, Long startTime, Long endTime) {
+        List<ExamTaskDetailDto> examTasks = this.listTaskPaper(courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime);
         if (CollectionUtils.isEmpty(examTasks)) {
             throw ExceptionResultEnum.ERROR.exception("没有可导出数据");
         }
@@ -1511,6 +1511,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         return examTaskMapper.findFlowIdToNotMySelf(currentUserId);
     }
 
+    @Transactional
     @Override
     public ExamTask submitTaskApply(ExamTaskApplyTemp examTaskApplyTemp) {
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
@@ -1590,7 +1591,7 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
             examPrintPlan.setCreateId(sysUser.getId());
             examPrintPlanService.save(examPrintPlan);
 
-            List<ExamDetailList> examDetailLists = JSONObject.parseArray(String.valueOf(examDetailParams.getList()), ExamDetailList.class);
+            List<ExamDetailList> examDetailLists = JSONObject.parseArray(JSONObject.toJSONString(examDetailParams.getList()), ExamDetailList.class);
 
             int i = 1;
             for (ExamDetailList examDetailList : examDetailLists) {

+ 6 - 5
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamTaskController.java

@@ -269,7 +269,7 @@ public class ExamTaskController {
      * @param paperNumber
      * @param startTime
      * @param endTime
-     * @param userName     命题老师名称
+     * @param userName    命题老师名称
      * @param pageNumber
      * @param pageSize
      * @return
@@ -445,7 +445,7 @@ public class ExamTaskController {
     @RequestMapping(value = "/review_save_batch", method = RequestMethod.POST)
     public Result taskReviewSaveBatch(@RequestBody ExamTaskReviewLog taskReviewLog) throws IOException {
         List<Long> examTaskIdList = Arrays.asList(taskReviewLog.getExamTaskIds());
-        if(!CollectionUtils.isEmpty(examTaskIdList)){
+        if (!CollectionUtils.isEmpty(examTaskIdList)) {
             for (Long examTaskId : examTaskIdList) {
                 ExamTask examTask = examTaskService.getById(examTaskId);
                 Task task = taskService.createTaskQuery().processInstanceId(String.valueOf(examTask.getFlowId())).singleResult();
@@ -589,9 +589,11 @@ public class ExamTaskController {
     @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
     public Result paperCardDownloadPdf(@RequestParam(value = "courseCode", required = false) String courseCode,
                                        @RequestParam(value = "paperNumber", required = false) String paperNumber,
+                                       @RequestParam(value = "cardRuleId", required = false) Long cardRuleId,
+                                       @RequestParam(value = "makeMethod", required = false) MakeMethodEnum makeMethod,
                                        @RequestParam(value = "startTime", required = false) Long startTime,
                                        @RequestParam(value = "endTime", required = false) Long endTime) {
-        TBTask tbTask = examTaskService.taskDownloadPdf(courseCode, paperNumber, startTime, endTime);
+        TBTask tbTask = examTaskService.taskDownloadPdf(courseCode, paperNumber, cardRuleId, makeMethod, startTime, endTime);
         return Objects.nonNull(tbTask) ? ResultUtil.ok(new EditResult(tbTask.getId())) : ResultUtil.error("创建任务失败");
     }
 
@@ -774,7 +776,7 @@ public class ExamTaskController {
                                        @RequestParam Integer pageNumber,
                                        @RequestParam Integer pageSize) {
         Set<Long> classIds = Arrays.stream(classId.split(",")).map(SystemConstant::convertIdToLong).collect(Collectors.toSet());
-        return ResultUtil.ok(basicStudentService.basicStudentPage(null,null,classIds,pageNumber,pageSize));
+        return ResultUtil.ok(basicStudentService.basicStudentPage(null, null, classIds, pageNumber, pageSize));
     }
 
     /**
@@ -806,6 +808,5 @@ public class ExamTaskController {
     }
 
 
-
 }