大声道撒旦

This commit is contained in:
dengqichen 2024-12-26 10:45:05 +08:00
parent d8a466a866
commit 51aa8b6994
36 changed files with 57 additions and 239 deletions

View File

@ -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 "";
}

View File

@ -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();
}

View File

@ -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;
/**
* 工作流定义控制器
*/

View File

@ -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;
/**
* 工作流定义控制器

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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<IFlowableEventHandler> eventHandlers;
@Resource
@Lazy
private RuntimeService runtimeService;
@Override
public void onEvent(FlowableEvent event) {
String eventType = event.getType().name();

View File

@ -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;

View File

@ -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;

View File

@ -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_");

View File

@ -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_");

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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));
// }
// }
//}

View File

@ -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;

View File

@ -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

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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);