From 7f64a2ad1ca25793fc4a685d451fa5df36d3a4be Mon Sep 17 00:00:00 2001 From: = <=> Date: Thu, 29 Jan 2026 17:35:56 +0800 Subject: [PATCH] commit --- .../flow/engine/handlers/impl/CountersignHandler.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/budwk/app/flow/engine/handlers/impl/CountersignHandler.java b/src/main/java/com/budwk/app/flow/engine/handlers/impl/CountersignHandler.java index de6c981..8da9555 100644 --- a/src/main/java/com/budwk/app/flow/engine/handlers/impl/CountersignHandler.java +++ b/src/main/java/com/budwk/app/flow/engine/handlers/impl/CountersignHandler.java @@ -85,6 +85,13 @@ public class CountersignHandler implements IHandler { if (!isMerged && CountersignTypeEnum.PARALLEL.toString().equalsIgnoreCase(countersignType)) { // 是否所有会签任务已完成 boolean finished = execution.getEngine().processTaskService().getDoingTaskList(execution.getProcessInstanceId(), new String[]{taskModel.getName()}).size() == 0; + + if(StrUtil.isNotBlank(countersignCompletionCondition) && finished) { + execution.getEngine().processTaskService().rejectTask(execution.getProcessModel(), execution.getProcessTask()); + } else { + isMerged = finished; + } + if (!isMerged) { // 未通过,更新已完成实例数量 Dict addVariable = Dict.create(); @@ -92,9 +99,6 @@ public class CountersignHandler implements IHandler { addVariable.put(prefix + FlowConst.NR_OF_COMPLETED_AGREE_INSTANCES, execution.getArgs().get(prefix + FlowConst.NR_OF_COMPLETED_AGREE_INSTANCES)); execution.getEngine().processInstanceService().addVariable(execution.getProcessInstanceId(), addVariable); } - if(finished) { - execution.getEngine().processTaskService().rejectTask(execution.getProcessModel(), execution.getProcessTask()); - } } if (isMerged) { // 获取所有会签参数键值