Bladeren bron

fix:印刷计划加入考试相关

caozixuan 3 jaren geleden
bovenliggende
commit
1579ce4ee4

+ 22 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/bean/result/PrintPlanResult.java

@@ -96,6 +96,12 @@ public class PrintPlanResult {
     @ApiModelProperty("是否同步成功")
     private ExamPrintPlanSyncStatusEnum syncStatus;
 
+    @ApiModelProperty("考试id")
+    private Long examId;
+
+    @ApiModelProperty("考试名称")
+    private String examName;
+
     public Long getId() {
         return id;
     }
@@ -287,4 +293,20 @@ public class PrintPlanResult {
     public void setSyncStatus(ExamPrintPlanSyncStatusEnum syncStatus) {
         this.syncStatus = syncStatus;
     }
+
+    public Long getExamId() {
+        return examId;
+    }
+
+    public void setExamId(Long examId) {
+        this.examId = examId;
+    }
+
+    public String getExamName() {
+        return examName;
+    }
+
+    public void setExamName(String examName) {
+        this.examName = examName;
+    }
 }

+ 8 - 7
distributed-print-business/src/main/java/com/qmth/distributed/print/business/mapper/ExamPrintPlanMapper.java

@@ -25,6 +25,7 @@ public interface ExamPrintPlanMapper extends BaseMapper<ExamPrintPlan> {
     IPage<PrintPlanResult> findPrintPlanPage(@Param("iPage") Page<PrintPlanResult> iPage,
                                              @Param("schoolId") Long schoolId,
                                              @Param("semesterId") Long semesterId,
+                                             @Param("examId") Long examId,
                                              @Param("printPlanIdList") List<Long> printPlanIdList,
                                              @Param("status") PrintPlanStatusEnum status,
                                              @Param("startTime") Long startTime,
@@ -32,13 +33,13 @@ public interface ExamPrintPlanMapper extends BaseMapper<ExamPrintPlan> {
                                              @Param("orgIds") Set<Long> orgIds);
 
     IPage<PrintPlanResult> findPrintPlanSyncPage(@Param("iPage") Page<PrintPlanResult> iPage,
-                                             @Param("schoolId") Long schoolId,
-                                             @Param("semesterId") Long semesterId,
-                                             @Param("status") String[] status,
-                                             @Param("printPlanId") Long printPlanId,
-                                             @Param("startTime") Long startTime,
-                                             @Param("endTime") Long endTime,
-                                             @Param("orgIds") Set<Long> orgIds);
+                                                 @Param("schoolId") Long schoolId,
+                                                 @Param("semesterId") Long semesterId,
+                                                 @Param("status") String[] status,
+                                                 @Param("printPlanId") Long printPlanId,
+                                                 @Param("startTime") Long startTime,
+                                                 @Param("endTime") Long endTime,
+                                                 @Param("orgIds") Set<Long> orgIds);
 
     List<PrintPlanBrief> list(@Param("schoolId") Long schoolId, @Param("source") String source, @Param("module") String module, @Param("status") String[] status, @Param("orgIds") Set<Long> orgIds);
 

+ 12 - 10
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/ExamPrintPlanService.java

@@ -28,26 +28,27 @@ public interface ExamPrintPlanService extends IService<ExamPrintPlan> {
     /**
      * 印刷计划分页查询
      *
-     * @param schoolId   学校id
-     * @param semesterId
-     * @param printPlanIdList  印刷计划id集合
-     * @param status     印刷计划状态
-     * @param startTime  印刷计划创建时间开始
-     * @param endTime    印刷计划创建时间结束
-     * @param pageNumber 分页页数
-     * @param pageSize   分页容量
+     * @param schoolId        学校id
+     * @param semesterId      校区id
+     * @param examId          考试id
+     * @param printPlanIdList 印刷计划id集合
+     * @param status          印刷计划状态
+     * @param startTime       印刷计划创建时间开始
+     * @param endTime         印刷计划创建时间结束
+     * @param pageNumber      分页页数
+     * @param pageSize        分页容量
      * @return 分页查询结果
      */
-    IPage<PrintPlanResult> printPlanPage(Long schoolId, Long semesterId, List<Long> printPlanIdList, PrintPlanStatusEnum status, Long startTime, Long endTime, int pageNumber, int pageSize);
+    IPage<PrintPlanResult> printPlanPage(Long schoolId, Long semesterId, Long examId, List<Long> printPlanIdList, PrintPlanStatusEnum status, Long startTime, Long endTime, int pageNumber, int pageSize);
 
     IPage<PrintPlanResult> printPlanSyncPage(Long schoolId, Long semesterId, Long printPlanId, Long startTime, Long endTime, int pageNumber, int pageSize);
 
     /**
      * 印刷计划模糊名称
      *
-     * @return 印刷计划id和名称
      * @param source
      * @param module
+     * @return 印刷计划id和名称
      */
     List<PrintPlanBrief> printPlanBriefQuery(String source, String module);
 
@@ -99,6 +100,7 @@ public interface ExamPrintPlanService extends IService<ExamPrintPlan> {
 
     /**
      * 根据考场详情表查找印刷计划
+     *
      * @param examDetailId 考场详情表id
      * @return 印刷计划
      */

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

@@ -85,9 +85,9 @@ public class ExamPrintPlanServiceImpl extends ServiceImpl<ExamPrintPlanMapper, E
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public IPage<PrintPlanResult> printPlanPage(Long schoolId, Long semesterId, List<Long> printPlanIdList, PrintPlanStatusEnum status, Long startTime, Long endTime, int pageNumber, int pageSize) {
+    public IPage<PrintPlanResult> printPlanPage(Long schoolId, Long semesterId, Long examId, List<Long> printPlanIdList, PrintPlanStatusEnum status, Long startTime, Long endTime, int pageNumber, int pageSize) {
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
-        IPage<PrintPlanResult> page = examPrintPlanMapper.findPrintPlanPage(new Page<>(pageNumber, pageSize), schoolId, semesterId, printPlanIdList, status, startTime, endTime, orgIds);
+        IPage<PrintPlanResult> page = examPrintPlanMapper.findPrintPlanPage(new Page<>(pageNumber, pageSize), schoolId, semesterId, examId, printPlanIdList, status, startTime, endTime, orgIds);
         List<PrintPlanResult> list = page.getRecords();
         for (PrintPlanResult printPlanResult : list) {
             List<Map> variableContent = JSONObject.parseArray(printPlanResult.getVariableContentTemp(), Map.class);
@@ -105,10 +105,10 @@ public class ExamPrintPlanServiceImpl extends ServiceImpl<ExamPrintPlanMapper, E
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public IPage<PrintPlanResult> printPlanSyncPage(Long schoolId,Long semesterId, Long printPlanId, Long startTime, Long endTime, int pageNumber, int pageSize) {
+    public IPage<PrintPlanResult> printPlanSyncPage(Long schoolId, Long semesterId, Long printPlanId, Long startTime, Long endTime, int pageNumber, int pageSize) {
         Set<Long> orgIds = teachcloudCommonService.listSubOrgIds(null);
         String[] status = {PrintPlanStatusEnum.PRINT_FINISH.name(), PrintPlanStatusEnum.END.name()};
-        IPage<PrintPlanResult> page = examPrintPlanMapper.findPrintPlanSyncPage(new Page<>(pageNumber, pageSize), schoolId,semesterId, status, printPlanId, startTime, endTime, orgIds);
+        IPage<PrintPlanResult> page = examPrintPlanMapper.findPrintPlanSyncPage(new Page<>(pageNumber, pageSize), schoolId, semesterId, status, printPlanId, startTime, endTime, orgIds);
         List<PrintPlanResult> list = page.getRecords();
         for (PrintPlanResult printPlanResult : list) {
             List<Map> variableContent = JSONObject.parseArray(printPlanResult.getVariableContentTemp(), Map.class);
@@ -457,11 +457,11 @@ public class ExamPrintPlanServiceImpl extends ServiceImpl<ExamPrintPlanMapper, E
     @Override
     public ExamPrintPlan findByExamDetailId(Long examDetailId) {
         ExamDetail examDetail = examDetailService.getById(examDetailId);
-        if (Objects.isNull(examDetail)){
+        if (Objects.isNull(examDetail)) {
             throw ExceptionResultEnum.ERROR.exception("未找到印刷考场数据");
         }
         ExamPrintPlan examPrintPlan = this.getById(examDetail.getPrintPlanId());
-        if (Objects.isNull(examPrintPlan)){
+        if (Objects.isNull(examPrintPlan)) {
             throw ExceptionResultEnum.ERROR.exception("未找到印刷计划");
         }
         return examPrintPlan;

+ 11 - 4
distributed-print-business/src/main/resources/mapper/ExamPrintPlanMapper.xml

@@ -32,7 +32,7 @@
             resultType="com.qmth.distributed.print.business.bean.result.PrintPlanResult">
         SELECT
             a.id,
-            a.semester_id semesterId,
+            c.id semesterId,
             c.name semesterName,
             a.name,
             a.exam_start_time AS examStartTime,
@@ -57,19 +57,23 @@
             b.real_name AS createName,
             a.third_relate_id thirdRelateId,
             a.third_relate_name thirdRelateName,
-            a.sync_status syncStatus
+            a.sync_status syncStatus,
+            a.exam_id as examId,
+            d.name as examName
         FROM
             exam_print_plan a
                 LEFT JOIN
             sys_user b on a.create_id = b.id
                 LEFT JOIN
-            basic_semester c on a.semester_id = c.id
+            basic_exam d on a.exam_id = d.id
+                LEFT JOIN
+            basic_semester c on d.semester_id = c.id
         <where>
             <if test="schoolId != null and schoolId != ''">
                 and a.school_id = #{schoolId}
             </if>
             <if test="semesterId != null and semesterId != ''">
-                and a.semester_id = #{semesterId}
+                and c.id = #{semesterId}
             </if>
             <if test="printPlanIdList != null and printPlanIdList.size() > 0">
                 and a.id IN
@@ -86,6 +90,9 @@
             <if test="endTime != null and endTime != ''">
                 and #{endTime} >= a.create_time
             </if>
+            <if test="examId != null and examId != ''">
+                and a.exam_id = #{examId}
+            </if>
             <if test="orgIds != null">
                 AND b.org_id IN
                 <foreach collection="orgIds" item="item" index="index" open="(" separator="," close=")">

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

@@ -77,6 +77,7 @@ public class ExamPrintPlanController {
     @RequestMapping(value = "/list", method = RequestMethod.POST)
     @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
     public Result findPrintPlanPage(@ApiParam(value = "学期ID") @RequestParam(required = false) Long semesterId,
+                                    @ApiParam(value = "考试id") @RequestParam(required = false) String examId,
                                     @ApiParam(value = "印刷计划id集合") @RequestParam(required = false) List<String> printPlanIdList,
                                     @ApiParam(value = "印刷计划状态") @RequestParam(required = false) PrintPlanStatusEnum status,
                                     @ApiParam(value = "计划创建时间段开始时间") @RequestParam(required = false) Long startTime,
@@ -89,7 +90,7 @@ public class ExamPrintPlanController {
             printPlanIdList = new ArrayList<>();
         }
         List<Long> idList = printPlanIdList.stream().map(SystemConstant::convertIdToLong).collect(Collectors.toList());
-        return ResultUtil.ok(examPrintPlanService.printPlanPage(schoolId,semesterId, idList, status, startTime, endTime, pageNumber, pageSize));
+        return ResultUtil.ok(examPrintPlanService.printPlanPage(schoolId, semesterId, SystemConstant.convertIdToLong(examId), idList, status, startTime, endTime, pageNumber, pageSize));
     }
 
     @ApiOperation(value = "印刷计划模糊查询")
@@ -200,7 +201,7 @@ public class ExamPrintPlanController {
      * @param examPlace
      * @param examStartTime
      * @param examEndTime
-     * @param printHouseId 印刷室id
+     * @param printHouseId  印刷室id
      * @param pageNumber
      * @param pageSize
      * @return
@@ -220,7 +221,7 @@ public class ExamPrintPlanController {
                            @RequestParam(value = "printHouseId", required = false) String printHouseId,
                            @RequestParam @Min(SystemConstant.PAGE_NUMBER_MIN) Integer pageNumber,
                            @RequestParam @Min(SystemConstant.PAGE_SIZE_MIN) @Max(SystemConstant.PAGE_SIZE_MAX) Integer pageSize) {
-        IPage<PrintTaskDto> examTasks = examDetailService.listPrintTask(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime,SystemConstant.convertIdToLong(printHouseId), pageNumber, pageSize);
+        IPage<PrintTaskDto> examTasks = examDetailService.listPrintTask(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, SystemConstant.convertIdToLong(printHouseId), pageNumber, pageSize);
         return ResultUtil.ok(examTasks);
     }
 
@@ -290,7 +291,7 @@ public class ExamPrintPlanController {
                                 @RequestParam(value = "printStartTime", required = false) Long printStartTime,
                                 @RequestParam(value = "printEndTime", required = false) Long printEndTime,
                                 @RequestParam(value = "printHouseId", required = false) String printHouseId) {
-        PrintTaskTotalDto printTaskTotalDto = examDetailService.taskTotalData(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime,SystemConstant.convertIdToLong(printHouseId));
+        PrintTaskTotalDto printTaskTotalDto = examDetailService.taskTotalData(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, printStartTime, printEndTime, SystemConstant.convertIdToLong(printHouseId));
         return ResultUtil.ok(printTaskTotalDto);
     }
 
@@ -351,6 +352,5 @@ public class ExamPrintPlanController {
         boolean isSuccess = examDetailService.taskNormal(examDetail);
         return ResultUtil.ok(isSuccess);
     }
-
 }
 

+ 1 - 0
teachcloud-common/src/main/java/com/qmth/teachcloud/common/bean/result/SysUserResult.java

@@ -28,6 +28,7 @@ public class SysUserResult implements Serializable {
     @ApiModelProperty(value = "机构id")
     @JsonSerialize(using = ToStringSerializer.class)
     @JSONField(serialize = false)
+    @JsonIgnore
     private Long orgId;
 
     @ApiModelProperty(value = "角色id")