diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java index a0713413e..ef7cbf2cc 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnProcessTaskServiceImpl.java @@ -455,7 +455,7 @@ public class BpmnProcessTaskServiceImpl implements BpmnProcessTaskService { task.setProcessInstanceId(parentTask.getProcessInstanceId()); task.setTaskDefinitionKey(parentTask.getTaskDefinitionKey()); task.setTaskDefinitionId(parentTask.getTaskDefinitionId()); - // task.setExecutionId(idGenerator.getNextId()); + task.setExecutionId(parentTask.getExecutionId()); task.setPriority(parentTask.getPriority()); task.setCreateTime(new Date()); log.info("流程加签父任务:{},正在创建加签子任务:{},", parentTaskId, JSONUtil.toJsonStr(Lists.newArrayList(task))); @@ -484,11 +484,11 @@ public class BpmnProcessTaskServiceImpl implements BpmnProcessTaskService { taskService.addComment(dto.getTaskId(), instance.getId(), COMMENT_TYPE_ADVICE, dto.getAdvice()); Authentication.setAuthenticatedUserId(null); } - runtimeService.setVariable(task.getExecutionId(), TASK_COMPLETE_OPERATION_TYPE + task.getId(), REJECTED); + runtimeService.setVariable(task.getProcessInstanceId(), TASK_COMPLETE_OPERATION_TYPE + task.getId(), REJECTED); saveAttachment(dto.getAttachmentList(), instance.getId(), task.getId()); - // 多实例 + // 多实例 TODO add by 2023/12/10 这里的判断现在来看有点多余, 空了再细想 Activity activity; - if (isMultiInstance(activity = getActivity((TaskEntity) task))) { + if (isMultiInstance(activity = getActivity((TaskEntity) task)) && StringUtils.hasLength(task.getExecutionId())) { Integer currentNumberOfInstances = (Integer) runtimeService.getVariable(task.getExecutionId(), NUMBER_OF_INSTANCES); // 不能与 deleteMultiInstanceExecution 换执行顺序