From 51aa8b69947cc9ca644e37b380090644ddd2d51c Mon Sep 17 00:00:00 2001 From: dengqichen Date: Thu, 26 Dec 2024 10:45:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=A3=B0=E9=81=93=E6=92=92=E6=97=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../backend/workflow/annotation/BpmnNode.java | 37 ---------- .../NodeTypeLocalVariablesBind.java | 17 ----- .../api/WorkflowDefinitionApiController.java | 7 +- .../api/WorkflowInstanceApiController.java | 22 +----- .../WorkflowNodeDefinitionApiController.java | 3 +- .../WorkflowNodeInstanceApiController.java | 4 +- .../workflow/config/FlowableConfig.java | 2 +- .../WorkflowNodeInstanceConverter.java | 2 +- .../workflow/delegate/ShellNodeDelegate.java | 2 +- .../{ => dto}/event/ShellLogEvent.java | 2 +- ...rminationProcessInstanceListenerEvent.java | 2 +- .../WorkflowInstanceStatusChangeEvent.java | 2 +- ...WorkflowNodeInstanceStatusChangeEvent.java | 2 +- .../query/WorkflowDefinitionQuery.java | 2 +- .../WorkflowHistoricalInstancesQuery.java | 2 +- .../query/WorkflowInstanceQuery.java | 2 +- .../query/WorkflowNodeDefinitionQuery.java | 2 +- .../query/WorkflowNodeInstanceQuery.java | 2 +- .../workflow/entity/WorkflowDefinition.java | 2 +- .../converter}/WorkflowGraphType.java | 2 +- .../event/FlowableEventDispatcher.java | 9 +-- .../event/handler/ActivityEventHandler.java | 4 +- .../event/handler/IFlowableEventHandler.java | 2 +- .../event/handler/JobEventHandler.java | 19 +---- .../event/handler/ProcessEventHandler.java | 8 +- .../TerminationProcessInstanceHandler.java} | 19 ++--- .../WorkflowInstanceStatusChangeListener.java | 4 +- ...kflowNodeInstanceStatusChangeListener.java | 4 +- .../handler/DeadLetterJobEventHandler.java | 74 ------------------- .../execution/GatewayExecutionListener.java | 4 +- .../execution/GlobalExecutionListener.java | 7 +- .../service/IWorkflowInstanceService.java | 5 +- .../service/IWorkflowNodeInstanceService.java | 2 +- .../impl/WorkflowInstanceServiceImpl.java | 4 +- .../impl/WorkflowNodeInstanceServiceImpl.java | 5 +- .../db/migration/V1.0.1__init_data.sql | 8 +- 36 files changed, 57 insertions(+), 239 deletions(-) delete mode 100644 backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/BpmnNode.java delete mode 100644 backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/NodeTypeLocalVariablesBind.java rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/event/ShellLogEvent.java (85%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/event/TerminationProcessInstanceListenerEvent.java (80%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/event/WorkflowInstanceStatusChangeEvent.java (87%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/event/WorkflowNodeInstanceStatusChangeEvent.java (91%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/query/WorkflowDefinitionQuery.java (93%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/query/WorkflowHistoricalInstancesQuery.java (90%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/query/WorkflowInstanceQuery.java (82%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/query/WorkflowNodeDefinitionQuery.java (94%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{ => dto}/query/WorkflowNodeInstanceQuery.java (80%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{hibernate => entity/converter}/WorkflowGraphType.java (98%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{listener => }/event/FlowableEventDispatcher.java (84%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{listener => }/event/handler/ActivityEventHandler.java (94%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{listener => }/event/handler/IFlowableEventHandler.java (86%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{listener => }/event/handler/JobEventHandler.java (85%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{listener => }/event/handler/ProcessEventHandler.java (91%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/{listener/TerminationProcessInstanceListener.java => event/handler/TerminationProcessInstanceHandler.java} (75%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/{ => business}/WorkflowInstanceStatusChangeListener.java (85%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/{ => business}/WorkflowNodeInstanceStatusChangeListener.java (85%) delete mode 100644 backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/DeadLetterJobEventHandler.java rename backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/{ => flowable}/execution/GatewayExecutionListener.java (91%) rename backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/{ => flowable}/execution/GlobalExecutionListener.java (93%) diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/BpmnNode.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/BpmnNode.java deleted file mode 100644 index 11b654e7..00000000 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/BpmnNode.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.qqchen.deploy.backend.workflow.annotation; - -import java.lang.annotation.*; - -/** - * BPMN节点注解 - */ -@Target({ElementType.TYPE}) -@Retention(RetentionPolicy.RUNTIME) -@Documented -public @interface BpmnNode { - - /** - * 节点类型 - */ - String type(); - - /** - * 节点名称 - */ - String name() default ""; - - /** - * 是否异步执行 - */ - boolean async() default false; - - /** - * 必需的字段 - */ - String[] requiredFields() default {}; - - /** - * 委托表达式 - */ - String delegateExpression() default ""; -} \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/NodeTypeLocalVariablesBind.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/NodeTypeLocalVariablesBind.java deleted file mode 100644 index 9c01fe52..00000000 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/annotation/NodeTypeLocalVariablesBind.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.qqchen.deploy.backend.workflow.annotation; - - -import com.qqchen.deploy.backend.workflow.enums.NodeTypeEnums; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -@Target(ElementType.TYPE) -@Retention(RetentionPolicy.RUNTIME) -public @interface NodeTypeLocalVariablesBind { - - - NodeTypeEnums type(); -} diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowDefinitionApiController.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowDefinitionApiController.java index 2febe3f0..0e97696c 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowDefinitionApiController.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowDefinitionApiController.java @@ -7,11 +7,8 @@ import com.qqchen.deploy.backend.workflow.dto.WorkflowCategoryDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowDefinitionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowExecutionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceDTO; -import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceCreateDTO; import com.qqchen.deploy.backend.workflow.entity.WorkflowDefinition; -import com.qqchen.deploy.backend.workflow.enums.WorkflowCategoryEnum; -import com.qqchen.deploy.backend.workflow.enums.WorkflowInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.query.WorkflowDefinitionQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; import com.qqchen.deploy.backend.workflow.service.IWorkflowDefinitionService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; @@ -31,8 +28,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; - /** * 工作流定义控制器 */ diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowInstanceApiController.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowInstanceApiController.java index 1e92c87a..ffe0808b 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowInstanceApiController.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowInstanceApiController.java @@ -2,44 +2,28 @@ package com.qqchen.deploy.backend.workflow.api; import com.qqchen.deploy.backend.framework.api.Response; import com.qqchen.deploy.backend.framework.controller.BaseController; -import com.qqchen.deploy.backend.framework.enums.ResponseCode; -import com.qqchen.deploy.backend.workflow.dto.WorkflowDefinitionDTO; -import com.qqchen.deploy.backend.workflow.dto.WorkflowExecutionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowHistoricalInstancesDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceStartRequest; import com.qqchen.deploy.backend.workflow.dto.WorkflowTemplateWithInstancesDTO; -import com.qqchen.deploy.backend.workflow.entity.WorkflowDefinition; import com.qqchen.deploy.backend.workflow.entity.WorkflowInstance; -import com.qqchen.deploy.backend.workflow.query.WorkflowDefinitionQuery; -import com.qqchen.deploy.backend.workflow.query.WorkflowHistoricalInstancesQuery; -import com.qqchen.deploy.backend.workflow.query.WorkflowInstanceQuery; -import com.qqchen.deploy.backend.workflow.service.IWorkflowDefinitionService; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowHistoricalInstancesQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowInstanceQuery; import com.qqchen.deploy.backend.workflow.service.IWorkflowInstanceService; import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.Parameter; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; -import org.flowable.engine.HistoryService; -import org.flowable.engine.RuntimeService; -import org.flowable.engine.history.HistoricActivityInstance; -import org.flowable.engine.history.HistoricProcessInstance; -import org.flowable.variable.api.history.HistoricVariableInstance; import org.springframework.data.domain.Page; -import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * 工作流定义控制器 diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeDefinitionApiController.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeDefinitionApiController.java index 3f3d0183..bedd58e4 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeDefinitionApiController.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeDefinitionApiController.java @@ -2,12 +2,11 @@ package com.qqchen.deploy.backend.workflow.api; import com.qqchen.deploy.backend.framework.api.Response; import com.qqchen.deploy.backend.framework.controller.BaseController; -import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeDefinitionCreateDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeDefinitionDTO; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeTypeDefinedDTO; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeDefinition; import com.qqchen.deploy.backend.workflow.enums.NodeCategoryEnums; -import com.qqchen.deploy.backend.workflow.query.WorkflowNodeDefinitionQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowNodeDefinitionQuery; import com.qqchen.deploy.backend.workflow.service.IWorkflowNodeDefinitionService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeInstanceApiController.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeInstanceApiController.java index 71895ffc..c6675f7c 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeInstanceApiController.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/api/WorkflowNodeInstanceApiController.java @@ -4,8 +4,8 @@ import com.qqchen.deploy.backend.framework.api.Response; import com.qqchen.deploy.backend.framework.controller.BaseController; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeInstanceDTO; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; -import com.qqchen.deploy.backend.workflow.event.ShellLogEvent; -import com.qqchen.deploy.backend.workflow.query.WorkflowNodeInstanceQuery; +import com.qqchen.deploy.backend.workflow.dto.event.ShellLogEvent; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowNodeInstanceQuery; import com.qqchen.deploy.backend.workflow.service.IWorkflowNodeInstanceService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/config/FlowableConfig.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/config/FlowableConfig.java index 21cef66f..1fde49e8 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/config/FlowableConfig.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/config/FlowableConfig.java @@ -1,6 +1,6 @@ package com.qqchen.deploy.backend.workflow.config; -import com.qqchen.deploy.backend.workflow.listener.event.FlowableEventDispatcher; +import com.qqchen.deploy.backend.workflow.event.FlowableEventDispatcher; import jakarta.annotation.Resource; import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType; import org.flowable.spring.SpringProcessEngineConfiguration; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/converter/WorkflowNodeInstanceConverter.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/converter/WorkflowNodeInstanceConverter.java index 6cd4ac7e..f1163e12 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/converter/WorkflowNodeInstanceConverter.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/converter/WorkflowNodeInstanceConverter.java @@ -3,7 +3,7 @@ package com.qqchen.deploy.backend.workflow.converter; import com.qqchen.deploy.backend.framework.converter.BaseConverter; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeInstanceDTO; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; -import com.qqchen.deploy.backend.workflow.event.WorkflowNodeInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import org.mapstruct.Mapper; import org.mapstruct.Mapping; import org.mapstruct.Mappings; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/delegate/ShellNodeDelegate.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/delegate/ShellNodeDelegate.java index 95256fe1..546a2291 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/delegate/ShellNodeDelegate.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/delegate/ShellNodeDelegate.java @@ -4,7 +4,7 @@ import com.qqchen.deploy.backend.workflow.constants.WorkFlowConstants; import com.qqchen.deploy.backend.workflow.dto.definition.node.localVariables.ScriptNodeLocalVariables; import com.qqchen.deploy.backend.workflow.dto.definition.node.panelVariables.ScriptNodePanelVariables; import com.qqchen.deploy.backend.workflow.enums.NodeLogTypeEnums; -import com.qqchen.deploy.backend.workflow.event.ShellLogEvent; +import com.qqchen.deploy.backend.workflow.dto.event.ShellLogEvent; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.flowable.engine.delegate.BpmnError; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/ShellLogEvent.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/ShellLogEvent.java similarity index 85% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/event/ShellLogEvent.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/ShellLogEvent.java index 5f4b72cd..9a11ef71 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/ShellLogEvent.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/ShellLogEvent.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.event; +package com.qqchen.deploy.backend.workflow.dto.event; import com.qqchen.deploy.backend.workflow.enums.NodeLogTypeEnums; import lombok.AllArgsConstructor; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/TerminationProcessInstanceListenerEvent.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/TerminationProcessInstanceListenerEvent.java similarity index 80% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/event/TerminationProcessInstanceListenerEvent.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/TerminationProcessInstanceListenerEvent.java index 4a3df3b4..ce7349f5 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/TerminationProcessInstanceListenerEvent.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/TerminationProcessInstanceListenerEvent.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.event; +package com.qqchen.deploy.backend.workflow.dto.event; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/WorkflowInstanceStatusChangeEvent.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/WorkflowInstanceStatusChangeEvent.java similarity index 87% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/event/WorkflowInstanceStatusChangeEvent.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/WorkflowInstanceStatusChangeEvent.java index 56f4bd4e..e41605bb 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/WorkflowInstanceStatusChangeEvent.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/WorkflowInstanceStatusChangeEvent.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.event; +package com.qqchen.deploy.backend.workflow.dto.event; import com.qqchen.deploy.backend.workflow.enums.WorkflowInstanceStatusEnums; import lombok.Builder; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/WorkflowNodeInstanceStatusChangeEvent.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/WorkflowNodeInstanceStatusChangeEvent.java similarity index 91% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/event/WorkflowNodeInstanceStatusChangeEvent.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/WorkflowNodeInstanceStatusChangeEvent.java index 89d724a1..20f0db33 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/WorkflowNodeInstanceStatusChangeEvent.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/event/WorkflowNodeInstanceStatusChangeEvent.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.event; +package com.qqchen.deploy.backend.workflow.dto.event; import com.qqchen.deploy.backend.workflow.enums.WorkflowInstanceStatusEnums; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowDefinitionQuery.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowDefinitionQuery.java similarity index 93% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowDefinitionQuery.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowDefinitionQuery.java index 3e998a4b..4aca4808 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowDefinitionQuery.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowDefinitionQuery.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.query; +package com.qqchen.deploy.backend.workflow.dto.query; import com.qqchen.deploy.backend.framework.annotation.QueryField; import com.qqchen.deploy.backend.framework.enums.QueryType; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowHistoricalInstancesQuery.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowHistoricalInstancesQuery.java similarity index 90% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowHistoricalInstancesQuery.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowHistoricalInstancesQuery.java index 4e78801f..ce934877 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowHistoricalInstancesQuery.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowHistoricalInstancesQuery.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.query; +package com.qqchen.deploy.backend.workflow.dto.query; import com.qqchen.deploy.backend.framework.annotation.QueryField; import com.qqchen.deploy.backend.framework.enums.QueryType; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowInstanceQuery.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowInstanceQuery.java similarity index 82% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowInstanceQuery.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowInstanceQuery.java index a5102e00..e872b355 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowInstanceQuery.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowInstanceQuery.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.query; +package com.qqchen.deploy.backend.workflow.dto.query; import com.qqchen.deploy.backend.framework.query.BaseQuery; import lombok.Data; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowNodeDefinitionQuery.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowNodeDefinitionQuery.java similarity index 94% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowNodeDefinitionQuery.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowNodeDefinitionQuery.java index 090c1774..ca9eeaab 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowNodeDefinitionQuery.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowNodeDefinitionQuery.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.query; +package com.qqchen.deploy.backend.workflow.dto.query; import com.qqchen.deploy.backend.framework.annotation.QueryField; import com.qqchen.deploy.backend.framework.enums.QueryType; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowNodeInstanceQuery.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowNodeInstanceQuery.java similarity index 80% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowNodeInstanceQuery.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowNodeInstanceQuery.java index 090f7766..7e66ce94 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/query/WorkflowNodeInstanceQuery.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/dto/query/WorkflowNodeInstanceQuery.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.query; +package com.qqchen.deploy.backend.workflow.dto.query; import com.qqchen.deploy.backend.framework.query.BaseQuery; import lombok.Data; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/entity/WorkflowDefinition.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/entity/WorkflowDefinition.java index 83ec81e1..dab3fdcc 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/entity/WorkflowDefinition.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/entity/WorkflowDefinition.java @@ -6,7 +6,7 @@ import com.qqchen.deploy.backend.workflow.dto.definition.workflow.WorkflowDefini import com.qqchen.deploy.backend.workflow.enums.WorkflowCategoryEnum; import com.qqchen.deploy.backend.workflow.enums.WorkflowDefinitionStatusEnums; import com.qqchen.deploy.backend.workflow.enums.WorkflowTriggerTypeEnum; -import com.qqchen.deploy.backend.workflow.hibernate.WorkflowGraphType; +import com.qqchen.deploy.backend.workflow.entity.converter.WorkflowGraphType; import com.qqchen.deploy.backend.framework.domain.Entity; import com.vladmihalcea.hibernate.type.json.JsonType; import jakarta.persistence.Column; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/hibernate/WorkflowGraphType.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/entity/converter/WorkflowGraphType.java similarity index 98% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/hibernate/WorkflowGraphType.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/entity/converter/WorkflowGraphType.java index 5ffe3f1d..15011cbe 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/hibernate/WorkflowGraphType.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/entity/converter/WorkflowGraphType.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.hibernate; +package com.qqchen.deploy.backend.workflow.entity.converter; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationFeature; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/FlowableEventDispatcher.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/FlowableEventDispatcher.java similarity index 84% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/FlowableEventDispatcher.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/event/FlowableEventDispatcher.java index f0c19faa..f8726daf 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/FlowableEventDispatcher.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/FlowableEventDispatcher.java @@ -1,10 +1,9 @@ -package com.qqchen.deploy.backend.workflow.listener.event; +package com.qqchen.deploy.backend.workflow.event; -import com.qqchen.deploy.backend.workflow.listener.event.handler.IFlowableEventHandler; +import com.qqchen.deploy.backend.workflow.event.handler.IFlowableEventHandler; import lombok.extern.slf4j.Slf4j; import org.flowable.common.engine.api.delegate.event.FlowableEvent; import org.flowable.common.engine.api.delegate.event.FlowableEventListener; -import org.flowable.engine.RuntimeService; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; @@ -20,10 +19,6 @@ public class FlowableEventDispatcher implements FlowableEventListener { @Lazy private List eventHandlers; - @Resource - @Lazy - private RuntimeService runtimeService; - @Override public void onEvent(FlowableEvent event) { String eventType = event.getType().name(); diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/ActivityEventHandler.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/ActivityEventHandler.java similarity index 94% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/ActivityEventHandler.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/ActivityEventHandler.java index 8e6d9ca0..82096816 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/ActivityEventHandler.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/ActivityEventHandler.java @@ -1,7 +1,7 @@ -package com.qqchen.deploy.backend.workflow.listener.event.handler; +package com.qqchen.deploy.backend.workflow.event.handler; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.WorkflowNodeInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.flowable.common.engine.api.delegate.event.FlowableEvent; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/IFlowableEventHandler.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/IFlowableEventHandler.java similarity index 86% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/IFlowableEventHandler.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/IFlowableEventHandler.java index 5531a4d1..ae15a111 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/IFlowableEventHandler.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/IFlowableEventHandler.java @@ -1,4 +1,4 @@ -package com.qqchen.deploy.backend.workflow.listener.event.handler; +package com.qqchen.deploy.backend.workflow.event.handler; import org.flowable.common.engine.api.delegate.event.FlowableEvent; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/JobEventHandler.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/JobEventHandler.java similarity index 85% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/JobEventHandler.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/JobEventHandler.java index e73c57d9..1cb50b6a 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/JobEventHandler.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/JobEventHandler.java @@ -1,38 +1,27 @@ -package com.qqchen.deploy.backend.workflow.listener.event.handler; +package com.qqchen.deploy.backend.workflow.event.handler; import cn.hutool.json.JSONUtil; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.TerminationProcessInstanceListenerEvent; +import com.qqchen.deploy.backend.workflow.dto.event.TerminationProcessInstanceListenerEvent; import lombok.extern.slf4j.Slf4j; import org.flowable.common.engine.api.delegate.event.FlowableEngineEntityEvent; import org.flowable.common.engine.api.delegate.event.FlowableEvent; import org.flowable.common.engine.impl.event.FlowableEntityExceptionEventImpl; -import org.flowable.engine.ManagementService; -import org.flowable.engine.RuntimeService; -import org.flowable.engine.runtime.Execution; -import org.flowable.job.api.Job; import org.flowable.job.service.impl.persistence.entity.JobEntityImpl; import org.springframework.context.ApplicationEventPublisher; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; import jakarta.annotation.Resource; -import java.util.List; -import java.util.Map; - @Slf4j @Component public class JobEventHandler implements IFlowableEventHandler { @Resource + @Lazy private ApplicationEventPublisher publisher; - @Resource - private RuntimeService runtimeService; - - @Resource - private ManagementService managementService; - @Override public boolean canHandle(String eventType) { return eventType.startsWith("JOB_EXECUTION_"); diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/ProcessEventHandler.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/ProcessEventHandler.java similarity index 91% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/ProcessEventHandler.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/ProcessEventHandler.java index fca31311..14d02f28 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/ProcessEventHandler.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/ProcessEventHandler.java @@ -1,11 +1,10 @@ -package com.qqchen.deploy.backend.workflow.listener.event.handler; +package com.qqchen.deploy.backend.workflow.event.handler; import cn.hutool.core.date.DateUtil; import com.qqchen.deploy.backend.workflow.enums.WorkflowInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.WorkflowInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowInstanceStatusChangeEvent; import lombok.extern.slf4j.Slf4j; import org.flowable.common.engine.api.delegate.event.FlowableEvent; -import org.flowable.engine.HistoryService; import org.flowable.engine.ProcessEngine; import org.flowable.engine.delegate.event.FlowableProcessEngineEvent; import org.flowable.engine.history.HistoricProcessInstance; @@ -26,9 +25,6 @@ public class ProcessEventHandler implements IFlowableEventHandler { @Lazy private ProcessEngine processEngine; - @Resource - private HistoryService historyService; - @Override public boolean canHandle(String eventType) { return eventType.startsWith("PROCESS_"); diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/TerminationProcessInstanceListener.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/TerminationProcessInstanceHandler.java similarity index 75% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/TerminationProcessInstanceListener.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/TerminationProcessInstanceHandler.java index 57fa7583..36d859b6 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/TerminationProcessInstanceListener.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/event/handler/TerminationProcessInstanceHandler.java @@ -1,21 +1,13 @@ -package com.qqchen.deploy.backend.workflow.listener; +package com.qqchen.deploy.backend.workflow.event.handler; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.TerminationProcessInstanceListenerEvent; +import com.qqchen.deploy.backend.workflow.dto.event.TerminationProcessInstanceListenerEvent; import com.qqchen.deploy.backend.workflow.repository.IWorkflowNodeInstanceRepository; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; -import org.flowable.bpmn.model.BpmnModel; -import org.flowable.bpmn.model.FlowElement; -import org.flowable.bpmn.model.Gateway; -import org.flowable.bpmn.model.ServiceTask; -import org.flowable.engine.ManagementService; -import org.flowable.engine.RepositoryService; import org.flowable.engine.RuntimeService; -import org.flowable.engine.TaskService; -import org.flowable.job.api.Job; -import org.flowable.task.api.Task; +import org.springframework.context.annotation.Lazy; import org.springframework.context.event.EventListener; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Component; @@ -23,14 +15,13 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; -import java.util.Collection; -import java.util.List; @Slf4j @Component -public class TerminationProcessInstanceListener { +public class TerminationProcessInstanceHandler { @Resource + @Lazy private RuntimeService runtimeService; @Resource diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/WorkflowInstanceStatusChangeListener.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/business/WorkflowInstanceStatusChangeListener.java similarity index 85% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/WorkflowInstanceStatusChangeListener.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/business/WorkflowInstanceStatusChangeListener.java index f8b009bf..9aeca8e6 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/WorkflowInstanceStatusChangeListener.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/business/WorkflowInstanceStatusChangeListener.java @@ -1,6 +1,6 @@ -package com.qqchen.deploy.backend.workflow.listener; +package com.qqchen.deploy.backend.workflow.listener.business; -import com.qqchen.deploy.backend.workflow.event.WorkflowInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowInstanceStatusChangeEvent; import com.qqchen.deploy.backend.workflow.service.IWorkflowInstanceService; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/WorkflowNodeInstanceStatusChangeListener.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/business/WorkflowNodeInstanceStatusChangeListener.java similarity index 85% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/WorkflowNodeInstanceStatusChangeListener.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/business/WorkflowNodeInstanceStatusChangeListener.java index 58e2a3d5..a3209bae 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/WorkflowNodeInstanceStatusChangeListener.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/business/WorkflowNodeInstanceStatusChangeListener.java @@ -1,6 +1,6 @@ -package com.qqchen.deploy.backend.workflow.listener; +package com.qqchen.deploy.backend.workflow.listener.business; -import com.qqchen.deploy.backend.workflow.event.WorkflowNodeInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import com.qqchen.deploy.backend.workflow.service.IWorkflowNodeInstanceService; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/DeadLetterJobEventHandler.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/DeadLetterJobEventHandler.java deleted file mode 100644 index c5700125..00000000 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/event/handler/DeadLetterJobEventHandler.java +++ /dev/null @@ -1,74 +0,0 @@ -//package com.qqchen.deploy.backend.workflow.listener.event.handler; -// -//import com.qqchen.deploy.backend.workflow.event.ProcessInstanceDeleteEvent; -//import jakarta.annotation.Resource; -//import lombok.extern.slf4j.Slf4j; -//import org.flowable.common.engine.api.delegate.event.FlowableEngineEventType; -//import org.flowable.common.engine.api.delegate.event.FlowableEntityEvent; -//import org.flowable.common.engine.api.delegate.event.FlowableEvent; -//import org.flowable.engine.ManagementService; -//import org.flowable.engine.RuntimeService; -//import org.flowable.engine.runtime.Execution; -//import org.flowable.job.api.Job; -//import org.springframework.context.ApplicationEventPublisher; -//import org.springframework.stereotype.Component; -//import org.flowable.engine.HistoryService; -// -//@Slf4j -//@Component -//public class DeadLetterJobEventHandler implements IFlowableEventHandler { -// -// @Resource -// private RuntimeService runtimeService; -// -// @Resource -// private ManagementService managementService; -// -// @Resource -// private ApplicationEventPublisher eventPublisher; -// -// @Resource -// private HistoryService historyService; -// -// @Override -// public boolean canHandle(String eventType) { -// return eventType.startsWith("JOB_EXECUTION_FAILURE"); -// } -// -// @Override -// public void handle(FlowableEvent event) { -// if (event instanceof FlowableEntityEvent && event.getType() == FlowableEngineEventType.JOB_EXECUTION_FAILURE) { -// FlowableEntityEvent entityEvent = (FlowableEntityEvent) event; -// Job job = (Job) entityEvent.getEntity(); -// -// // 获取执行ID和当前活动ID -// String executionId = job.getExecutionId(); -// Execution execution = runtimeService.createExecutionQuery() -// .executionId(executionId) -// .singleResult(); -// -// // 从历史服务中获取最后一个活动节点 -// String lastActivityId = historyService.createHistoricActivityInstanceQuery() -// .executionId(executionId) -// .orderByHistoricActivityInstanceEndTime() -// .desc() -// .list() -// .stream() -// .findFirst() -// .map(activity -> activity.getActivityId()) -// .orElse(null); -// -// log.info("Job full details - executionId: {}, elementId: {}, jobHandlerType: {}, jobHandlerConfiguration: {}, currentActivityId: {}, lastActivityId: {}", -// executionId, -// job.getElementId(), -// job.getJobHandlerType(), -// job.getJobHandlerConfiguration(), -// execution != null ? execution.getActivityId() : "null", -// lastActivityId); -// -// String processInstanceId = job.getProcessInstanceId(); -// String errorMessage = job.getExceptionMessage(); -// eventPublisher.publishEvent(new ProcessInstanceDeleteEvent(job.getId(), processInstanceId, errorMessage)); -// } -// } -//} \ No newline at end of file diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/execution/GatewayExecutionListener.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/flowable/execution/GatewayExecutionListener.java similarity index 91% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/execution/GatewayExecutionListener.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/flowable/execution/GatewayExecutionListener.java index 78f881ab..0b641958 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/execution/GatewayExecutionListener.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/flowable/execution/GatewayExecutionListener.java @@ -1,7 +1,7 @@ -package com.qqchen.deploy.backend.workflow.listener.execution; +package com.qqchen.deploy.backend.workflow.listener.flowable.execution; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.WorkflowNodeInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.flowable.bpmn.model.FlowElement; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/execution/GlobalExecutionListener.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/flowable/execution/GlobalExecutionListener.java similarity index 93% rename from backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/execution/GlobalExecutionListener.java rename to backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/flowable/execution/GlobalExecutionListener.java index c7f37645..9a33be58 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/execution/GlobalExecutionListener.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/listener/flowable/execution/GlobalExecutionListener.java @@ -1,20 +1,20 @@ -package com.qqchen.deploy.backend.workflow.listener.execution; +package com.qqchen.deploy.backend.workflow.listener.flowable.execution; import com.qqchen.deploy.backend.workflow.constants.WorkFlowConstants; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.WorkflowNodeInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.flowable.bpmn.model.FlowElement; import org.flowable.engine.delegate.DelegateExecution; import org.flowable.engine.delegate.ExecutionListener; import org.springframework.context.ApplicationEventPublisher; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Component; import jakarta.annotation.Resource; import java.time.LocalDateTime; -import java.util.Map; import java.util.Optional; import static com.qqchen.deploy.backend.workflow.constants.WorkFlowConstants.WORKFLOW_PREVIOUS_NODE_EXECUTION_STATUS_VARIABLE_NAME; @@ -24,6 +24,7 @@ import static com.qqchen.deploy.backend.workflow.constants.WorkFlowConstants.WOR public class GlobalExecutionListener implements ExecutionListener { @Resource + @Lazy private ApplicationEventPublisher eventPublisher; @Override diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java index a8cad3f5..eae62640 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowInstanceService.java @@ -7,13 +7,12 @@ import com.qqchen.deploy.backend.workflow.dto.WorkflowInstanceStartRequest; import com.qqchen.deploy.backend.workflow.dto.WorkflowTemplateWithInstancesDTO; import com.qqchen.deploy.backend.workflow.entity.WorkflowInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.query.WorkflowDefinitionQuery; -import com.qqchen.deploy.backend.workflow.query.WorkflowHistoricalInstancesQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowHistoricalInstancesQuery; import org.flowable.engine.runtime.ProcessInstance; import org.springframework.data.domain.Page; import java.time.LocalDateTime; -import java.util.Date; import java.util.List; import java.util.Map; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java index bde0e24a..1c603eac 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/IWorkflowNodeInstanceService.java @@ -4,7 +4,7 @@ import com.qqchen.deploy.backend.framework.service.IBaseService; import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeInstanceDTO; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.WorkflowNodeInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import java.util.List; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java index 01c753b8..2d90d09e 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowInstanceServiceImpl.java @@ -15,8 +15,8 @@ import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowInstanceStatusEnums; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; import com.qqchen.deploy.backend.workflow.enums.WorkflowDefinitionStatusEnums; -import com.qqchen.deploy.backend.workflow.query.WorkflowDefinitionQuery; -import com.qqchen.deploy.backend.workflow.query.WorkflowHistoricalInstancesQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowDefinitionQuery; +import com.qqchen.deploy.backend.workflow.dto.query.WorkflowHistoricalInstancesQuery; import com.qqchen.deploy.backend.workflow.repository.IWorkflowDefinitionRepository; import com.qqchen.deploy.backend.workflow.repository.IWorkflowInstanceRepository; import com.qqchen.deploy.backend.workflow.repository.IWorkflowNodeInstanceRepository; diff --git a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java index cece0b09..327cfd90 100644 --- a/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java +++ b/backend/src/main/java/com/qqchen/deploy/backend/workflow/service/impl/WorkflowNodeInstanceServiceImpl.java @@ -6,11 +6,9 @@ import com.qqchen.deploy.backend.workflow.dto.WorkflowNodeInstanceDTO; import com.qqchen.deploy.backend.workflow.entity.WorkflowInstance; import com.qqchen.deploy.backend.workflow.entity.WorkflowNodeInstance; import com.qqchen.deploy.backend.workflow.enums.WorkflowNodeInstanceStatusEnums; -import com.qqchen.deploy.backend.workflow.event.WorkflowInstanceStatusChangeEvent; -import com.qqchen.deploy.backend.workflow.event.WorkflowNodeInstanceStatusChangeEvent; +import com.qqchen.deploy.backend.workflow.dto.event.WorkflowNodeInstanceStatusChangeEvent; import com.qqchen.deploy.backend.workflow.repository.IWorkflowInstanceRepository; import com.qqchen.deploy.backend.workflow.repository.IWorkflowNodeInstanceRepository; -import com.qqchen.deploy.backend.workflow.service.IWorkflowInstanceService; import com.qqchen.deploy.backend.workflow.service.IWorkflowNodeInstanceService; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; @@ -19,7 +17,6 @@ import org.springframework.transaction.annotation.Transactional; import java.time.LocalDateTime; import java.util.List; -import java.util.Optional; import java.util.stream.Collectors; @Slf4j diff --git a/backend/src/main/resources/db/migration/V1.0.1__init_data.sql b/backend/src/main/resources/db/migration/V1.0.1__init_data.sql index 13e4f156..7c55462c 100644 --- a/backend/src/main/resources/db/migration/V1.0.1__init_data.sql +++ b/backend/src/main/resources/db/migration/V1.0.1__init_data.sql @@ -71,13 +71,13 @@ VALUES -- 节点管理 (103, '节点管理', '/workflow/node-design', '/src/pages/workflow/nodedesign/design/index', 'ControlOutlined', 2, 100, 40, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), -(200, '部署管理', '/deploy', '', 'DeploymentUnitOutlined', 2, 0, 50, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), +(200, '运维管理', '/deploy', '', 'DeploymentUnitOutlined', 2, 0, 50, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), -(201, '环境管理', '/deploy/environments', '/src/pages/Deploy/Environment/List/index', 'CloudOutlined', 2, 200, 1, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), +(201, '项目组管理', '/deploy/project-group', '/src/pages/Deploy/ProjectGroup/List/index', 'ProjectOutlined', 2, 200, 1, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), -(203, '项目组管理', '/deploy/project-group', '/src/pages/Deploy/ProjectGroup/List/index', 'ProjectOutlined', 2, 200, 2, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), +(202, '应用管理', '/deploy/applications', '/src/pages/Deploy/Application/List/index', 'AppstoreOutlined', 2, 200, 2, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), -(204, '应用管理', '/deploy/applications', '/src/pages/Deploy/Application/List/index', 'AppstoreOutlined', 2, 200, 3, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), +(203, '环境管理', '/deploy/environments', '/src/pages/Deploy/Environment/List/index', 'CloudOutlined', 2, 200, 3, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE), -- 三方系统 (205, '三方系统管理', '/deploy/external', '/src/pages/Deploy/external/index', 'ApiOutlined', 2, 200, 70, FALSE, TRUE, 'system', '2024-01-01 00:00:00', 0, FALSE);