From 52c77f38893e50e2ae1c4cf31bbc71b43a0eed07 Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Thu, 21 Aug 2025 16:43:08 +0800 Subject: [PATCH] =?UTF-8?q?feat(REQ-4418)=20-=20=E5=85=BC=E5=AE=B9?= =?UTF-8?q?=E5=A4=84=E7=90=86=E4=B8=8A=E8=8A=82=E7=82=B9=E5=AE=A1=E6=89=B9?= =?UTF-8?q?=E4=BA=BA=E5=8F=AF=E8=83=BD=E4=B8=BA=E7=A9=BA=E7=9A=84=E6=83=85?= =?UTF-8?q?=E5=86=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../delegate/BasedIdentityV2TaskAssigneeSelector.java | 3 +++ .../delegate/BasedPositionV2TaskAssigneeSelector.java | 4 +++- .../controller/delegate/BasedRoleV2TaskAssigneeSelector.java | 3 +++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedIdentityV2TaskAssigneeSelector.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedIdentityV2TaskAssigneeSelector.java index 8523a35cd..56ce74447 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedIdentityV2TaskAssigneeSelector.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedIdentityV2TaskAssigneeSelector.java @@ -106,6 +106,9 @@ public class BasedIdentityV2TaskAssigneeSelector extends AbstractBpmnTaskAssigne case pre_node_approver: log.info("executing role v2 with pre_node_approver"); BpmnTaskDelegateAssigner lastOperationApprover = execution.getVariable(CLOSE_PROCESS_ASSIGNER, BpmnTaskDelegateAssigner.class); + if (Objects.isNull(lastOperationApprover)) { + return Collections.emptyList(); + } v2ReqBuilder.scope(FlowTaskAssignerScopeDTO.builder() .nodeId(lastOperationApprover.parseNodeId()) .upLevel(getApproverSpecifyRangeOrgLimit(flowElement).orElse(SignApproverOrgLimitEnum.UNKNOWN).getCode()) diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedPositionV2TaskAssigneeSelector.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedPositionV2TaskAssigneeSelector.java index f6b1e2f17..4c3a9f846 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedPositionV2TaskAssigneeSelector.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedPositionV2TaskAssigneeSelector.java @@ -75,7 +75,6 @@ public class BasedPositionV2TaskAssigneeSelector extends AbstractBpmnTaskAssigne BpmnTaskDelegateAssigner initiator = BpmnTaskDelegateAssigner.toObjectCompatible(execution.getVariables().get(INTERNAL_INITIATOR)); - ; FlowTaskAssignerV2Req.FlowTaskAssignerV2ReqBuilder v2ReqBuilder = FlowTaskAssignerV2Req.builder() .scene(FlowTaskAssignerQuerySceneEnum.BY_JOB) .jobCodes(getApproverSpecifyValue(flowElement)) @@ -128,6 +127,9 @@ public class BasedPositionV2TaskAssigneeSelector extends AbstractBpmnTaskAssigne log.info("executing position v2 with pre_node_approver"); Optional approverSpecifyRangeUnit4PreNodeApprover = getApproverSpecifyRangeUnit(flowElement); BpmnTaskDelegateAssigner lastOperationApprover = execution.getVariable(CLOSE_PROCESS_ASSIGNER, BpmnTaskDelegateAssigner.class); + if (Objects.isNull(lastOperationApprover)) { + return Collections.emptyList(); + } v2ReqBuilder.scope(FlowTaskAssignerScopeDTO.builder() .nodeId(lastOperationApprover.parseNodeId()) .upLevel(getApproverSpecifyRangeOrgLimit(flowElement).orElse(SignApproverOrgLimitEnum.UNKNOWN).getCode()) diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedRoleV2TaskAssigneeSelector.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedRoleV2TaskAssigneeSelector.java index 454c0eee7..7f184e571 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedRoleV2TaskAssigneeSelector.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/delegate/BasedRoleV2TaskAssigneeSelector.java @@ -126,6 +126,9 @@ public class BasedRoleV2TaskAssigneeSelector extends AbstractBpmnTaskAssigneeSel log.info("executing role v2 with pre_node_approver"); Optional approverSpecifyRangeUnit4PreNodeApprover = getApproverSpecifyRangeUnit(flowElement); BpmnTaskDelegateAssigner lastOperationApprover = execution.getVariable(CLOSE_PROCESS_ASSIGNER, BpmnTaskDelegateAssigner.class); + if (Objects.isNull(lastOperationApprover)) { + return Collections.emptyList(); + } v2ReqBuilder.scope(FlowTaskAssignerScopeDTO.builder() .nodeId(lastOperationApprover.parseNodeId()) .upLevel(getApproverSpecifyRangeOrgLimit(flowElement).orElse(SignApproverOrgLimitEnum.UNKNOWN).getCode())