From 77eff94e45dda4864b544ba59fae52646c205f9d Mon Sep 17 00:00:00 2001 From: caihaohan Date: Wed, 17 Jul 2024 11:56:08 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20scc=E6=B5=81=E7=A8=8B=E8=AE=BE=E8=AE=A1?= =?UTF-8?q?=E5=B7=A5=E7=A8=8B=E5=B8=88=E9=A9=B3=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/service/ActFlowCommonService.java | 13 +---- ...essStandardComplianceCheckServiceImpl.java | 51 ++++++++++++------- 2 files changed, 33 insertions(+), 31 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java index d3bb6488..0cc405a7 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/common/service/ActFlowCommonService.java @@ -345,18 +345,7 @@ public class ActFlowCommonService { return processSnapshotService.getOne(draftWrapper); } - public String getParentTaskId(String taskId) { - ProcessApprovalRecord processApprovalRecord = processApprovalRecordService.getByTaskId(taskId); - String parentTaskId = processApprovalRecord.getParentTaskId(); - if (StrUtil.isBlank(parentTaskId)) { - return taskId; - } - return parentTaskId; - } - - public BasicProcessInfoDTO getProcessInfo(String taskId) { - String finalTaskId = this.getParentTaskId(taskId); - String processInstanceId = this.getProcessInstanceIdByTaskId(finalTaskId); + public BasicProcessInfoDTO getProcessInfo(String processInstanceId) { // 获取流程通用数据 ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId); BasicProcessInfoDTO basicProcessInfoDTO = new BasicProcessInfoDTO(); diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java index b4c8508d..5cfbd931 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java @@ -9,7 +9,6 @@ import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.common.util.MinioUtil; import com.jero.modules.activiti.common.ActivitiCommon; -import com.jero.modules.activiti.entity.ProcessAll; import com.jero.modules.activiti.entity.ProcessApprovalRecord; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.process.common.enums.ProcessType; @@ -55,8 +54,8 @@ import java.util.*; import java.util.stream.Collectors; import static com.jero.modules.activiti.common.ActivitiCommon.*; -import static com.jero.modules.activiti.process.standardComplianceCheck.common.ProcessStandardComplianceCheckConstants.*; import static com.jero.modules.activiti.process.standardComplianceCheck.common.ProcessStandardComplianceCheckConstants.UNALLOCATED_QUANTITY; +import static com.jero.modules.activiti.process.standardComplianceCheck.common.ProcessStandardComplianceCheckConstants.*; /** * @author ThinkBook @@ -362,16 +361,15 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl result = new ProcessInfoVO<>(); ProcessSccVO processSccVO = new ProcessSccVO(); - result.setBasicProcessInfoDTO(actFlowCommonService.getProcessInfo(taskId)); - String executionId = taskService.createTaskQuery().taskId(taskId).singleResult().getExecutionId(); // 使用流程引擎根据taskId找到流程实例Id String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId); + String mainInstanceId = (String) taskService.getVariable(taskId, MAIN_INSTANCE_ID); + result.setBasicProcessInfoDTO(actFlowCommonService.getProcessInfo(mainInstanceId)); // 获取流程通用数据 - ProcessAll process = processAllService.getByProcessInstanceId(processInstanceId); ProcessApprovalRecord record = actFlowCommonService.getNodeIdByTaskId(taskId); // 获取当前流程数据 LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ProcessStandardComplianceCheck::getProcessInstanceId, processInstanceId); + queryWrapper.eq(ProcessStandardComplianceCheck::getProcessInstanceId, mainInstanceId); ProcessStandardComplianceCheck scc = getOne(queryWrapper); LambdaQueryWrapper detailQueryWrapper = new LambdaQueryWrapper<>(); List detailList = null; @@ -379,9 +377,10 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl + detail.getProcessInstanceId().equals(processInstanceId)).collect(Collectors.toList()); + processSccVO.setDetailInfoList(detailList); break; } result.setBusinessInfoDTO(processSccVO); return result; } - private void setDesignerEngineerEvaluationHandleData(ProcessSccVO processSccVO, String taskId) { - String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId); + private void setDesignerEngineerEvaluationHandleData(ProcessSccVO processSccVO, String mainInstanceId, String processInstanceId) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ProcessStandardComplianceCheck::getProcessInstanceId, mainInstanceId); + ProcessStandardComplianceCheck scc = getOne(queryWrapper); + processSccVO.setStandardInfo(scc); + LambdaQueryWrapper detailQueryWrapper = new LambdaQueryWrapper<>(); detailQueryWrapper.eq(ProcessStandardComplianceCheckDetail::getProcessInstanceId, processInstanceId); List detailList = sccDetailService.list(detailQueryWrapper); processSccVO.setDetailInfoList(detailList); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(ProcessStandardComplianceCheck::getId, detailList.get(0).getCheckId()); - ProcessStandardComplianceCheck scc = getOne(queryWrapper); - processSccVO.setStandardInfo(scc); } @Override @@ -433,8 +437,12 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl variables = new HashMap<>(); + String checkId = (String) delegateTask.getVariable(CHECK_ID); + String batchId = (String) delegateTask.getVariable(BATCH_ID); variables.put(ActivitiCommon.MAIN_INSTANCE_ID, mainInstanceId != null ? mainInstanceId : processInstanceId); variables.put(ActivitiCommon.PARENT_TASK_ID, taskId); + variables.put(CHECK_ID, checkId); + variables.put(BATCH_ID, batchId); String mainCheckUser = (String) delegateTask.getVariable(MAIN_CHECK_USER); LambdaUpdateWrapper wrapper = new LambdaUpdateWrapper<>(); switch (taskDefinitionKey) { @@ -442,8 +450,6 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl designerList = (List) delegateTask.getVariable(DESIGNER_LIST); - String checkId = (String) delegateTask.getVariable(CHECK_ID); - String batchId = (String) delegateTask.getVariable(BATCH_ID); for (String designer : designerList) { userInfoMap.put(DESIGNER, designer); userInfoMap.put(MAIN_CHECK_USER, mainCheckUser); @@ -476,7 +482,14 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl