diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineActivityEventListener.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineActivityEventListener.java index e82230da1..cf26d6369 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineActivityEventListener.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/listener/EngineActivityEventListener.java @@ -8,6 +8,7 @@ import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType; import org.flowable.engine.delegate.event.AbstractFlowableEngineEventListener; import org.flowable.engine.delegate.event.FlowableActivityCancelledEvent; import org.flowable.engine.delegate.event.FlowableActivityEvent; +import org.flowable.engine.delegate.event.FlowableMultiInstanceActivityCompletedEvent; import org.springframework.beans.factory.ObjectProvider; import org.springframework.stereotype.Component; @@ -19,6 +20,7 @@ import java.util.Set; import static org.flowable.common.engine.api.delegate.event.FlowableEngineEventType.ACTIVITY_CANCELLED; import static org.flowable.common.engine.api.delegate.event.FlowableEngineEventType.ACTIVITY_COMPLETED; import static org.flowable.common.engine.api.delegate.event.FlowableEngineEventType.ACTIVITY_STARTED; +import static org.flowable.common.engine.api.delegate.event.FlowableEngineEventType.MULTI_INSTANCE_ACTIVITY_COMPLETED_WITH_CONDITION; /** * 活动节点完成事件 @@ -37,6 +39,7 @@ public class EngineActivityEventListener extends AbstractFlowableEngineEventList ImmutableSet.builder() .add(ACTIVITY_STARTED) .add(ACTIVITY_COMPLETED) + .add(MULTI_INSTANCE_ACTIVITY_COMPLETED_WITH_CONDITION) .add(ACTIVITY_CANCELLED) .build(); @@ -61,6 +64,12 @@ public class EngineActivityEventListener extends AbstractFlowableEngineEventList getOrderedListeners().forEach(i -> i.onCompleted(event)); } + @Override + protected void multiInstanceActivityCompletedWithCondition(FlowableMultiInstanceActivityCompletedEvent event) { + log.info("activityCompleted: activityId: {} activityName: {}", event.getActivityId(), event.getActivityName()); + getOrderedListeners().forEach(i -> i.onCompleted(event)); + } + @Override protected void activityCancelled(FlowableActivityCancelledEvent event) { log.info("activityCancelled: activityId: {} activityName: {}", event.getActivityId(), event.getActivityName());