xiaof 4 жил өмнө
parent
commit
f4cbda0c9b

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

@@ -17,4 +17,5 @@ import org.apache.ibatis.annotations.Param;
  */
 public interface ExamDetailMapper extends BaseMapper<ExamDetail> {
 
+    IPage<ExamTaskDetailDto> listPrintTask(Long schoolId, String printPlanName, String status, String courseCode, String paperNumber, String examPlace, Long examStartTime, Long examEndTime);
 }

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

@@ -4,6 +4,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.distributed.print.business.bean.dto.ExamTaskDetailDto;
 import com.qmth.distributed.print.business.entity.ExamDetail;
+import com.qmth.distributed.print.business.entity.ExamPrintPlan;
+
+import java.util.Map;
 
 /**
  * <p>
@@ -28,4 +31,13 @@ public interface ExamDetailService extends IService<ExamDetail> {
      */
     double calculateTotalPackages(Long printPlanId);
 
+    IPage<ExamTaskDetailDto> listPrintTask(Long schoolId, String printPlanName, String status, String courseCode, String paperNumber, String examPlace, Long examStartTime, Long examEndTime, Integer pageNumber, Integer pageSize);
+
+    boolean submitTask(ExamPrintPlan examPrintPlan);
+
+    boolean taskCancel(ExamPrintPlan examPrintPlan);
+
+    Map<String, Object> taskTotalData(String printPlanName, String status, String courseCode, String paperNumber, String examPlace, Long examStartTime, Long examEndTime);
+
+    String taskViewPDF(Long id);
 }

+ 29 - 0
distributed-print-business/src/main/java/com/qmth/distributed/print/business/service/impl/ExamDetailServiceImpl.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.distributed.print.business.bean.dto.ExamTaskDetailDto;
 import com.qmth.distributed.print.business.entity.ExamDetail;
+import com.qmth.distributed.print.business.entity.ExamPrintPlan;
 import com.qmth.distributed.print.business.mapper.ExamDetailMapper;
 import com.qmth.distributed.print.business.service.ExamDetailCourseService;
 import com.qmth.distributed.print.business.service.ExamDetailService;
@@ -14,6 +15,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 /**
@@ -47,4 +49,31 @@ public class ExamDetailServiceImpl extends ServiceImpl<ExamDetailMapper, ExamDet
         }
         return result;
     }
+
+    @Override
+    public IPage<ExamTaskDetailDto> listPrintTask(Long schoolId, String printPlanName, String status, String courseCode, String paperNumber, String examPlace, Long examStartTime, Long examEndTime, Integer pageNumber, Integer pageSize) {
+        Page<ExamTaskDetailDto> page = new Page<>(pageNumber, pageSize);
+        IPage<ExamTaskDetailDto> examTaskDetailDtoIPage = this.baseMapper.listPrintTask(schoolId, printPlanName,status, courseCode, paperNumber, examPlace, examStartTime, examEndTime);
+        return examTaskDetailDtoIPage;
+    }
+
+    @Override
+    public boolean submitTask(ExamPrintPlan examPrintPlan) {
+        return false;
+    }
+
+    @Override
+    public boolean taskCancel(ExamPrintPlan examPrintPlan) {
+        return false;
+    }
+
+    @Override
+    public Map<String, Object> taskTotalData(String printPlanName, String status, String courseCode, String paperNumber, String examPlace, Long examStartTime, Long examEndTime) {
+        return null;
+    }
+
+    @Override
+    public String taskViewPDF(Long id) {
+        return null;
+    }
 }

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

@@ -26,5 +26,6 @@
         id,
         school_id, print_plan_id, print_plan_name, exam_name, exam_start_time, exam_end_time, exam_place, total_subjects, exam_room, print_progress, print_user, package_code, create_id, create_time
     </sql>
+    <select id="listPrintTask" resultType="com.qmth.distributed.print.business.bean.dto.ExamTaskDetailDto"></select>
 
 </mapper>

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

@@ -10,7 +10,9 @@ import com.qmth.distributed.print.business.bean.dto.ExamTaskDetailDto;
 import com.qmth.distributed.print.business.bean.dto.RelatePaperDto;
 import com.qmth.distributed.print.business.bean.params.DeleteParams;
 import com.qmth.distributed.print.business.bean.params.PrintPlanParams;
+import com.qmth.distributed.print.business.entity.ExamPrintPlan;
 import com.qmth.distributed.print.business.enums.PrintPlanStatusEnum;
+import com.qmth.distributed.print.business.service.ExamDetailService;
 import com.qmth.distributed.print.business.service.ExamPrintPlanService;
 import com.qmth.distributed.print.business.service.ExamTaskDetailService;
 import com.qmth.distributed.print.business.service.ExamTaskService;
@@ -50,6 +52,9 @@ public class ExamPrintPlanController {
     @Autowired
     private ExamTaskDetailService examTaskDetailService;
 
+    @Autowired
+    private ExamDetailService examDetailService;
+
 
     @ApiOperation(value = "印刷计划查询")
     @RequestMapping(value = "/list", method = RequestMethod.POST)
@@ -103,6 +108,7 @@ public class ExamPrintPlanController {
 
     /**
      * 关联试卷管理-查询
+     *
      * @param request
      * @param relateType
      * @param printPlanId
@@ -128,34 +134,127 @@ public class ExamPrintPlanController {
 
     /**
      * 关联/更换试卷
+     *
      * @param request
      * @param map
      * @return
      */
     @RequestMapping(value = "/relate_update", method = RequestMethod.POST)
