|
|
@@ -10,12 +10,7 @@ import cn.start.tz.module.grape.city.api.GrapeCityApi;
|
|
|
import cn.start.tz.module.grape.city.api.vo.GrapeCityReqDTO;
|
|
|
import cn.start.tz.module.infra.api.file.FileApi;
|
|
|
import cn.start.tz.module.pressure2.controller.admin.externalOA.vo.ReturnFlowVO;
|
|
|
-import cn.start.tz.module.pressure2.dal.dataobject.boilertaskorderitemreport.BoilerTaskOrderItemReportDO;
|
|
|
import cn.start.tz.module.pressure2.dal.dataobject.dynamictbval.DynamicTbValDO;
|
|
|
-import cn.start.tz.module.pressure2.dal.dataobject.pipetaskorderitemreport.PipeTaskOrderItemReportDO;
|
|
|
-import cn.start.tz.module.pressure2.dal.mysql.boilertaskorderitemreport.BoilerTaskOrderItemReportMapper;
|
|
|
-import cn.start.tz.module.pressure2.dal.mysql.pipetaskorderitemreport.PipeTaskOrderItemReportMapper;
|
|
|
-import cn.start.tz.module.pressure2.enums.TaskOrderStatusEnum;
|
|
|
import cn.start.tz.module.pressure2.service.boilertaskorderitemreport.BoilerTaskOrderItemReportService;
|
|
|
import cn.start.tz.module.pressure2.service.dynamictbval.DynamicTbValService;
|
|
|
import cn.start.tz.module.pressure2.service.externalOA.vo.*;
|
|
|
@@ -27,8 +22,6 @@ import com.alibaba.cloud.commons.lang.StringUtils;
|
|
|
import com.alibaba.fastjson2.JSON;
|
|
|
import com.alibaba.fastjson2.JSONArray;
|
|
|
import com.alibaba.fastjson2.JSONObject;
|
|
|
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.grapecity.documents.excel.*;
|
|
|
import com.grapecity.documents.excel.drawing.ImageType;
|
|
|
import com.grapecity.documents.excel.template.DataSource.JsonDataSource;
|
|
|
@@ -72,10 +65,10 @@ public class ExternalOAServiceImpl implements ExternalOAService {
|
|
|
private DynamicTbValService dynamicTbValService;
|
|
|
|
|
|
@Resource
|
|
|
- private BoilerTaskOrderItemReportMapper boilerTaskOrderItemReportMapper;
|
|
|
+ private BoilerTaskOrderItemReportService boilerTaskOrderItemReportService;
|
|
|
|
|
|
@Resource
|
|
|
- private PipeTaskOrderItemReportMapper pipeTaskOrderItemReportMapper;
|
|
|
+ private PipeTaskOrderItemReportService pipeTaskOrderItemReportService;
|
|
|
|
|
|
@Value("${tz.fonts-folder-path:}")
|
|
|
private String fontsFolderPath;
|
|
|
@@ -211,45 +204,15 @@ public class ExternalOAServiceImpl implements ExternalOAService {
|
|
|
.execute().body();
|
|
|
log.info("撤销OA流程结果:{}", result);
|
|
|
|
|
|
- // 撤销成功后,回退本地报告状态到报告编制(520)
|
|
|
- Integer rollbackStatus = TaskOrderStatusEnum.REPORT_PREPARE.getStatus();
|
|
|
-
|
|
|
- // 在锅炉报告表中查找
|
|
|
- BoilerTaskOrderItemReportDO boilerReport = boilerTaskOrderItemReportMapper.selectOne(
|
|
|
- new LambdaQueryWrapper<BoilerTaskOrderItemReportDO>()
|
|
|
- .eq(BoilerTaskOrderItemReportDO::getSummaryId, summaryId));
|
|
|
- if (boilerReport != null) {
|
|
|
- LambdaUpdateWrapper<BoilerTaskOrderItemReportDO> updateObj = new LambdaUpdateWrapper<>();
|
|
|
- updateObj.eq(BoilerTaskOrderItemReportDO::getId, boilerReport.getId());
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getTaskStatus, rollbackStatus);
|
|
|
- // 清空审批相关字段
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getApprovalId, null);
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getApprovalTime, null);
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getRatifyId, null);
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getRatifyTime, null);
|
|
|
- boilerTaskOrderItemReportMapper.update(updateObj);
|
|
|
- log.info("撤销OA流程:锅炉报告状态已回退到{}", rollbackStatus);
|
|
|
- } else {
|
|
|
- // 在管道报告表中查找
|
|
|
- PipeTaskOrderItemReportDO pipeReport = pipeTaskOrderItemReportMapper.selectOne(
|
|
|
- new LambdaQueryWrapper<PipeTaskOrderItemReportDO>()
|
|
|
- .eq(PipeTaskOrderItemReportDO::getSummaryId, summaryId));
|
|
|
- if (pipeReport != null) {
|
|
|
- LambdaUpdateWrapper<PipeTaskOrderItemReportDO> updateObj = new LambdaUpdateWrapper<>();
|
|
|
- updateObj.eq(PipeTaskOrderItemReportDO::getId, pipeReport.getId());
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getTaskStatus, rollbackStatus);
|
|
|
- // 清空审批相关字段
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getApprovalId, null);
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getApprovalTime, null);
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getRatifyId, null);
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getRatifyTime, null);
|
|
|
- pipeTaskOrderItemReportMapper.update(updateObj);
|
|
|
- log.info("撤销OA流程:管道报告状态已回退到{}", rollbackStatus);
|
|
|
- } else {
|
|
|
- log.warn("撤销OA流程:未找到summaryId={}对应的报告记录", summaryId);
|
|
|
- }
|
|
|
+ // 委派给业务服务处理:回退报告状态 + 增加流转记录
|
|
|
+ if (boilerTaskOrderItemReportService.handleOACancelFlow(summaryId)) {
|
|
|
+ return CommonResult.success(true);
|
|
|
+ }
|
|
|
+ if (pipeTaskOrderItemReportService.handleOACancelFlow(summaryId)) {
|
|
|
+ return CommonResult.success(true);
|
|
|
}
|
|
|
|
|
|
+ log.warn("撤销OA流程:未找到summaryId={}对应的报告记录", summaryId);
|
|
|
return CommonResult.success(true);
|
|
|
}
|
|
|
|
|
|
@@ -262,47 +225,14 @@ public class ExternalOAServiceImpl implements ExternalOAService {
|
|
|
return CommonResult.error(400, "流程ID不能为空");
|
|
|
}
|
|
|
|
|
|
- // 退回目标状态:记录录入(500)
|
|
|
- Integer rollbackStatus = TaskOrderStatusEnum.REPORT_PREPARE.getStatus();
|
|
|
String returnReason = returnFlowVO.getState();
|
|
|
|
|
|
- // 先在锅炉报告表中查找
|
|
|
- BoilerTaskOrderItemReportDO boilerReport = boilerTaskOrderItemReportMapper.selectOne(
|
|
|
- new LambdaQueryWrapper<BoilerTaskOrderItemReportDO>()
|
|
|
- .eq(BoilerTaskOrderItemReportDO::getSummaryId, summaryId));
|
|
|
- if (boilerReport != null) {
|
|
|
- log.info("OA退回流程:找到锅炉报告记录,id={}, 当前状态={}", boilerReport.getId(), boilerReport.getTaskStatus());
|
|
|
- LambdaUpdateWrapper<BoilerTaskOrderItemReportDO> updateObj = new LambdaUpdateWrapper<>();
|
|
|
- updateObj.eq(BoilerTaskOrderItemReportDO::getId, boilerReport.getId());
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getTaskStatus, rollbackStatus);
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getReturnReason, returnReason);
|
|
|
- // 清空审批相关字段
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getApprovalId, null);
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getApprovalTime, null);
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getRatifyId, null);
|
|
|
- updateObj.set(BoilerTaskOrderItemReportDO::getRatifyTime, null);
|
|
|
- boilerTaskOrderItemReportMapper.update(updateObj);
|
|
|
- log.info("OA退回流程:锅炉报告状态已回退到{}", rollbackStatus);
|
|
|
+ // 委派给锅炉报告服务处理
|
|
|
+ if (boilerTaskOrderItemReportService.handleOAReturnFlow(summaryId, returnReason)) {
|
|
|
return CommonResult.success(true);
|
|
|
}
|
|
|
-
|
|
|
- // 在管道报告表中查找
|
|
|
- PipeTaskOrderItemReportDO pipeReport = pipeTaskOrderItemReportMapper.selectOne(
|
|
|
- new LambdaQueryWrapper<PipeTaskOrderItemReportDO>()
|
|
|
- .eq(PipeTaskOrderItemReportDO::getSummaryId, summaryId));
|
|
|
- if (pipeReport != null) {
|
|
|
- log.info("OA退回流程:找到管道报告记录,id={}, 当前状态={}", pipeReport.getId(), pipeReport.getTaskStatus());
|
|
|
- LambdaUpdateWrapper<PipeTaskOrderItemReportDO> updateObj = new LambdaUpdateWrapper<>();
|
|
|
- updateObj.eq(PipeTaskOrderItemReportDO::getId, pipeReport.getId());
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getTaskStatus, rollbackStatus);
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getReturnReason, returnReason);
|
|
|
- // 清空审批相关字段
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getApprovalId, null);
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getApprovalTime, null);
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getRatifyId, null);
|
|
|
- updateObj.set(PipeTaskOrderItemReportDO::getRatifyTime, null);
|
|
|
- pipeTaskOrderItemReportMapper.update(updateObj);
|
|
|
- log.info("OA退回流程:管道报告状态已回退到{}", rollbackStatus);
|
|
|
+ // 委派给管道报告服务处理
|
|
|
+ if (pipeTaskOrderItemReportService.handleOAReturnFlow(summaryId, returnReason)) {
|
|
|
return CommonResult.success(true);
|
|
|
}
|
|
|
|