From 2da9b50d5306594bb8b66677c9a87b7a74b77ad4 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Tue, 9 Jan 2024 11:50:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=2079953=20=E4=BC=81=E6=A0=87=E6=9B=B4?= =?UTF-8?q?=E6=94=B9=E6=B5=81=E7=A8=8B--=E8=BD=AC=E5=8A=9E=E5=90=8E?= =?UTF-8?q?=E9=A9=B3=E5=9B=9E=E9=87=8D=E5=8F=91=EF=BC=8C=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=8F=97=E7=90=86=E4=BA=BA=E4=B8=8D=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProcessEsChangeServiceImpl.java | 33 +++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java index 47c34434..524ff000 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esChange/service/impl/ProcessEsChangeServiceImpl.java @@ -28,7 +28,9 @@ import com.jero.modules.sys.utils.UserUtils; import com.jero.modules.system.service.ISysUserDepartService; import lombok.extern.slf4j.Slf4j; import org.activiti.engine.RuntimeService; +import org.activiti.engine.TaskService; import org.activiti.engine.runtime.ProcessInstance; +import org.activiti.engine.task.Task; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -64,7 +66,8 @@ public class ProcessEsChangeServiceImpl extends ServiceImpl flowUser = changeData.getFlowUser(); String taskId = commonVO.getTaskId(); + // 获取流程实例ID + String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId); if (StrUtil.isBlank(taskId) && !actFlowCommonService.taskExists(taskId)) { throw new JeroBootException(ResultCommon.TASK_NOT_EXISTS); } - String processInstanceId = actFlowCommonService.getProcessInstanceIdByTaskId(taskId); + // 获取流程实例对象 + ProcessInstance processInstance = runtimeService.createProcessInstanceQuery() + .processInstanceId(processInstanceId).singleResult(); + // 获取流程定义ID + String processDefinitionId = processInstance.getProcessDefinitionId(); + ProcessEsChange data = changeData.getData(); + if (data != null) { + updateById(data); + // 根据流程实例id更新流程总表 + String prcName = commonVO.getPrcName(); + String prcMes = commonVO.getPrcMes(); + Date dueTime = commonVO.getDueTime(); + Integer prcType = ProcessTypeEnum.ES_CHANGE.getValue(); + actFlowCommonService.updateProcessAll(processInstanceId, userId, prcName, prcMes, prcType, dueTime); + } + if (flowUser != null) { + Map variables = setVariables(flowUser); + Task task = taskService.createTaskQuery().taskId(taskId).singleResult(); + // 获取执行id + String executionId = task.getExecutionId(); + // 设置流程变量 + runtimeService.setVariables(executionId, variables); + processNodeLinkService.saveNodeUserLink(processDefinitionId, processInstanceId, this.getUserMap(flowUser)); + } // 设置流程变量 runtimeService.setVariable(processInstanceId, "pass", pass); // 更新审批表为完成,填充数据