-    public Result relateUpdate(HttpServletRequest request, @RequestBody Map<String, String> map){
+    public Result relateUpdate(HttpServletRequest request, @RequestBody Map<String, String> map) {
         boolean isSuccess = examTaskDetailService.updatePaper(map);
         return ResultUtil.ok(isSuccess);
     }
 
     /**
      * 查询所有试卷编号/关联卷型
+     *
      * @param request
      * @param courseCode
      * @return
      */
     @RequestMapping(value = "/relate_get_paper_numbers", method = RequestMethod.POST)
-    public Result relateGetPaperNumbers(HttpServletRequest request, @RequestParam(value = "courseCode", required = true) String courseCode){
+    public Result relateGetPaperNumbers(HttpServletRequest request, @RequestParam(value = "courseCode", required = true) String courseCode) {
         ApiUser apiUser = RequestUtils.getApiUser(request);
         List<RelatePaperDto> list = examTaskService.listPaperTypes(apiUser.getSchoolId(), courseCode);
         return ResultUtil.ok(list);
     }
 
+    /**
+     * 印刷任务管理-查询
+     *
+     * @param request
+     * @param printPlanName
+     * @param status
+     * @param courseCode
+     * @param paperNumber
+     * @param examPlace
+     * @param examStartTime
+     * @param examEndTime
+     * @param pageNumber
+     * @param pageSize
+     * @return
+     */
+    @ApiOperation(value = "印刷任务管理-查询")
     @RequestMapping(value = "/task_list", method = RequestMethod.POST)
-    public Result taskList(HttpServletRequest request, @RequestParam(value = "courseCode", required = true) String courseCode){
+    public Result taskList(HttpServletRequest request,
+                           @RequestParam String printPlanName,
+                           @RequestParam String status,
+                           @RequestParam String courseCode,
+                           @RequestParam String paperNumber,
+                           @RequestParam String examPlace,
+                           @RequestParam Long examStartTime,
+                           @RequestParam Long examEndTime,
+                           @RequestParam Integer pageNumber,
+                           @RequestParam Integer pageSize) {
         ApiUser apiUser = RequestUtils.getApiUser(request);
-        List<RelatePaperDto> list = examTaskService.listPaperTypes(apiUser.getSchoolId(), courseCode);
-        return ResultUtil.ok(list);
+        IPage<ExamTaskDetailDto> examTasks = examDetailService.listPrintTask(apiUser.getSchoolId(), printPlanName, status, courseCode, paperNumber, examPlace, examStartTime, examEndTime, pageNumber, pageSize);
+        return ResultUtil.ok(examTasks);
+    }
+
+    /**
+     * @param request
+     * @param examPrintPlan
+     * @return
+     */
+    @ApiOperation(value = "印刷任务管理-提交印刷")
+    @RequestMapping(value = "/task_submit", method = RequestMethod.POST)
+    public Result taskSubmit(HttpServletRequest request,
+                             @RequestBody ExamPrintPlan examPrintPlan) {
+        boolean isSuccess = examDetailService.submitTask(examPrintPlan);
+        return ResultUtil.ok(isSuccess);
+    }
+
+    /**
+     * @param request
+     * @param examPrintPlan
+     * @return
+     */
+    @ApiOperation(value = "印刷任务管理-撤回提交")
+    @RequestMapping(value = "/task_cancel", method = RequestMethod.POST)
+    public Result taskCancel(HttpServletRequest request,
+                             @RequestBody ExamPrintPlan examPrintPlan) {
+        boolean isSuccess = examDetailService.taskCancel(examPrintPlan);
+        return ResultUtil.ok(isSuccess);
+    }
+
+    /**
+     * 印刷任务管理-汇总数据查询
+     * @param request
+     * @param printPlanName
+     * @param status
+     * @param courseCode
+     * @param paperNumber
+     * @param examPlace
+     * @param examStartTime
+     * @param examEndTime
+     * @return
+     */
+    @ApiOperation(value = "印刷任务管理-汇总数据查询")
+    @RequestMapping(value = "/task_total_data", method = RequestMethod.POST)
+    public Result taskTotalData(HttpServletRequest request,
+                                @RequestParam String printPlanName,
+                                @RequestParam String status,
+                                @RequestParam String courseCode,
+                                @RequestParam String paperNumber,
+                                @RequestParam String examPlace,
+                                @RequestParam Long examStartTime,
+                                @RequestParam Long examEndTime) {
+        Map<String, Object> map = examDetailService.taskTotalData(printPlanName, status, courseCode, paperNumber, examPlace, examStartTime, examEndTime);
+        return ResultUtil.ok(map);
+    }
+
+    /**
+     * 印刷任务管理-查看PDF
+     * @param request
+     * @param id
+     * @return
+     */
+    @ApiOperation(value = "印刷任务管理-查看PDF")
+    @RequestMapping(value = "/task_view_pdf", method = RequestMethod.POST)
+    public Result taskViewPDF(HttpServletRequest request,
+                                @RequestParam Long id) {
+        String path = examDetailService.taskViewPDF(id);
+        return ResultUtil.ok(path);
     }
 }