From e5b304a9d3fc784e4d3b7c32da06aedfaf7b2045 Mon Sep 17 00:00:00 2001 From: lijiarao Date: Fri, 19 Jan 2024 11:11:39 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=B3=95=E8=A7=84=E5=90=88=E8=A7=84?= =?UTF-8?q?=E8=AF=84=E4=BC=B0=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/ProcessProjectStandardCommon.java | 2 + .../ProcessProjectStandardService.java | 54 +++++++++++++++++-- 2 files changed, 52 insertions(+), 4 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java index c74b4930..fb88aa90 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/common/ProcessProjectStandardCommon.java @@ -12,6 +12,8 @@ public class ProcessProjectStandardCommon { public static final String MODULE_OWNER_LIST_SIZE = "moduleOwnerListSize"; public static final String DESIGN_ENGINEER_LIST = "designEngineerList"; public static final String DESIGN_ENGINEER_LIST_SIZE = "designEngineerListSize"; + public static final String NOT_INVOLVED_MODULE_OWNER_LIST_SIZE = "notInvolvedModuleOwnerListSize"; + public static final String NOT_INVOLVED_MODULE_OWNER_LIST = "notInvolvedModuleOwnerList"; //法规工程师发起 diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java index 441510df..fb384be0 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/projectstandard/service/ProcessProjectStandardService.java @@ -156,14 +156,14 @@ public class ProcessProjectStandardService extends ServiceImpl variables = new HashMap<>(); + //如果驳回查询下一步的模块责任人 + if (!pass){ + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(ProcessProjectStandardTermUser::getProcessId,businessId); + wrapper.eq(ProcessProjectStandardTermUser::getResponsibleUnitLeader,originUserId); + List termUserList = termUserMapper.selectList(wrapper); + //选择不涉及的模块责任人 + List notInvolvedModuleOwnerList = termUserList.stream() + .filter(i -> StringUtils.isBlank(i.getDesignEngineer())) + .map(ProcessProjectStandardTermUser::getModuleOwner) + .distinct() + .collect(Collectors.toList()); + //选择设计工程师的模块责任人 + List moduleOwnerList = termUserList.stream() + .filter(i -> StringUtils.isNotBlank(i.getDesignEngineer())) + .map(ProcessProjectStandardTermUser::getModuleOwner) + .distinct() + .collect(Collectors.toList()); + variables.put(ProcessProjectStandardCommon.NOT_INVOLVED_MODULE_OWNER_LIST, notInvolvedModuleOwnerList); + variables.put(ProcessProjectStandardCommon.NOT_INVOLVED_MODULE_OWNER_LIST_SIZE, notInvolvedModuleOwnerList.size()); + variables.put(ProcessProjectStandardCommon.MODULE_OWNER_LIST, moduleOwnerList); + variables.put(ProcessProjectStandardCommon.MODULE_OWNER_LIST_SIZE, moduleOwnerList.size()); + } + String taskId = processDTO.getTaskId(); + variables.put(ProcessProjectAssessCommon.PASS, pass); + taskService.complete(taskId, variables); } //法规工程师审批 private void fggcsspApprove(ProcessInfoVO processInfoVO, ProcessDTO processDTO, boolean pass) { @@ -467,6 +497,7 @@ public class ProcessProjectStandardService extends ServiceImpl termList = businessInfoDTO.getProcessProjectStandardTermList(); List carbonCopyPersonnelList = new ArrayList<>(); List updateTermList = new ArrayList<>(); + List designEngineerList = new ArrayList<>(); Date date = new Date(); for (ProcessProjectStandardTerm term : termList) { ProcessProjectStandardTerm term1 = new ProcessProjectStandardTerm(); @@ -476,6 +507,7 @@ public class ProcessProjectStandardService extends ServiceImpl variables = new HashMap<>(); + variables.put(ProcessProjectAssessCommon.PASS, pass); + variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerList); + variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST_SIZE, designEngineerList.size()); + taskService.complete(taskId, variables); //发送消息 String carbonCopyPersonnels = carbonCopyPersonnelList.stream().distinct().collect(Collectors.joining(",")); SendMessageDTO sendMessageDTO = new SendMessageDTO(); @@ -730,8 +769,15 @@ public class ProcessProjectStandardService extends ServiceImpl termList = termMapper.getByModuleOwner(projectId, assignee, executionParentId, false); - + List termList = termMapper.getByModuleOwner(projectId, assignee, executionParentId, true); + List designEngineerIds = termList.stream() + .map(ProcessProjectStandardTerm::getDesignEngineer) + .distinct() + .collect(Collectors.toList()); + ThreadLocalUtil.put(ProcessProjectAssessCommon.EXECUTION_ID,executionParentId); + Map variables = new HashMap<>(); + variables.put(ProcessProjectStandardCommon.DESIGN_ENGINEER_LIST, designEngineerIds); + taskService.complete(delegateTask.getId(),variables); } /**