反序列化问题。

This commit is contained in:
dengqichen 2024-12-12 14:26:56 +08:00
parent f8b1019625
commit bfb7e34839
6 changed files with 120 additions and 68 deletions

View File

@ -33,9 +33,6 @@ public class WorkflowNodeDefinitionDTO extends BaseDTO {
@Schema(description = "X6图形配置JSON")
private JsonNode graphConfig;
@Schema(description = "表单配置JSON")
private JsonNode formConfig;
@Schema(description = "排序号")
private Integer orderNum;

View File

@ -18,6 +18,12 @@ public class WorkflowDefinitionNode {
*/
private String id;
/**
* 节点Code
*/
private String code;
/**
* 节点类型
*/

View File

@ -67,6 +67,10 @@ public class WorkflowNodeGraph {
private int height;
public Size() {
// 默认构造函数
}
public Size(int width, int height) {
this.width = width;
this.height = height;
@ -88,6 +92,10 @@ public class WorkflowNodeGraph {
private int strokeWidth = 2;// 边框宽度
public Style() {
// 默认构造函数
}
public Style(String fill, String stroke, String icon) {
this.fill = fill;
this.stroke = stroke;
@ -103,6 +111,11 @@ public class WorkflowNodeGraph {
public static class Ports {
private Map<String, PortGroup> groups;
public Ports() {
// 默认构造函数
this.groups = new HashMap<>();
}
/**
* 获取端口类型列表
* @return 端口类型列表"in"/"out"
@ -119,11 +132,19 @@ public class WorkflowNodeGraph {
public static class PortGroup {
private String position;
private PortAttrs attrs;
public PortGroup() {
// 默认构造函数
}
}
@Data
public static class PortAttrs {
private PortCircle circle;
public PortAttrs() {
// 默认构造函数
}
}
@Data
@ -131,5 +152,9 @@ public class WorkflowNodeGraph {
private int r;
private String fill;
private String stroke;
public PortCircle() {
// 默认构造函数
}
}
}

View File

@ -77,18 +77,6 @@ public class WorkflowNodeDefinition extends Entity<Long> {
@Column(columnDefinition = "text", nullable = false)
private JsonNode graphConfig;
/**
* 表单配置 JSON
* 定义节点的可配置属性用于前端动态渲染表单
* 包含
* - 基础属性名称描述等
* - 业务属性具体节点类型的特定属性
* - 表单验证规则
*/
@Type(JsonType.class)
@Column(columnDefinition = "text")
private JsonNode formConfig;
/**
* 排序号
*/

View File

@ -309,6 +309,7 @@ public class WorkflowDefinitionGraph {
private static WorkflowDefinitionNode createNode(String id, NodeTypeEnums type, String name, int x, int y, Map<String, Object> config) {
WorkflowDefinitionNode node = new WorkflowDefinitionNode();
node.setId(id);
node.setCode(type.getCode()); // 直接使用枚举的code
node.setType(type);
node.setName(name);
node.setConfig(config);

File diff suppressed because one or more lines are too long