bugfix
This commit is contained in:
parent
0c4414f61b
commit
e09a5664e8
142
models/ddl.sql
Normal file
142
models/ddl.sql
Normal file
@ -0,0 +1,142 @@
|
||||
-- 企业表
|
||||
CREATE TABLE orgs (
|
||||
orgid VARCHAR(32) PRIMARY KEY COMMENT '企业ID(主键)',
|
||||
name VARCHAR(255) NOT NULL COMMENT '企业名称',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间'
|
||||
) COMMENT='企业表';
|
||||
|
||||
-- 流程定义表
|
||||
CREATE TABLE flow_definitions (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '流程定义ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
code VARCHAR(100) NOT NULL COMMENT '流程编码(企业内唯一)',
|
||||
name VARCHAR(255) NOT NULL COMMENT '流程名称',
|
||||
version INT NOT NULL DEFAULT 1 COMMENT '流程版本',
|
||||
description TEXT COMMENT '流程描述',
|
||||
status TINYINT NOT NULL DEFAULT 1 COMMENT '流程状态:1=启用 0=停用',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
UNIQUE KEY uk_org_code_version (orgid, code, version)
|
||||
) COMMENT='流程定义表';
|
||||
|
||||
-- 流程节点定义表(增加子流程字段)
|
||||
CREATE TABLE flow_nodes (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '节点ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
flow_definition_id VARCHAR(32) NOT NULL COMMENT '所属流程定义ID',
|
||||
node_key VARCHAR(100) NOT NULL COMMENT '节点唯一标识(流程内唯一)',
|
||||
name VARCHAR(255) NOT NULL COMMENT '节点名称',
|
||||
type ENUM('start','task','gateway','subflow','end') NOT NULL COMMENT '节点类型',
|
||||
role_id VARCHAR(32) COMMENT '节点分配角色ID',
|
||||
assignment_type VARCHAR(50) COMMENT '任务分配类型(轮询/抢占/自动)',
|
||||
properties JSON COMMENT '节点属性(JSON格式,自定义扩展)',
|
||||
subflow_definition_id VARCHAR(32) COMMENT '子流程定义ID(type=subflow时使用)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
UNIQUE(flow_definition_id, node_key),
|
||||
FOREIGN KEY(flow_definition_id) REFERENCES flow_definitions(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY(subflow_definition_id) REFERENCES flow_definitions(id)
|
||||
) COMMENT='流程节点定义表';
|
||||
|
||||
-- 节点转移表
|
||||
CREATE TABLE flow_transitions (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '节点转移ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
flow_definition_id VARCHAR(32) NOT NULL COMMENT '所属流程定义ID',
|
||||
source_node_id VARCHAR(32) NOT NULL COMMENT '起始节点ID',
|
||||
target_node_id VARCHAR(32) NOT NULL COMMENT '目标节点ID',
|
||||
condition_expr VARCHAR(1000) COMMENT '转移条件表达式',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
FOREIGN KEY(source_node_id) REFERENCES flow_nodes(id),
|
||||
FOREIGN KEY(target_node_id) REFERENCES flow_nodes(id)
|
||||
) COMMENT='流程节点转移表';
|
||||
|
||||
-- 节点表单表
|
||||
CREATE TABLE flow_node_forms (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '节点表单ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
flow_node_id VARCHAR(32) NOT NULL COMMENT '节点ID',
|
||||
schema JSON NOT NULL COMMENT '表单结构定义(JSON/JIO)',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
FOREIGN KEY(flow_node_id) REFERENCES flow_nodes(id)
|
||||
) COMMENT='节点表单定义表';
|
||||
|
||||
-- 流程实例表
|
||||
CREATE TABLE flow_instances (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '流程实例ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
flow_definition_id VARCHAR(32) NOT NULL COMMENT '流程定义ID',
|
||||
version INT NOT NULL COMMENT '流程版本',
|
||||
status ENUM('running','completed','terminated') DEFAULT 'running' COMMENT '实例状态',
|
||||
context JSON COMMENT '运行时上下文数据',
|
||||
created_by VARCHAR(32) NOT NULL COMMENT '发起人用户ID',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
FOREIGN KEY(flow_definition_id) REFERENCES flow_definitions(id)
|
||||
) COMMENT='流程实例表';
|
||||
|
||||
-- 流程实例节点表(增加 parent_instance_node_id 支持子流程嵌套)
|
||||
CREATE TABLE flow_instance_nodes (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '流程实例节点ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
flow_instance_id VARCHAR(32) NOT NULL COMMENT '流程实例ID',
|
||||
flow_node_id VARCHAR(32) NOT NULL COMMENT '流程节点ID',
|
||||
parent_instance_node_id VARCHAR(32) COMMENT '父节点实例ID(子流程时使用)',
|
||||
status ENUM('pending','in_progress','completed','skipped') DEFAULT 'pending' COMMENT '节点实例状态',
|
||||
assigned_to VARCHAR(32) COMMENT '指派用户ID(当前)',
|
||||
form_data JSON COMMENT '填写的表单数据',
|
||||
started_at TIMESTAMP COMMENT '节点开始时间',
|
||||
completed_at TIMESTAMP COMMENT '节点完成时间',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
FOREIGN KEY(flow_instance_id) REFERENCES flow_instances(id),
|
||||
FOREIGN KEY(flow_node_id) REFERENCES flow_nodes(id),
|
||||
FOREIGN KEY(parent_instance_node_id) REFERENCES flow_instance_nodes(id)
|
||||
) COMMENT='流程实例节点表';
|
||||
|
||||
-- 节点任务表(人工任务)
|
||||
CREATE TABLE flow_tasks (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '任务ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
instance_node_id VARCHAR(32) NOT NULL COMMENT '流程实例节点ID',
|
||||
assignee_id VARCHAR(32) COMMENT '指派用户ID(原始)',
|
||||
candidate_role VARCHAR(128) COMMENT '候选角色',
|
||||
status ENUM('pending','claimed','completed','failed') DEFAULT 'pending' COMMENT '任务状态',
|
||||
input JSON COMMENT '任务输入数据',
|
||||
output JSON COMMENT '任务输出数据',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
FOREIGN KEY(instance_node_id) REFERENCES flow_instance_nodes(id)
|
||||
) COMMENT='节点任务表';
|
||||
|
||||
-- 用户代理表(请假/任务委托)
|
||||
CREATE TABLE user_delegations (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '委托ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
user_id VARCHAR(32) NOT NULL COMMENT '原始任务用户ID',
|
||||
delegate_id VARCHAR(32) NOT NULL COMMENT '代理用户ID',
|
||||
start_time DATETIME NOT NULL COMMENT '生效开始时间',
|
||||
end_time DATETIME NOT NULL COMMENT '生效结束时间',
|
||||
status TINYINT DEFAULT 1 COMMENT '状态:1=生效 0=停用',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间'
|
||||
) COMMENT='用户代理表';
|
||||
|
||||
-- 流程日志表
|
||||
CREATE TABLE flow_logs (
|
||||
id VARCHAR(32) PRIMARY KEY COMMENT '日志ID',
|
||||
orgid VARCHAR(32) NOT NULL COMMENT '企业ID',
|
||||
flow_instance_id VARCHAR(32) NOT NULL COMMENT '流程实例ID',
|
||||
flow_node_id VARCHAR(32) COMMENT '节点ID(可为空)',
|
||||
parent_instance_node_id VARCHAR(32) COMMENT '父节点实例ID(子流程时使用)',
|
||||
action VARCHAR(100) NOT NULL COMMENT '操作动作(start, complete, assign, transition, terminate)',
|
||||
operator_id VARCHAR(32) COMMENT '操作人用户ID',
|
||||
original_assignee_id VARCHAR(32) COMMENT '原始任务指派人(代理场景使用)',
|
||||
message TEXT COMMENT '日志内容',
|
||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
FOREIGN KEY(flow_instance_id) REFERENCES flow_instances(id),
|
||||
FOREIGN KEY(flow_node_id) REFERENCES flow_nodes(id),
|
||||
FOREIGN KEY(parent_instance_node_id) REFERENCES flow_instance_nodes(id)
|
||||
) COMMENT='流程日志表';
|
||||
|
||||
BIN
models/flow_definitions.xlsx
Normal file
BIN
models/flow_definitions.xlsx
Normal file
Binary file not shown.
BIN
models/flow_instance_nodes.xlsx
Normal file
BIN
models/flow_instance_nodes.xlsx
Normal file
Binary file not shown.
BIN
models/flow_instances.xlsx
Normal file
BIN
models/flow_instances.xlsx
Normal file
Binary file not shown.
BIN
models/flow_logs.xlsx
Normal file
BIN
models/flow_logs.xlsx
Normal file
Binary file not shown.
BIN
models/flow_node_forms.xlsx
Normal file
BIN
models/flow_node_forms.xlsx
Normal file
Binary file not shown.
BIN
models/flow_nodes.xlsx
Normal file
BIN
models/flow_nodes.xlsx
Normal file
Binary file not shown.
BIN
models/flow_tasks.xlsx
Normal file
BIN
models/flow_tasks.xlsx
Normal file
Binary file not shown.
BIN
models/flow_transitions.xlsx
Normal file
BIN
models/flow_transitions.xlsx
Normal file
Binary file not shown.
BIN
models/user_delegations.xlsx
Normal file
BIN
models/user_delegations.xlsx
Normal file
Binary file not shown.
BIN
models/~$flow_definitions.xlsx
Normal file
BIN
models/~$flow_definitions.xlsx
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user