123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272 |
- package com.qmth.distributed.print.api;
- import com.baomidou.mybatisplus.core.metadata.IPage;
- import com.qmth.boot.api.annotation.Aac;
- import com.qmth.boot.api.annotation.BOOL;
- import com.qmth.boot.api.constant.ApiConstant;
- import com.qmth.distributed.print.business.bean.dto.ExamTaskDetailDto;
- import com.qmth.distributed.print.business.bean.dto.PrintTaskDto;
- import com.qmth.distributed.print.business.bean.dto.PrintTaskTotalDto;
- 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.bean.params.RelatePaperParam;
- import com.qmth.distributed.print.business.entity.ExamDetail;
- import com.qmth.distributed.print.business.entity.ExamPrintPlan;
- import com.qmth.distributed.print.business.entity.SysUser;
- 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;
- import com.qmth.distributed.print.business.util.ServletUtil;
- import com.qmth.distributed.print.common.contant.SystemConstant;
- import com.qmth.distributed.print.common.util.Result;
- import com.qmth.distributed.print.common.util.ResultUtil;
- import io.swagger.annotations.*;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.validation.BindingResult;
- import org.springframework.web.bind.annotation.*;
- import javax.annotation.Resource;
- import javax.servlet.http.HttpServletRequest;
- import javax.validation.Valid;
- import java.io.IOException;
- import java.util.List;
- /**
- * <p>
- * 印刷计划管理 前端控制器
- * </p>
- *
- * @author xf
- * @since 2021-03-23
- */
- @Api(tags = "印刷计划管理Controller")
- @RestController
- @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.exam}/print")
- @Aac(auth = BOOL.FALSE)
- public class ExamPrintPlanController {
- @Resource
- private ExamPrintPlanService examPrintPlanService;
- @Autowired
- private ExamTaskService examTaskService;
- @Autowired
- private ExamTaskDetailService examTaskDetailService;
- @Autowired
- private ExamDetailService examDetailService;
- @ApiOperation(value = "印刷计划查询")
- @RequestMapping(value = "/list", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
- public Result findPrintPlanPage(@ApiParam(value = "印刷计划id") @RequestParam(required = false) String printPlanId,
- @ApiParam(value = "印刷计划状态") @RequestParam(required = false) PrintPlanStatusEnum status,
- @ApiParam(value = "计划创建时间段开始时间") @RequestParam(required = false) Long startTime,
- @ApiParam(value = "计划创建时间段结束时间") @RequestParam(required = false) Long endTime,
- @ApiParam(value = "分页页码", required = true) @RequestParam int pageNumber,
- @ApiParam(value = "分页数", required = true) @RequestParam int pageSize) {
- Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
- return ResultUtil.ok(examPrintPlanService.printPlanPage(schoolId, SystemConstant.convertIdToLong(printPlanId), status, startTime, endTime, pageNumber, pageSize));
- }
- @ApiOperation(value = "印刷计划模糊查询")
- @RequestMapping(value = "/query", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
- public Result findPrintPlanQuery() {
- return ResultUtil.ok(examPrintPlanService.printPlanBriefQuery());
- }
- @ApiOperation(value = "按类型查询模板")
- @RequestMapping(value = "/get_template", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
- public Result findPrintPlanPage() {
- Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
- SysUser user = (SysUser) ServletUtil.getRequestUser();
- Long userId = user.getId();
- return ResultUtil.ok(examPrintPlanService.printPlanTemplateDatasource(schoolId, userId));
- }
- @ApiOperation(value = "印刷计划-新增/修改")
- @RequestMapping(value = "/save", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "更新成功", response = Result.class)})
- public Result savePrintPlan(@Valid @RequestBody PrintPlanParams printPlanParams, BindingResult bindingResult) {
- if (bindingResult.hasErrors()) {
- return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
- }
- Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
- printPlanParams.setSchoolId(schoolId);
- return ResultUtil.ok(examPrintPlanService.savePrintPlan(printPlanParams));
- }
- @ApiOperation(value = "印刷计划-删除")
- @RequestMapping(value = "/remove", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "删除成功", response = Result.class)})
- public Result removePrintPlan(@Valid @RequestBody DeleteParams deleteParams, BindingResult bindingResult) {
- if (bindingResult.hasErrors()) {
- return ResultUtil.error(bindingResult.getAllErrors().get(0).getDefaultMessage());
- }
- return ResultUtil.ok(examPrintPlanService.removePrintPlan(deleteParams));
- }
- /**
- * 关联试卷管理-查询
- *
- * @param relateType
- * @param printPlanId
- * @param courseCode
- * @param paperNumber
- * @param pageNumber
- * @param pageSize
- * @return
- */
- @ApiOperation(value = "关联试卷管理-查询")
- @RequestMapping(value = "/relate_list", method = RequestMethod.POST)
- public Result relateList(@RequestParam(value = "relateType", required = false) String relateType,
- @RequestParam(value = "printPlanId", required = false) Long printPlanId,
- @RequestParam(value = "courseCode", required = false) String courseCode,
- @RequestParam(value = "paperNumber", required = false) String paperNumber,
- @RequestParam Integer pageNumber,
- @RequestParam Integer pageSize) {
- IPage<ExamTaskDetailDto> examTasks = examTaskDetailService.list(relateType, printPlanId, courseCode, paperNumber, pageNumber, pageSize);
- return ResultUtil.ok(examTasks);
- }
- /**
- * 关联/更换试卷
- *
- * @param paperParam
- * @return
- */
- @ApiOperation(value = "关联/更换试卷")
- @RequestMapping(value = "/relate_update", method = RequestMethod.POST)
- public Result relateUpdate(@RequestBody RelatePaperParam paperParam) {
- boolean isSuccess = examTaskDetailService.updatePaper(paperParam);
- return ResultUtil.ok(isSuccess);
- }
- /**
- * 查询所有试卷编号/关联卷型
- *
- * @param courseCode
- * @return
- */
- @ApiOperation(value = "查询所有试卷编号/关联卷型")
- @RequestMapping(value = "/relate_get_paper_numbers", method = RequestMethod.POST)
- public Result relateGetPaperNumbers(@RequestParam(value = "courseCode", required = true) String courseCode) {
- List<RelatePaperDto> list = examTaskService.listPaperTypes(courseCode);
- return ResultUtil.ok(list);
- }
- /**
- * 印刷任务管理-查询
- *
- * @param printPlanId
- * @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(@RequestParam(value = "printPlanId", required = false) Long printPlanId,
- @RequestParam(value = "status", required = false) String status,
- @RequestParam(value = "courseCode", required = false) String courseCode,
- @RequestParam(value = "paperNumber", required = false) String paperNumber,
- @RequestParam(value = "examPlace", required = false) String examPlace,
- @RequestParam(value = "examRoom", required = false) String examRoom,
- @RequestParam(value = "examStartTime", required = false) Long examStartTime,
- @RequestParam(value = "examEndTime", required = false) Long examEndTime,
- @RequestParam Integer pageNumber,
- @RequestParam Integer pageSize) {
- IPage<PrintTaskDto> examTasks = examDetailService.listPrintTask(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime, pageNumber, pageSize);
- return ResultUtil.ok(examTasks);
- }
- /**
- * 提交印刷
- * @param examDetail
- * @return
- */
- @ApiOperation(value = "印刷任务管理-提交印刷")
- @RequestMapping(value = "/task_submit", method = RequestMethod.POST)
- public Result taskSubmit(@RequestBody ExamDetail examDetail) throws IOException {
- boolean isSuccess = examDetailService.submitTask(examDetail);
- return ResultUtil.ok(isSuccess);
- }
- /**
- * 撤回
- * @param examDetail
- * @return
- */
- @ApiOperation(value = "印刷任务管理-撤回提交")
- @RequestMapping(value = "/task_cancel", method = RequestMethod.POST)
- public Result taskCancel(@RequestBody ExamDetail examDetail) {
- boolean isSuccess = examDetailService.taskCancel(examDetail);
- return ResultUtil.ok(isSuccess);
- }
- /**
- * 重新提交
- * @param examDetail
- * @return
- */
- @ApiOperation(value = "印刷任务管理-重新提交")
- @RequestMapping(value = "/task_resubmit", method = RequestMethod.POST)
- public Result taskResubmit(@RequestBody ExamDetail examDetail) throws IOException {
- boolean isSuccess = examDetailService.resubmitTask(examDetail);
- return ResultUtil.ok(isSuccess);
- }
- /**
- * 印刷任务管理-汇总数据查询
- *
- * @param printPlanId
- * @param status
- * @param courseCode
- * @param paperNumber
- * @param examPlace
- * @param examRoom
- * @param examStartTime
- * @param examEndTime
- * @return
- */
- @ApiOperation(value = "印刷任务管理-汇总数据查询")
- @RequestMapping(value = "/task_total_data", method = RequestMethod.POST)
- public Result taskTotalData(@RequestParam(value = "printPlanId", required = false) Long printPlanId,
- @RequestParam(value = "status", required = false) String status,
- @RequestParam(value = "courseCode", required = false) String courseCode,
- @RequestParam(value = "paperNumber", required = false) String paperNumber,
- @RequestParam(value = "examPlace", required = false) String examPlace,
- @RequestParam(value = "examRoom", required = false) String examRoom,
- @RequestParam(value = "examStartTime", required = false) Long examStartTime,
- @RequestParam(value = "examEndTime", required = false) Long examEndTime) {
- PrintTaskTotalDto printTaskTotalDto = examDetailService.taskTotalData(printPlanId, status, courseCode, paperNumber, examPlace, examRoom, examStartTime, examEndTime);
- return ResultUtil.ok(printTaskTotalDto);
- }
- /**
- * 印刷任务管理-查看PDF
- *
- * @param examDetailId
- * @return
- */
- @ApiOperation(value = "印刷任务管理-查看PDF")
- @RequestMapping(value = "/task_view_pdf", method = RequestMethod.POST)
- public Result taskViewPDF(@RequestParam Long examDetailId) {
- String path = examDetailService.taskViewPDF(examDetailId);
- return ResultUtil.ok(path);
- }
- }
|