123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- 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.bean.params.SyncDataParam;
- import com.qmth.distributed.print.business.bean.result.EditResult;
- import com.qmth.distributed.print.business.entity.ExamDetail;
- import com.qmth.distributed.print.business.enums.ExamDetailStatusEnum;
- 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.templete.execute.AsyncDownloadPdfTempleteService;
- import com.qmth.teachcloud.common.bean.params.ArraysParams;
- import com.qmth.teachcloud.common.contant.SystemConstant;
- import com.qmth.teachcloud.common.entity.SysUser;
- import com.qmth.teachcloud.common.entity.TBTask;
- import com.qmth.teachcloud.common.enums.ExceptionResultEnum;
- import com.qmth.teachcloud.common.enums.TaskTypeEnum;
- import com.qmth.teachcloud.common.service.TBTaskService;
- import com.qmth.teachcloud.common.util.Result;
- import com.qmth.teachcloud.common.util.ResultUtil;
- import com.qmth.teachcloud.common.util.ServletUtil;
- 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.validation.Valid;
- import java.io.IOException;
- import java.util.Arrays;
- import java.util.List;
- import java.util.Map;
- import java.util.Objects;
- /**
- * <p>
- * 印刷计划管理 前端控制器
- * </p>
- *
- * @author xf
- * @since 2021-03-23
- */
- @Api(tags = "印刷计划管理Controller")
- @RestController
- @RequestMapping(ApiConstant.DEFAULT_URI_PREFIX + "/${prefix.url.exam}/print_sync")
- public class ExamPrintPlanSyncController {
- @Resource
- private ExamPrintPlanService examPrintPlanService;
- /**
- * 需要合并的计划查询
- * @param printPlanId
- * @param status
- * @param startTime
- * @param endTime
- * @param pageNumber
- * @param pageSize
- * @return
- */
- @ApiOperation(value = "印刷计划查询")
- @RequestMapping(value = "/list_sync", 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 = "云阅卷考试ID查询")
- @RequestMapping(value = "/list_relate_id", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "查询成功", response = Result.class)})
- public Result findPrintPlanPage() {
- Long schoolId = Long.valueOf(ServletUtil.getRequestHeaderSchoolId().toString());
- return ResultUtil.ok(examPrintPlanService.printSyncPlan(schoolId));
- }
- /**
- * 多计划合并同步
- * @param syncDataParam
- * @return
- * @throws Exception
- */
- @ApiOperation(value = "多计划合并同步")
- @RequestMapping(value = "/sync_data_merge", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
- public Result syncDataCloud(@RequestBody SyncDataParam syncDataParam) {
- examPrintPlanService.syncDataMerge(syncDataParam);
- return ResultUtil.ok(true);
- }
- /**
- * 手动同步
- * @param printPlanId
- * @param thirdRelateId
- * @return
- * @throws Exception
- */
- @ApiOperation(value = "同步失败-手动同步")
- @RequestMapping(value = "/sync_data_cloud", method = RequestMethod.POST)
- @ApiResponses({@ApiResponse(code = 200, message = "返回信息", response = EditResult.class)})
- @Aac(auth = BOOL.FALSE)
- public Result syncDataCloud(@RequestParam(value = "printPlanId") Long printPlanId,
- @RequestParam(value = "thirdRelateId", required = false) Long thirdRelateId) {
- examPrintPlanService.syncDataCloud(printPlanId, thirdRelateId);
- return ResultUtil.ok(true);
- }
- }
|