diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnTaskServiceImpl.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnTaskServiceImpl.java index d2c3f7195..a4f47ea95 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnTaskServiceImpl.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/service/impl/BpmnTaskServiceImpl.java @@ -404,10 +404,13 @@ public class BpmnTaskServiceImpl implements BpmnTaskService { groupVO.setProcessInstanceId(processInstanceId); groupVO.setTaskDefinitionKey(entry.getKey()); if (CollectionUtils.isEmpty(entry.getValue())) { + // 没有审批人 groupVO.setResult(PROCESSING); } else if (entry.getValue().size() == 1) { + // 单人审批 groupVO.setResult(entry.getValue().get(0).getResult()); } else { + // 多人审批 if (entry.getValue().stream().allMatch(i -> Objects.equals(APPROVED, i.getResult()))) { groupVO.setResult(APPROVED); } else if (entry.getValue().stream().anyMatch(i -> Objects.equals(PROCESSING, i.getResult()))) { diff --git a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/listener/RocketMqBpmProcessEventListener.java b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/listener/RocketMqBpmProcessEventListener.java index e38326645..ad1e79d06 100644 --- a/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/listener/RocketMqBpmProcessEventListener.java +++ b/workflow-engine-server/src/main/java/cn/axzo/workflow/server/controller/listener/RocketMqBpmProcessEventListener.java @@ -53,7 +53,8 @@ public class RocketMqBpmProcessEventListener implements BpmProcessEventListener .setProcessDefinitionId(event.getProcessDefinitionId()) .setProcessDefinitionKey(((ExecutionEntityImpl) event.getEntity()).getProcessDefinitionKey()) .setProcessDefinitionVersion(((ExecutionEntityImpl) event.getEntity()).getProcessDefinitionVersion()) - .setInitiator(((FlowableProcessCancelledEventImpl) event).getExecution().getVariable(INTERNAL_INITIATOR, BpmnTaskDelegateAssigner.class)) + .setInitiator(((ExecutionEntityImpl) event.getEntity()).getVariable(INTERNAL_INITIATOR, + BpmnTaskDelegateAssigner.class)) .setVariables(((ExecutionEntityImpl) event.getEntity()).getVariables()) .setStartTime(((ExecutionEntityImpl) event.getEntity()).getStartTime()) .setTenantId(((ExecutionEntityImpl) event.getEntity()).getTenantId()) @@ -86,7 +87,8 @@ public class RocketMqBpmProcessEventListener implements BpmProcessEventListener .setProcessDefinitionId(((ExecutionEntityImpl) event.getEntity()).getProcessDefinitionId()) .setProcessDefinitionKey(((ExecutionEntityImpl) event.getEntity()).getProcessDefinitionKey()) .setProcessDefinitionVersion(((ExecutionEntityImpl) event.getEntity()).getProcessDefinitionVersion()) - .setInitiator(((FlowableProcessCancelledEventImpl) event).getExecution().getVariable(INTERNAL_INITIATOR, BpmnTaskDelegateAssigner.class)) + .setInitiator(((ExecutionEntityImpl) event.getEntity()).getVariable(INTERNAL_INITIATOR, + BpmnTaskDelegateAssigner.class)) .setVariables(((ExecutionEntityImpl) event.getEntity()).getVariables()) .setStartTime(((ExecutionEntityImpl) event.getEntity()).getStartTime()) .setTenantId(((ExecutionEntityImpl) event.getEntity()).getTenantId()) @@ -192,8 +194,8 @@ public class RocketMqBpmProcessEventListener implements BpmProcessEventListener .setProcessDefinitionId(event.getProcessDefinitionId()) .setProcessDefinitionKey(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getProcessDefinitionKey()) .setProcessDefinitionVersion(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getProcessDefinitionVersion()) - .setVariables(((FlowableProcessCancelledEventImpl) event).getExecution().getVariables()) .setInitiator(((FlowableProcessCancelledEventImpl) event).getExecution().getVariable(INTERNAL_INITIATOR, BpmnTaskDelegateAssigner.class)) + .setVariables(((FlowableProcessCancelledEventImpl) event).getExecution().getVariables()) .setStartTime(((ExecutionEntityImpl) ((FlowableProcessCancelledEventImpl) event).getExecution()).getStartTime()) .setTenantId(((FlowableProcessCancelledEventImpl) event).getExecution().getTenantId()) .setBusinessKey(((FlowableProcessCancelledEventImpl) event).getExecution().getProcessInstanceBusinessKey())