Преглед на файлове

拒检原因是停用注销直接提交拒绝定检审核

xy преди 2 дни
родител
ревизия
3ca9702bd7

+ 29 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/boilertaskorder/BoilerTaskOrderServiceImpl.java

@@ -452,6 +452,9 @@ public class BoilerTaskOrderServiceImpl extends ServiceImpl<BoilerTaskOrderMappe
     @Resource
     private BoilerTaskOrderItemReportVersionArchivingService versionArchivingService;
 
+    @Resource
+    private BpmProcessInstanceApi processInstanceApi;
+
     @Resource
     private DeptApi deptApi;
 
@@ -2591,6 +2594,32 @@ public class BoilerTaskOrderServiceImpl extends ServiceImpl<BoilerTaskOrderMappe
 
             if (!rejectItems.isEmpty()) {
                 appointmentConfirmOrderRefuseItemMapper.insertBatch(rejectItems);
+
+                // 客户准备注销(1)或报停(2)时直接提交定检审核
+                Map<String, Object> processVariables = new HashMap<>();
+                String userId = getLoginUserId();
+                rejectItems.forEach(item -> {
+                    if ("1".equals(item.getReasonDict()) || "2".equals(item.getReasonDict())) {
+                        try {
+                            String processInstanceId = processInstanceApi.createProcessInstance(userId,
+                                    new BpmProcessInstanceCreateReqDTO()
+                                            .setProcessDefinitionKey(BoilerBpmModelConstants.REPORT_CITY_BUREAU_BOILER)
+                                            .setVariables(processVariables)
+                                            .setBusinessKey(item.getId())).getCheckedData();
+
+                            AppointmentConfirmOrderRefuseItemDO updateObj = new AppointmentConfirmOrderRefuseItemDO();
+                            updateObj.setId(item.getId());
+                            updateObj.setProcessInstanceId(processInstanceId);
+                            updateObj.setIsSubmit(true);
+                            updateObj.setStatus(100);
+                            updateObj.setSubmitId(userId);
+                            updateObj.setSubmitTime(LocalDateTime.now());
+                            appointmentConfirmOrderRefuseItemMapper.updateById(updateObj);
+                        } catch (Exception e) {
+                            log.error("[updateOrderDetailInfo] 提交定检审核流程失败, itemId={}", item.getId(), e);
+                        }
+                    }
+                });
             }
         }
 

+ 31 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/boilertaskorderitemsuspend/BoilerTaskOrderItemSuspendServiceImpl.java

@@ -28,6 +28,9 @@ import cn.start.tz.module.pressure2.service.taskordernontaxapply.vo.TaskOrderNon
 import cn.start.tz.module.system.api.dict.DictDataApi;
 import cn.start.tz.module.system.api.dict.dto.DictDataRespDTO;
 import cn.start.tz.module.system.api.user.AdminUserApi;
+import cn.start.tz.module.bpm.api.task.BpmProcessInstanceApi;
+import cn.start.tz.module.bpm.api.task.dto.BpmProcessInstanceCreateReqDTO;
+import cn.start.tz.module.bpm.enums.boiler.BoilerBpmModelConstants;
 import cn.start.tz.module.system.api.user.dto.AdminUserRespDTO;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import lombok.extern.slf4j.Slf4j;
@@ -110,6 +113,9 @@ public class BoilerTaskOrderItemSuspendServiceImpl extends ServiceImpl<BoilerTas
     @Resource
     private AdminUserApi adminUserApi;
 
+    @Resource
+    private BpmProcessInstanceApi processInstanceApi;
+
     @Resource
     private DictDataApi dictDataApi;
 
@@ -288,6 +294,31 @@ public class BoilerTaskOrderItemSuspendServiceImpl extends ServiceImpl<BoilerTas
         // flag=0 无需上报,不进入上报中心,只删除任务单设备
         if (submitReqVO.getFlag() != 0) {
             appointmentConfirmOrderRefuseItemMapper.insertBatch(refuseItemDOList);
+
+            // 客户准备注销(1)或报停(2)时直接提交定检审核
+            Map<String, Object> processVariables = new HashMap<>();
+            refuseItemDOList.forEach(item -> {
+                if ("1".equals(item.getReasonDict()) || "2".equals(item.getReasonDict())) {
+                    try {
+                        String processInstanceId = processInstanceApi.createProcessInstance(userId,
+                                new BpmProcessInstanceCreateReqDTO()
+                                        .setProcessDefinitionKey(BoilerBpmModelConstants.REPORT_CITY_BUREAU_BOILER)
+                                        .setVariables(processVariables)
+                                        .setBusinessKey(item.getId())).getCheckedData();
+
+                        AppointmentConfirmOrderRefuseItemDO updateObj = new AppointmentConfirmOrderRefuseItemDO();
+                        updateObj.setId(item.getId());
+                        updateObj.setProcessInstanceId(processInstanceId);
+                        updateObj.setIsSubmit(true);
+                        updateObj.setStatus(100);
+                        updateObj.setSubmitId(userId);
+                        updateObj.setSubmitTime(LocalDateTime.now());
+                        appointmentConfirmOrderRefuseItemMapper.updateById(updateObj);
+                    } catch (Exception e) {
+                        log.error("[submitTaskOrderItemSuspend] 提交定检审核流程失败, itemId={}", item.getId(), e);
+                    }
+                }
+            });
         }
 
         //重置设备排期标识

+ 28 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/pipetaskorder/PipeTaskOrderServiceImpl.java

