caozixuan %!s(int64=4) %!d(string=hai) anos
pai
achega
5bd24e1fe1

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

@@ -35,6 +35,7 @@ public interface ExamDetailMapper extends BaseMapper<ExamDetail> {
                                            @Param("packageCode") String packageCode);
 
     IPage<ExaminationDetailResult> findDetailPage(@Param("page") Page<ExaminationDetailResult> page,
+                                                  @Param("schoolId") Long schoolId,
                                                   @Param("printPlanId") Long printPlanId,
                                                   @Param("courseCode") String courseCode,
                                                   @Param("paperNumber") String paperNumber,

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

@@ -102,7 +102,7 @@ public interface ExamDetailService extends IService<ExamDetail> {
      * @param pageSize 分页数量
      * @return 查询结果
      */
-    IPage<ExaminationDetailResult> findExaminationDetail(Long printPlanId,String courseCode,String paperNumber,String examPlace,
+    IPage<ExaminationDetailResult> findExaminationDetail(Long schoolId, Long printPlanId,String courseCode,String paperNumber,String examPlace,
                                                          String examRoom,String studentParam,int pageNumber,int pageSize);
 
     IPage<ExaminationDetailResult> findExaminationDetail(Long convertIdToLong, int pageNumber, int pageSize);

+ 6 - 4
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailServiceImpl.java

@@ -283,8 +283,8 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public IPage<ExaminationDetailResult> findExaminationDetail(Long printPlanId, String courseCode, String paperNumber, String examPlace, String examRoom, String studentParam, int pageNumber, int pageSize) {
-        return examDetailMapper.findDetailPage(new Page<>(pageNumber, pageSize), printPlanId, courseCode, paperNumber, examPlace, examRoom, studentParam);
+    public IPage<ExaminationDetailResult> findExaminationDetail(Long schoolId, Long printPlanId, String courseCode, String paperNumber, String examPlace, String examRoom, String studentParam, int pageNumber, int pageSize) {
+        return examDetailMapper.findDetailPage(new Page<>(pageNumber, pageSize),schoolId, printPlanId, courseCode, paperNumber, examPlace, examRoom, studentParam);
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -296,14 +296,16 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
     @Transactional(rollbackFor = Exception.class)
     @Override
     public List<String> findExamPlaceDatasource() {
-        List<ExamDetail> examDetail = this.list();
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        List<ExamDetail> examDetail = this.list(new QueryWrapper<ExamDetail>().lambda().eq(ExamDetail::getSchoolId,schoolId));
         return examDetail.stream().map(ExamDetail::getExamPlace).distinct().collect(Collectors.toList());
     }
 
     @Transactional(rollbackFor = Exception.class)
     @Override
     public List<String> findExamRoomDatasource() {
-        List<ExamDetail> examDetail = this.list();
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        List<ExamDetail> examDetail = this.list(new QueryWrapper<ExamDetail>().lambda().eq(ExamDetail::getSchoolId,schoolId));
         return examDetail.stream().map(ExamDetail::getExamRoom).distinct().collect(Collectors.toList());
     }
 

+ 4 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamPrintPlanServiceImpl.java

@@ -246,9 +246,13 @@ public class ExamPrintPlanServiceImpl extends ServiceImpl<ExamPrintPlanMapper, E
         if (examPrintPlan == null){
             throw ExceptionResultEnum.ERROR.exception("要删除的项目计划不存在 id = " + id);
         }
+        // TODO: 2021/4/23 只有新建能删除  && !PrintPlanStatusEnum.READY.equals(examPrintPlan.getStatus())
         if (!PrintPlanStatusEnum.NEW.equals(examPrintPlan.getStatus())){
             throw ExceptionResultEnum.ERROR.exception("只有'新建'状态的项目计划可以被删除 status = " + examPrintPlan.getStatus());
         }
+//        if (!PrintPlanStatusEnum.NEW.equals(examPrintPlan.getStatus()) && !PrintPlanStatusEnum.READY.equals(examPrintPlan.getStatus())){
+//            throw ExceptionResultEnum.ERROR.exception("只有'新建'状态的项目计划可以被删除 status = " + examPrintPlan.getStatus());
+//        }
         examDetailService.deleteExaminationData(id);
         return this.removeById(id);
     }

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

@@ -118,10 +118,10 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
         Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
         // 查询命题任务中的试卷编号
         QueryWrapper<ExamTask> queryWrapperExamTask = new QueryWrapper<>();
+        queryWrapperExamTask.lambda().eq(ExamTask::getSchoolId, schoolId);
         List<String> list = new ArrayList<>();
         if (StringUtils.isNotBlank(param)) {
-            queryWrapperExamTask.lambda().eq(ExamTask::getSchoolId, schoolId)
-                    .and(i -> i.like(ExamTask::getCourseCode, param).or().like(ExamTask::getCourseName, param));
+            queryWrapperExamTask.lambda().and(i -> i.like(ExamTask::getCourseCode, param).or().like(ExamTask::getCourseName, param));
         }
         List<ExamTask> examTasks = this.list(queryWrapperExamTask);
         if (examTasks != null && examTasks.size() > 0) {
@@ -130,10 +130,10 @@ public class ExamTaskServiceImpl extends ServiceImpl<ExamTaskMapper, ExamTask> i
 
         // 查询考务-科目中的试卷编号
         QueryWrapper<ExamDetailCourse> queryWrapperExamDetailCourse = new QueryWrapper<>();
+        queryWrapperExamDetailCourse.lambda().eq(ExamDetailCourse::getSchoolId, schoolId);
         List<String> list2 = new ArrayList<>();
         if (StringUtils.isNotBlank(param)) {
-            queryWrapperExamDetailCourse.lambda().eq(ExamDetailCourse::getSchoolId, schoolId)
-                    .and(i -> i.like(ExamDetailCourse::getCourseCode, param).or().like(ExamDetailCourse::getCourseName, param));
+            queryWrapperExamDetailCourse.lambda().and(i -> i.like(ExamDetailCourse::getCourseCode, param).or().like(ExamDetailCourse::getCourseName, param));
         }
         List<ExamDetailCourse> ExamDetailCourses = examDetailCourseService.list(queryWrapperExamDetailCourse);
         if (ExamDetailCourses != null && ExamDetailCourses.size() > 0) {

+ 2 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/templete/execute/AsyncExaminationImportTemplateService.java

@@ -52,6 +52,8 @@ public class AsyncExaminationImportTemplateService extends AsyncImportTaskTemple
 
         try {
             TaskLogicService taskLogicService = SpringContextHolder.getBean(TaskLogicService.class);
+
+            // 执行导入考务数据
             Map<String,Object> result = taskLogicService.executeImportExaminationLogic(map);
 
             // 检测是否去生成pdf

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

@@ -551,6 +551,10 @@ public class TaskLogicServiceImpl implements TaskLogicService {
             // 组装exam_student数据
             examDetailService.disposeExamStudentByExaminationExcel(dataList, userId);
 
+            // 更改印刷计划状态
+            examPrintPlan.setStatus(PrintPlanStatusEnum.READY);
+            examPrintPlanService.updateById(examPrintPlan);
+
             map.put("examDetailIdList", examDetailIdList);
             map.put("dataCount", dataList.size());
         } catch (Exception e) {

+ 3 - 0
distributed-print-business/src/main/resources/mapper/ExamDetailMapper.xml

@@ -173,6 +173,9 @@
             exam_detail det ON cou.exam_detail_id = det.id
                 AND stu.school_id = det.school_id
         <where>
+            <if test="schoolId != null and schoolId > 0">
+                AND det.school_id = #{schoolId}
+            </if>
             <if test="printPlanId != null and printPlanId > 0">
                 AND det.print_plan_id = #{printPlanId}
             </if>

+ 2 - 1
distributed-print/src/main/java/com/qmth/distributed/print/api/ExamDetailController.java

@@ -104,7 +104,8 @@ public class ExamDetailController {
                                         @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
                                         @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
 
-        return ResultUtil.ok(examDetailService.findExaminationDetail(SystemConstant.convertIdToLong(printPlanId),
+        Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
+        return ResultUtil.ok(examDetailService.findExaminationDetail(schoolId,SystemConstant.convertIdToLong(printPlanId),
                 courseCode, paperNumber, examPlace, examRoom, studentParam, pageNumber, pageSize));
     }