通用解析

This commit is contained in:
戚辰先生 2024-12-11 21:16:18 +08:00
parent b3bc78a39e
commit 7e94b1f37c
4 changed files with 18 additions and 20 deletions

View File

@ -1,6 +1,6 @@
package com.qqchen.deploy.backend.workflow.dto.graph; package com.qqchen.deploy.backend.workflow.dto.graph;
import com.qqchen.deploy.backend.workflow.enums.NodeType; import com.qqchen.deploy.backend.workflow.enums.NodeTypeEnums;
import lombok.Data; import lombok.Data;
import java.util.Map; import java.util.Map;
@ -19,7 +19,7 @@ public class WorkflowNode {
/** /**
* 节点类型 * 节点类型
*/ */
private NodeType type; private NodeTypeEnums type;
/** /**
* 节点名称 * 节点名称

View File

@ -7,7 +7,7 @@ import com.fasterxml.jackson.annotation.JsonValue;
* @author cascade * @author cascade
* @date 2024-12-11 * @date 2024-12-11
*/ */
public enum NodeType { public enum NodeTypeEnums {
START_EVENT("startEvent"), START_EVENT("startEvent"),
END_EVENT("endEvent"), END_EVENT("endEvent"),
USER_TASK("userTask"), USER_TASK("userTask"),
@ -21,7 +21,7 @@ public enum NodeType {
@JsonValue @JsonValue
private final String value; private final String value;
NodeType(String value) { NodeTypeEnums(String value) {
this.value = value; this.value = value;
} }
@ -29,8 +29,8 @@ public enum NodeType {
return value; return value;
} }
public static NodeType fromValue(String value) { public static NodeTypeEnums fromValue(String value) {
for (NodeType type : values()) { for (NodeTypeEnums type : values()) {
if (type.value.equals(value)) { if (type.value.equals(value)) {
return type; return type;
} }

View File

@ -1,14 +1,12 @@
package com.qqchen.deploy.backend.workflow.util; package com.qqchen.deploy.backend.workflow.util;
import com.qqchen.deploy.backend.workflow.dto.graph.*; import com.qqchen.deploy.backend.workflow.dto.graph.*;
import com.qqchen.deploy.backend.workflow.enums.NodeType;
import org.flowable.bpmn.converter.BpmnXMLConverter; import org.flowable.bpmn.converter.BpmnXMLConverter;
import org.flowable.bpmn.model.*; import org.flowable.bpmn.model.*;
import org.flowable.bpmn.model.Process; import org.flowable.bpmn.model.Process;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map; import java.util.Map;
/** /**

View File

@ -1,7 +1,7 @@
package com.qqchen.deploy.backend.workflow.util; package com.qqchen.deploy.backend.workflow.util;
import com.qqchen.deploy.backend.workflow.dto.graph.*; import com.qqchen.deploy.backend.workflow.dto.graph.*;
import com.qqchen.deploy.backend.workflow.enums.NodeType; import com.qqchen.deploy.backend.workflow.enums.NodeTypeEnums;
import org.flowable.bpmn.converter.BpmnXMLConverter; import org.flowable.bpmn.converter.BpmnXMLConverter;
import org.flowable.bpmn.model.*; import org.flowable.bpmn.model.*;
import org.flowable.bpmn.model.Process; import org.flowable.bpmn.model.Process;
@ -35,7 +35,7 @@ class BpmnConverterTest {
// 开始节点 // 开始节点
WorkflowNode startNode = new WorkflowNode(); WorkflowNode startNode = new WorkflowNode();
startNode.setId("startEvent1"); startNode.setId("startEvent1");
startNode.setType(NodeType.START_EVENT); startNode.setType(NodeTypeEnums.START_EVENT);
startNode.setName("开始"); startNode.setName("开始");
startNode.setPosition(new Position(100.0, 100.0)); startNode.setPosition(new Position(100.0, 100.0));
nodes.add(startNode); nodes.add(startNode);
@ -43,7 +43,7 @@ class BpmnConverterTest {
// 服务任务节点 // 服务任务节点
WorkflowNode serviceNode = new WorkflowNode(); WorkflowNode serviceNode = new WorkflowNode();
serviceNode.setId("service1"); serviceNode.setId("service1");
serviceNode.setType(NodeType.SERVICE_TASK); serviceNode.setType(NodeTypeEnums.SERVICE_TASK);
serviceNode.setName("服务任务"); serviceNode.setName("服务任务");
serviceNode.setPosition(new Position(300.0, 100.0)); serviceNode.setPosition(new Position(300.0, 100.0));
@ -60,7 +60,7 @@ class BpmnConverterTest {
// 结束节点 // 结束节点
WorkflowNode endNode = new WorkflowNode(); WorkflowNode endNode = new WorkflowNode();
endNode.setId("endEvent1"); endNode.setId("endEvent1");
endNode.setType(NodeType.END_EVENT); endNode.setType(NodeTypeEnums.END_EVENT);
endNode.setName("结束"); endNode.setName("结束");
endNode.setPosition(new Position(500.0, 100.0)); endNode.setPosition(new Position(500.0, 100.0));
nodes.add(endNode); nodes.add(endNode);
@ -161,7 +161,7 @@ class BpmnConverterTest {
// 开始节点 // 开始节点
WorkflowNode startNode = new WorkflowNode(); WorkflowNode startNode = new WorkflowNode();
startNode.setId("startEvent1"); startNode.setId("startEvent1");
startNode.setType(NodeType.START_EVENT); startNode.setType(NodeTypeEnums.START_EVENT);
startNode.setName("开始"); startNode.setName("开始");
startNode.setPosition(new Position(100.0, 100.0)); startNode.setPosition(new Position(100.0, 100.0));
nodes.add(startNode); nodes.add(startNode);
@ -169,7 +169,7 @@ class BpmnConverterTest {
// 用户任务节点 // 用户任务节点
WorkflowNode userNode = new WorkflowNode(); WorkflowNode userNode = new WorkflowNode();
userNode.setId("user1"); userNode.setId("user1");
userNode.setType(NodeType.USER_TASK); userNode.setType(NodeTypeEnums.USER_TASK);
userNode.setName("审批任务"); userNode.setName("审批任务");
userNode.setPosition(new Position(300.0, 100.0)); userNode.setPosition(new Position(300.0, 100.0));
@ -186,7 +186,7 @@ class BpmnConverterTest {
// 结束节点 // 结束节点
WorkflowNode endNode = new WorkflowNode(); WorkflowNode endNode = new WorkflowNode();
endNode.setId("endEvent1"); endNode.setId("endEvent1");
endNode.setType(NodeType.END_EVENT); endNode.setType(NodeTypeEnums.END_EVENT);
endNode.setName("结束"); endNode.setName("结束");
endNode.setPosition(new Position(500.0, 100.0)); endNode.setPosition(new Position(500.0, 100.0));
nodes.add(endNode); nodes.add(endNode);
@ -259,7 +259,7 @@ class BpmnConverterTest {
// 开始节点 // 开始节点
WorkflowNode startNode = new WorkflowNode(); WorkflowNode startNode = new WorkflowNode();
startNode.setId("startEvent1"); startNode.setId("startEvent1");
startNode.setType(NodeType.START_EVENT); startNode.setType(NodeTypeEnums.START_EVENT);
startNode.setName("开始"); startNode.setName("开始");
startNode.setPosition(new Position(100.0, 100.0)); startNode.setPosition(new Position(100.0, 100.0));
nodes.add(startNode); nodes.add(startNode);
@ -267,7 +267,7 @@ class BpmnConverterTest {
// 服务任务节点 // 服务任务节点
WorkflowNode serviceNode = new WorkflowNode(); WorkflowNode serviceNode = new WorkflowNode();
serviceNode.setId("service1"); serviceNode.setId("service1");
serviceNode.setType(NodeType.SERVICE_TASK); serviceNode.setType(NodeTypeEnums.SERVICE_TASK);
serviceNode.setName("服务任务"); serviceNode.setName("服务任务");
serviceNode.setPosition(new Position(250.0, 100.0)); serviceNode.setPosition(new Position(250.0, 100.0));
@ -283,7 +283,7 @@ class BpmnConverterTest {
// 用户任务节点 // 用户任务节点
WorkflowNode userNode = new WorkflowNode(); WorkflowNode userNode = new WorkflowNode();
userNode.setId("user1"); userNode.setId("user1");
userNode.setType(NodeType.USER_TASK); userNode.setType(NodeTypeEnums.USER_TASK);
userNode.setName("用户任务"); userNode.setName("用户任务");
userNode.setPosition(new Position(400.0, 100.0)); userNode.setPosition(new Position(400.0, 100.0));
@ -301,7 +301,7 @@ class BpmnConverterTest {
// 脚本任务节点 // 脚本任务节点
WorkflowNode scriptNode = new WorkflowNode(); WorkflowNode scriptNode = new WorkflowNode();
scriptNode.setId("script1"); scriptNode.setId("script1");
scriptNode.setType(NodeType.SCRIPT_TASK); scriptNode.setType(NodeTypeEnums.SCRIPT_TASK);
scriptNode.setName("脚本任务"); scriptNode.setName("脚本任务");
scriptNode.setPosition(new Position(550.0, 100.0)); scriptNode.setPosition(new Position(550.0, 100.0));
@ -316,7 +316,7 @@ class BpmnConverterTest {
// 结束节点 // 结束节点
WorkflowNode endNode = new WorkflowNode(); WorkflowNode endNode = new WorkflowNode();
endNode.setId("endEvent1"); endNode.setId("endEvent1");
endNode.setType(NodeType.END_EVENT); endNode.setType(NodeTypeEnums.END_EVENT);
endNode.setName("结束"); endNode.setName("结束");
endNode.setPosition(new Position(700.0, 100.0)); endNode.setPosition(new Position(700.0, 100.0));
nodes.add(endNode); nodes.add(endNode);