@@ -2104,6 +2104,34 @@ public class PipeTaskOrderServiceImpl extends ServiceImpl<PipeTaskOrderMapper, P
 
                 if (!rejectItems.isEmpty()) {
                     appointmentConfirmOrderRefuseItemMapper.insertBatch(rejectItems);
+
+                    // 仅定检(checkType=100)且客户准备注销(1)或报停(2)时提交定检审核
+                    if (finalTaskOrderDO1.getCheckType() != null && finalTaskOrderDO1.getCheckType() == 100) {
+                        Map<String, Object> processVariables = new HashMap<>();
+                        String userId = getLoginUserId();
+                        rejectItems.forEach(item -> {
+                            if ("1".equals(item.getReasonDict()) || "2".equals(item.getReasonDict())) {
+                                try {
+                                    String processInstanceId = bpmProcessInstanceApi.createProcessInstance(userId,
+                                            new BpmProcessInstanceCreateReqDTO()
+                                                    .setProcessDefinitionKey(PipeBpmModelConstants.REPORT_CITY_BUREAU_PIPE)
+                                                    .setVariables(processVariables)
+                                                    .setBusinessKey(item.getId())).getCheckedData();
+
+                                    AppointmentConfirmOrderRefuseItemDO updateObj = new AppointmentConfirmOrderRefuseItemDO();
+                                    updateObj.setId(item.getId());
+                                    updateObj.setProcessInstanceId(processInstanceId);
+                                    updateObj.setIsSubmit(true);
+                                    updateObj.setStatus(100);
+                                    updateObj.setSubmitId(userId);
+                                    updateObj.setSubmitTime(LocalDateTime.now());
+                                    appointmentConfirmOrderRefuseItemMapper.updateById(updateObj);
+                                } catch (Exception e) {
+                                    log.error("[auditUpdate] 提交定检审核流程失败, itemId={}", item.getId(), e);
+                                }
+                            }
+                        });
+                    }
                 }
 
             });

+ 33 - 0
tz-module-pressure2/tz-module-pressure2-biz/src/main/java/cn/start/tz/module/pressure2/service/pipetaskorderitemsuspend/PipeTaskOrderItemSuspendServiceImpl.java

@@ -30,6 +30,9 @@ import cn.start.tz.module.system.api.dict.DictDataApi;
 import cn.start.tz.module.system.api.dict.dto.DictDataRespDTO;
 import cn.start.tz.module.system.api.user.AdminUserApi;
 import cn.start.tz.module.system.api.user.dto.AdminUserRespDTO;
+import cn.start.tz.module.bpm.api.task.BpmProcessInstanceApi;
+import cn.start.tz.module.bpm.api.task.dto.BpmProcessInstanceCreateReqDTO;
+import cn.start.tz.module.bpm.enums.pipe.PipeBpmModelConstants;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import lombok.extern.slf4j.Slf4j;
@@ -118,6 +121,9 @@ public class PipeTaskOrderItemSuspendServiceImpl extends ServiceImpl<PipeTaskOrd
     @Resource
     private AdminUserApi adminUserApi;
 
+    @Resource
+    private BpmProcessInstanceApi processInstanceApi;
+
     @Value("${spring.profiles.active}")
     private String env;
 
@@ -303,6 +309,33 @@ public class PipeTaskOrderItemSuspendServiceImpl extends ServiceImpl<PipeTaskOrd
                 if (submitReqVO.getFlag() != 0) {
                     if(taskOrderDO.getCheckType() != null && Arrays.asList(100,300).contains(taskOrderDO.getCheckType())){
                         appointmentConfirmOrderRefuseItemMapper.insertBatch(refuseItemDOList);
+
+                        // 仅定检(checkType=100)且客户准备注销(1)或报停(2)时提交定检审核
+                        if (taskOrderDO.getCheckType() == 100) {
+                            Map<String, Object> processVariables = new HashMap<>();
+                            refuseItemDOList.forEach(item -> {
+                                if ("1".equals(item.getReasonDict()) || "2".equals(item.getReasonDict())) {
+                                    try {
+                                        String processInstanceId = processInstanceApi.createProcessInstance(userId,
+                                                new BpmProcessInstanceCreateReqDTO()
+                                                        .setProcessDefinitionKey(PipeBpmModelConstants.REPORT_CITY_BUREAU_PIPE)
+                                                        .setVariables(processVariables)
+                                                        .setBusinessKey(item.getId())).getCheckedData();
+
+                                        AppointmentConfirmOrderRefuseItemDO updateObj = new AppointmentConfirmOrderRefuseItemDO();
+                                        updateObj.setId(item.getId());
+                                        updateObj.setProcessInstanceId(processInstanceId);
+                                        updateObj.setIsSubmit(true);
+                                        updateObj.setStatus(100);
+                                        updateObj.setSubmitId(userId);
+                                        updateObj.setSubmitTime(LocalDateTime.now());
+                                        appointmentConfirmOrderRefuseItemMapper.updateById(updateObj);
+                                    } catch (Exception e) {
+                                        log.error("[submitTaskOrderItemSuspend] 提交定检审核流程失败, itemId={}", item.getId(), e);
+                                    }
+                                }
+                            });
+                        }
                     }else{
                         List<AppointmentConfirmRefuseYearItemDO> appointmentConfirmRefuseYearItemDOList = BeanUtils.toBean(refuseItemDOList, AppointmentConfirmRefuseYearItemDO.class);
                         appointmentConfirmRefuseYearItemMapper.insertBatch(appointmentConfirmRefuseYearItemDOList);