diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineExecutionStartListener.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineExecutionStartListener.java index 058c03808..3c8f9a1cc 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineExecutionStartListener.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineExecutionStartListener.java @@ -98,6 +98,7 @@ public class EngineExecutionStartListener implements ExecutionListener { && nodeType.isPresent() && (Objects.equals(NODE_TASK, nodeType.get()) || Objects.equals(NODE_BUSINESS, nodeType.get()))) { getApprovalMethod(userTask).ifPresent(method -> { + List assigneeIdList = new ArrayList<>(); switch (method) { case autoPassed: case autoRejection: @@ -136,17 +137,16 @@ public class EngineExecutionStartListener implements ExecutionListener { // 审批候选人为空时的兜底 emptyAssigneeHandle(assigners, userTask, execution); - List assigneeIdList = new ArrayList<>(); for (BpmnTaskDelegateAssigner user : assigners) { assigneeIdList.add(user.buildAssigneeId()); } - // UserTask 多实例, 该变量用于引擎 - execution.setVariable(assigneeListVariableName, assigneeIdList); execution.setVariable(INTERNAL_ACTIVITY_RELATION_ASSIGNEE_LIST_INFO_SNAPSHOT + currentActivityId, assigners); break; } + // UserTask 多实例, 该变量用于引擎 + execution.setVariable(assigneeListVariableName, assigneeIdList); }); } } else {