diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java index 876ae408..f03d5719 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esinspectplan/service/impl/EsInspectPlanFlowServiceImpl.java @@ -373,6 +373,8 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { saveCountersign(esInspectPlanFlowVO, map); // 处理业务表数据 handleBusinessData(esInspectPlanFlowVO); + // 获取稽查联络人 + String liaisons = taskService.getVariable(task.getId(), "liaisons", String.class); // 完成任务 taskService.complete(task.getId(), map); // 再次更新流程审批信息 @@ -400,28 +402,36 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { // 判断是否是最后一个节点 if (isLastNode(processAll.getProcessInstanceId()) && map.containsKey("pass") && (boolean) map.get("pass")){ + + // 企标稽查计划业务表数据 + List processEsInspectPlanList = processEsInspectPlanService.list( + new LambdaQueryWrapper() + .eq(ProcessEsInspectPlan::getProjectId, processAll.getProjectId())); + // 企标稽查计划 生成数据 保存企标库 - saveDataToInspect(processAll.getProjectId()); - // 抄送消息 通过hiwork 给稽查联络人抄送消息 - List processNodeList = queryPersonInfo(EsInspectPlanCommon.NAME, processAll.getProcessInstanceId()); - if (!processNodeList.isEmpty()){ - Optional first = processNodeList.stream().findFirst(); - first.ifPresent(v -> { - SendMessageDTO sendMessageDTO = new SendMessageDTO(); - sendMessageDTO.setTemplateCode(MessageTemplateCodeCommon.ES_INSPECT_PLAN); - sendMessageDTO.setToUserId(v.getLinkUserIds()); - Map sendMap = new HashMap<>(); - ProcessAll process = processAllService.getByProcessInstanceId(processAll.getProcessInstanceId()); - sendMap.put("prcNum", process.getPrcNum()); - sendMap.put("prcName", process.getPrcName()); - sendMessageDTO.setMap(sendMap); - sendMessageAPI.sendMessage(sendMessageDTO); - }); + saveDataToInspect(processEsInspectPlanList); + try { + // 抄送消息 通过hiwork 给稽查联络人抄送消息 + sendMessage(processAll, liaisons); + }catch (Exception e){ + log.error("邮件发送失败:{}", e.getMessage()); } } } } + private void sendMessage(ProcessAll processAll, String liaisons) { + SendMessageDTO sendMessageDTO = new SendMessageDTO(); + sendMessageDTO.setTemplateCode(MessageTemplateCodeCommon.ES_INSPECT_PLAN); + sendMessageDTO.setToUserId(liaisons); + Map sendMap = new HashMap<>(); + ProcessAll process = processAllService.getByProcessInstanceId(processAll.getProcessInstanceId()); + sendMap.put("prcNum", process.getPrcNum()); + sendMap.put("prcName", process.getPrcName()); + sendMessageDTO.setMap(sendMap); + sendMessageAPI.sendMessage(sendMessageDTO); + } + private static void saveCountersign(EsInspectPlanFlowVO esInspectPlanFlowVO, Map map) { if (map.containsKey("pass") && (boolean) map.get("pass")){ if (StringUtils.isNotBlank(esInspectPlanFlowVO.getCountersign())){ @@ -433,12 +443,7 @@ public class EsInspectPlanFlowServiceImpl implements IEsInspectPlanFlowService { } } - private void saveDataToInspect(String projectId) { - // 企标稽查计划业务表数据 - List processEsInspectPlanList = processEsInspectPlanService.list( - new LambdaQueryWrapper() - .eq(ProcessEsInspectPlan::getProjectId, projectId)); - + private void saveDataToInspect(List processEsInspectPlanList) { List list = new ArrayList<>(); List objectList = new ArrayList<>(); for (ProcessEsInspectPlan processEsInspectPlan : processEsInspectPlanList) {