From fbe3bfd836761981a6df1f2d042fe362a9bf813b Mon Sep 17 00:00:00 2001 From: wangli <274027703@qq.com> Date: Fri, 28 Nov 2025 15:41:55 +0800 Subject: [PATCH] =?UTF-8?q?feat(REQ-5865)=20-=20=E6=B5=8B=E8=AF=95=20trigg?= =?UTF-8?q?er=20=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cmd/CustomActivityTriggerAsyncCmd.java | 33 ------------ .../engine/cmd/CustomActivityTriggerCmd.java | 52 ------------------- 2 files changed, 85 deletions(-) diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerAsyncCmd.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerAsyncCmd.java index 98ffe6110..bbb35888a 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerAsyncCmd.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerAsyncCmd.java @@ -46,39 +46,6 @@ public class CustomActivityTriggerAsyncCmd extends AbstractCommand imple @Override public String execute(CommandContext commandContext) { -// ProcessEngineConfigurationImpl processEngineConfiguration = -// CommandContextUtil.getProcessEngineConfiguration(commandContext); -// RuntimeService runtimeService = processEngineConfiguration.getRuntimeService(); -// List list = runtimeService.createExecutionQuery().executionId(dto.getTriggerId()).list(); -// log.info("execution list size: {}, executionId: {}, id: {}", list.size(), dto.getTriggerId(), org.springframework.util.StringUtils.collectionToCommaDelimitedString(list.stream().map(Execution::getId).collect(Collectors.toSet()))); -// -// if (list.size() == 1) { -// HistoricProcessInstance instance = processEngineConfiguration.getHistoryService().createHistoricProcessInstanceQuery().processInstanceId(list.get(0).getProcessInstanceId()).singleResult(); -// log.info("instance business status : {}", Objects.nonNull(instance) ? instance.getBusinessStatus() : "未找到实例"); -// } -// -// List tasks = processEngineConfiguration.getTaskService().createTaskQuery() -// .executionId(dto.getTriggerId()).list(); -// if (CollectionUtils.isEmpty(tasks)) { -// log.info("未通过 triggerId 找到任务集合,无法继续触发,executionId: {}", dto.getTriggerId()); -// throw new WorkflowEngineException(ACTIVITY_TRIGGER_NOT_EXISTS, dto.getTriggerId()); -// } -// if (org.springframework.util.StringUtils.hasText(dto.getActivityId())) { -// tasks = tasks.stream() -// .filter(task -> Objects.equals(task.getTaskDefinitionKey(), dto.getActivityId())) -// .collect(Collectors.toList()); -// } -// -// TaskEntity task = (TaskEntity) findLatestByCreateTime(tasks).orElse(null); -// if (Objects.isNull(task)) { -// log.info("未找到对应的任务,无法继续触发,executionId: {}, activityId: {}", dto.getTriggerId(), dto.getActivityId()); -// throw new WorkflowEngineException(ACTIVITY_TRIGGER_NOT_EXISTS, dto.getTriggerId()); -// } -// if (!validateActivityConfig((task))) { -// log.info("业务节点唤醒时,发现节点已经修改配置,无法继续唤醒,processInstanceId:{}, taskDefinitionKey={}", task.getProcessInstanceId(), task.getTaskDefinitionKey()); -// return null; -// } - ProcessEngineConfigurationImpl processEngineConfiguration = CommandContextUtil.getProcessEngineConfiguration(commandContext); TaskQuery taskQuery = processEngineConfiguration.getTaskService().createTaskQuery() diff --git a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerCmd.java b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerCmd.java index fa21734df..d22f4769d 100644 --- a/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerCmd.java +++ b/workflow-engine-core/src/main/java/cn/axzo/workflow/core/engine/cmd/CustomActivityTriggerCmd.java @@ -12,7 +12,6 @@ import org.flowable.engine.RuntimeService; import org.flowable.engine.impl.cfg.ProcessEngineConfigurationImpl; import org.flowable.engine.impl.util.CommandContextUtil; import org.flowable.engine.impl.util.ProcessDefinitionUtil; -import org.flowable.task.api.Task; import org.flowable.task.api.TaskQuery; import org.flowable.task.service.impl.persistence.entity.TaskEntity; import org.slf4j.Logger; @@ -20,10 +19,7 @@ import org.slf4j.LoggerFactory; import org.springframework.util.StringUtils; import java.io.Serializable; -import java.util.Comparator; -import java.util.List; import java.util.Objects; -import java.util.Optional; import static cn.axzo.workflow.common.code.BpmnTaskRespCode.ACTIVITY_TRIGGER_NOT_EXISTS; import static cn.axzo.workflow.common.constant.BpmnConstants.COMMENT_TYPE_OPERATION_DESC; @@ -52,44 +48,6 @@ public class CustomActivityTriggerCmd extends AbstractCommand implements S @Override public Void execute(CommandContext commandContext) { -// ProcessEngineConfigurationImpl processEngineConfiguration = -// CommandContextUtil.getProcessEngineConfiguration(commandContext); -// RuntimeService runtimeService = processEngineConfiguration.getRuntimeService(); -// List list = runtimeService.createExecutionQuery().executionId(dto.getTriggerId()).list(); -// log.info("execution list size: {}, executionId: {}, id: {}", list.size(), dto.getTriggerId(), org.springframework.util.StringUtils.collectionToCommaDelimitedString(list.stream().map(Execution::getId).collect(Collectors.toSet()))); -// -// if (list.size() == 1) { -// HistoricProcessInstance instance = processEngineConfiguration.getHistoryService().createHistoricProcessInstanceQuery().processInstanceId(list.get(0).getProcessInstanceId()).singleResult(); -// log.info("instance business status : {}", Objects.nonNull(instance) ? instance.getBusinessStatus() : "未找到实例"); -// } -// -// List tasks = processEngineConfiguration.getTaskService().createTaskQuery() -// .executionId(dto.getTriggerId()).list(); -// if (CollectionUtils.isEmpty(tasks)) { -// log.info("未通过 triggerId 找到任务集合,无法继续触发,executionId: {}", dto.getTriggerId()); -// throw new WorkflowEngineException(ACTIVITY_TRIGGER_NOT_EXISTS, dto.getTriggerId()); -// } -// if (StringUtils.hasText(dto.getActivityId())) { -// tasks = tasks.stream() -// .filter(task -> Objects.equals(task.getTaskDefinitionKey(), dto.getActivityId())) -// .collect(Collectors.toList()); -// } -// -// TaskEntity task = (TaskEntity) findLatestByCreateTime(tasks).orElse(null); -// if (Objects.isNull(task)) { -// log.info("未找到对应的任务,无法继续触发,executionId: {}, activityId: {}", dto.getTriggerId(), dto.getActivityId()); -// throw new WorkflowEngineException(ACTIVITY_TRIGGER_NOT_EXISTS, dto.getTriggerId()); -// } -// if (!validateActivityConfig((task))) { -// log.info("业务节点唤醒时,发现节点已经修改配置,无法继续唤醒,processInstanceId:{}, taskDefinitionKey={}", task.getProcessInstanceId(), task.getTaskDefinitionKey()); -// return null; -// } -// -// -// addComment(commandContext, task, COMMENT_TYPE_OPERATION_DESC, "已同意"); -// runtimeService.trigger(dto.getTriggerId()); -// return null; - ProcessEngineConfigurationImpl processEngineConfiguration = CommandContextUtil.getProcessEngineConfiguration(commandContext); @@ -114,16 +72,6 @@ public class CustomActivityTriggerCmd extends AbstractCommand implements S return null; } - public static Optional findLatestByCreateTime(List tasks) { - if (tasks == null || tasks.isEmpty()) { - return Optional.empty(); - } - return tasks.stream() - .filter(Objects::nonNull) - .filter(t -> t.getCreateTime() != null) - .max(Comparator.comparing(Task::getCreateTime)); - } - public static boolean validateActivityConfig(TaskEntity task) { BpmnModel bpmnModel = ProcessDefinitionUtil.getBpmnModel(task.getProcessDefinitionId()); FlowElement flowElement = bpmnModel.getFlowElement(task.getTaskDefinitionKey());