fix: 存在子流程情况下的取消逻辑优化

This commit is contained in:
Lesan
2025-03-25 10:37:38 +08:00
parent e14716a307
commit b471dc55c3
2 changed files with 5 additions and 5 deletions

View File

@@ -853,10 +853,7 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
BpmProcessInstanceStatusEnum.CANCEL.getStatus());
runtimeService.setVariable(id, BpmnVariableConstants.PROCESS_INSTANCE_VARIABLE_REASON, reason);
// 2. 结束流程
taskService.moveTaskToEnd(id, reason);
// 3. 取消所有子流程
// 2. 取消所有子流程
List<ProcessInstance> subProcessInstances = runtimeService.createProcessInstanceQuery()
.superProcessInstanceId(id)
.list();
@@ -864,6 +861,9 @@ public class BpmProcessInstanceServiceImpl implements BpmProcessInstanceService
updateProcessInstanceCancel(processInstance.getProcessInstanceId(),
BpmReasonEnum.CANCEL_CHILD_PROCESS_INSTANCE_BY_MAIN_PROCESS.getReason());
});
// 3. 结束流程
taskService.moveTaskToEnd(id, reason);
}
@Override