反序列化问题。
This commit is contained in:
parent
25e40d57d3
commit
05c7ff74f8
@ -2,6 +2,7 @@ package com.qqchen.deploy.backend.workflow.dto;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.qqchen.deploy.backend.framework.dto.BaseDTO;
|
||||
import com.qqchen.deploy.backend.workflow.dto.definition.node.uiVariables.NodeUiVariables;
|
||||
import com.qqchen.deploy.backend.workflow.dto.definition.workflow.WorkflowNodeGraph;
|
||||
import com.qqchen.deploy.backend.workflow.enums.NodeCategoryEnums;
|
||||
import com.qqchen.deploy.backend.workflow.enums.NodeTypeEnums;
|
||||
@ -33,13 +34,16 @@ public class WorkflowNodeDefinitionDTO extends BaseDTO {
|
||||
private NodeCategoryEnums category;
|
||||
|
||||
@Schema(description = "节点UI")
|
||||
private WorkflowNodeGraph graphVariables;
|
||||
private NodeUiVariables uiVariables;
|
||||
|
||||
@Schema(description = "节点属性d")
|
||||
private JsonNode localVariables;
|
||||
@Schema(description = "节点属性")
|
||||
private JsonNode panelVariablesSchema;
|
||||
|
||||
@Schema(description = "节点环境变量")
|
||||
private JsonNode localVariablesSchema;
|
||||
|
||||
@Schema(description = "节点表单")
|
||||
private JsonNode fromVariables;
|
||||
private JsonNode fromVariablesSchema;
|
||||
|
||||
@Schema(description = "是否启用")
|
||||
private Boolean enabled;
|
||||
|
||||
@ -12,6 +12,7 @@ public class BaseNodeLocalVariables {
|
||||
@SchemaProperty(
|
||||
title = "委派者",
|
||||
description = "委派者",
|
||||
defaultValue = "com.qqchen.deploy.backend.workflow.delegate.ShellTaskDelegate",
|
||||
required = true
|
||||
)
|
||||
private String delegate;
|
||||
|
||||
@ -3,6 +3,7 @@ package com.qqchen.deploy.backend.workflow.entity;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.qqchen.deploy.backend.framework.annotation.LogicDelete;
|
||||
import com.qqchen.deploy.backend.framework.domain.Entity;
|
||||
import com.qqchen.deploy.backend.workflow.dto.definition.node.uiVariables.NodeUiVariables;
|
||||
import com.qqchen.deploy.backend.workflow.dto.definition.workflow.WorkflowNodeGraph;
|
||||
import com.qqchen.deploy.backend.workflow.enums.NodeCategoryEnums;
|
||||
import com.vladmihalcea.hibernate.type.json.JsonType;
|
||||
@ -14,11 +15,6 @@ import jakarta.persistence.Table;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
/**
|
||||
* 工作流节点定义
|
||||
* 用于定义工作流中可用的节点类型,包含 Flowable 引擎配置和前端 X6 图形配置
|
||||
*/
|
||||
@Data
|
||||
@jakarta.persistence.Entity
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ -43,17 +39,20 @@ public class WorkflowNodeDefinition extends Entity<Long> {
|
||||
|
||||
|
||||
@Type(JsonType.class)
|
||||
@Column(name = "graph_variables", columnDefinition = "text", nullable = false)
|
||||
private WorkflowNodeGraph graphVariables;
|
||||
|
||||
@Column(name = "ui_variables", columnDefinition = "text", nullable = false)
|
||||
private NodeUiVariables uiVariables;
|
||||
|
||||
@Type(JsonType.class)
|
||||
@Column(name = "local_variables", columnDefinition = "text", nullable = false)
|
||||
private JsonNode localVariables;
|
||||
@Column(name = "panel_variables_schema", columnDefinition = "text", nullable = false)
|
||||
private JsonNode panelVariablesSchema;
|
||||
|
||||
@Type(JsonType.class)
|
||||
@Column(name = "from_variables", columnDefinition = "text", nullable = false)
|
||||
private JsonNode fromVariables;
|
||||
@Column(name = "local_variables_schema", columnDefinition = "text", nullable = false)
|
||||
private JsonNode localVariablesSchema;
|
||||
|
||||
@Type(JsonType.class)
|
||||
@Column(name = "from_variables_schema", columnDefinition = "text", nullable = false)
|
||||
private JsonNode fromVariablesSchema;
|
||||
|
||||
@Column(nullable = false)
|
||||
private Boolean enabled = true;
|
||||
|
||||
@ -118,7 +118,7 @@ public class WorkflowNodeDefinitionServiceImpl extends BaseServiceImpl<WorkflowN
|
||||
}
|
||||
|
||||
Class<?> uiVariables = nodeType.getUiVariables();
|
||||
if (formVariables != null) {
|
||||
if (uiVariables != null) {
|
||||
definedDTO.setUiVariables(generateSchema(uiVariables));
|
||||
}
|
||||
|
||||
@ -167,8 +167,14 @@ public class WorkflowNodeDefinitionServiceImpl extends BaseServiceImpl<WorkflowN
|
||||
required.add(field.getName());
|
||||
}
|
||||
if (annotation.defaultValue().length() > 0) {
|
||||
if (jsonType.equals("integer")) {
|
||||
property.put("default", Integer.parseInt(annotation.defaultValue()));
|
||||
} else if (jsonType.equals("number")) {
|
||||
property.put("default", Double.parseDouble(annotation.defaultValue()));
|
||||
} else {
|
||||
property.put("default", annotation.defaultValue());
|
||||
}
|
||||
}
|
||||
|
||||
// 处理枚举
|
||||
if (annotation.enumValues().length > 0) {
|
||||
|
||||
@ -446,9 +446,10 @@ CREATE TABLE workflow_node_definition
|
||||
node_name VARCHAR(100) NOT NULL COMMENT '节点名称',
|
||||
description VARCHAR(500) COMMENT '节点描述',
|
||||
category VARCHAR(50) NOT NULL COMMENT '节点分类',
|
||||
graph_variables JSON NOT NULL COMMENT '节点UI',
|
||||
local_variables JSON NOT NULL COMMENT '节点属性',
|
||||
from_variables JSON COMMENT '节点表单',
|
||||
ui_variables JSON NOT NULL COMMENT '节点UI',
|
||||
panel_variables_schema JSON NOT NULL COMMENT '节点属性',
|
||||
local_variables_schema JSON NOT NULL COMMENT '节点环境变量',
|
||||
from_variables_schema JSON COMMENT '节点表单',
|
||||
enabled BOOLEAN NOT NULL DEFAULT TRUE COMMENT '是否启用',
|
||||
|
||||
create_time DATETIME NOT NULL COMMENT '创建时间',
|
||||
|
||||
Loading…
Reference in New Issue
Block a user