fix 修复 撤销终止等操作 都变成退回的问题

This commit is contained in:
疯狂的狮子Li 2025-08-05 11:55:15 +08:00
parent 87ab6e1744
commit 4672d7de4d

View File

@ -125,14 +125,17 @@ public class WorkflowGlobalListener implements GlobalListener {
if (StringUtils.isNotBlank(status)) { if (StringUtils.isNotBlank(status)) {
flowProcessEventHandler.processHandler(definition.getFlowCode(), instance, status, params, false); flowProcessEventHandler.processHandler(definition.getFlowCode(), instance, status, params, false);
} }
if (task != null && CollUtil.isNotEmpty(nextTasks) && nextTasks.size() == 1 && flwCommonService.applyNodeCode(definition.getId()).equals(nextTasks.get(0).getNodeCode())) { if (!BusinessStatusEnum.initialState(instance.getFlowStatus())) {
//如果为画线指定驳回 线条指定为驳回 驳回得节点为申请人节点 则修改流程状态为退回 if (task != null && CollUtil.isNotEmpty(nextTasks) && nextTasks.size() == 1
&& flwCommonService.applyNodeCode(definition.getId()).equals(nextTasks.get(0).getNodeCode())) {
// 如果为画线指定驳回 线条指定为驳回 驳回得节点为申请人节点 则修改流程状态为退回
flowProcessEventHandler.processHandler(definition.getFlowCode(), instance, BusinessStatusEnum.BACK.getStatus(), params, false); flowProcessEventHandler.processHandler(definition.getFlowCode(), instance, BusinessStatusEnum.BACK.getStatus(), params, false);
//修改流程实例状态 // 修改流程实例状态
instance.setFlowStatus(BusinessStatusEnum.BACK.getStatus()); instance.setFlowStatus(BusinessStatusEnum.BACK.getStatus());
insService.updateById(instance); insService.updateById(instance);
} }
} }
}
//发布任务事件 //发布任务事件
if (CollUtil.isNotEmpty(nextTasks)) { if (CollUtil.isNotEmpty(nextTasks)) {
for (Task nextTask : nextTasks) { for (Task nextTask : nextTasks) {