From 3f54776095694d4caee6407d3e3618111056413a Mon Sep 17 00:00:00 2001 From: "@jyuhsin" <729757837@qq.com> Date: Thu, 29 Jan 2026 17:18:26 +0800 Subject: [PATCH] commit --- .../engine/handlers/impl/CountersignHandler.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 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 2fd8911..c452a0e 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 @@ -81,16 +81,20 @@ 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 (!isMerged) { + + if(StrUtil.isNotBlank(countersignCompletionCondition) && finished) { + execution.getEngine().processTaskService().rejectTask(execution.getProcessModel(), execution.getProcessTask()); + } else { + isMerged = finished; + } + + if (!isMerged) { // 未通过,更新已完成实例数量 Dict addVariable = Dict.create(); addVariable.put(prefix + FlowConst.NR_OF_COMPLETED_INSTANCES, execution.getArgs().get(prefix + FlowConst.NR_OF_COMPLETED_INSTANCES)); 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) { // 获取所有会签参数键值