AprilWind
2025-01-15 089a79002f697198e9f4cbeb0ca85711d329eb52
script/sql/postgres/postgres_ry_workflow.sql
@@ -3,22 +3,22 @@
-- ----------------------------
CREATE TABLE flow_definition
(
    id              int8         NOT NULL,                      -- 主键id
    flow_code       varchar(40)  NOT NULL,                      -- 流程编码
    flow_name       varchar(100) NOT NULL,                      -- 流程名称
    category        varchar(100) NULL,                          -- 流程类别
    "version"       varchar(20)  NOT NULL,                      -- 流程版本
    is_publish      int2         NOT NULL DEFAULT 0,            -- 是否发布(0未发布 1已发布 9失效)
    form_custom     bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否)
    form_path       varchar(100) NULL,                          -- 审批表单路径
    activity_status int2         NOT NULL DEFAULT 1,            -- 流程激活状态(0挂起 1激活)
    listener_type   varchar(100) NULL,                          -- 监听器类型
    listener_path   varchar(400) NULL,                          -- 监听器路径
    ext             varchar(500) NULL,                          -- 扩展字段,预留给业务系统使用
    create_time     timestamp    NULL,                          -- 创建时间
    update_time     timestamp    NULL,                          -- 更新时间
    del_flag        bpchar(1) NULL DEFAULT '0':: character varying,    -- 删除标志
    tenant_id       varchar(40)  NULL,                          -- 租户id
    id              int8         NOT NULL,                                 -- 主键id
    flow_code       varchar(40)  NOT NULL,                                 -- 流程编码
    flow_name       varchar(100) NOT NULL,                                 -- 流程名称
    category        varchar(100) NULL,                                     -- 流程类别
    "version"       varchar(20)  NOT NULL,                                 -- 流程版本
    is_publish      int2         NOT NULL DEFAULT 0,                       -- 是否发布(0未发布 1已发布 9失效)
    form_custom     bpchar(1)    NULL     DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否)
    form_path       varchar(100) NULL,                                     -- 审批表单路径
    activity_status int2         NOT NULL DEFAULT 1,                       -- 流程激活状态(0挂起 1激活)
    listener_type   varchar(100) NULL,                                     -- 监听器类型
    listener_path   varchar(400) NULL,                                     -- 监听器路径
    ext             varchar(500) NULL,                                     -- 扩展字段,预留给业务系统使用
    create_time     timestamp    NULL,                                     -- 创建时间
    update_time     timestamp    NULL,                                     -- 更新时间
    del_flag        bpchar(1)    NULL     DEFAULT '0':: character varying, -- 删除标志
    tenant_id       varchar(40)  NULL,                                     -- 租户id
    CONSTRAINT flow_definition_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE flow_definition IS '流程定义表';
@@ -56,12 +56,12 @@
    listener_path   varchar(400)  NULL,                                 -- 监听器路径
    handler_type    varchar(100)  NULL,                                 -- 处理器类型
    handler_path    varchar(400)  NULL,                                 -- 处理器路径
    form_custom     bpchar(1) NULL DEFAULT 'N':: character varying,         -- 审批表单是否自定义(Y是 N否)
    form_custom     bpchar(1)     NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否)
    form_path       varchar(100)  NULL,                                 -- 审批表单路径
    "version"       varchar(20)   NOT NULL,                             -- 版本
    create_time     timestamp     NULL,                                 -- 创建时间
    update_time     timestamp     NULL,                                 -- 更新时间
    del_flag        bpchar(1) NULL DEFAULT '0':: character varying,            -- 删除标志
    del_flag        bpchar(1)     NULL DEFAULT '0':: character varying, -- 删除标志
    tenant_id       varchar(40)   NULL,                                 -- 租户id
    CONSTRAINT flow_node_pkey PRIMARY KEY (id)
);
@@ -92,20 +92,20 @@
CREATE TABLE flow_skip
(
    id             int8         NOT NULL,                    -- 主键id
    definition_id  int8         NOT NULL,                    -- 流程定义id
    now_node_code  varchar(100) NOT NULL,                    -- 当前流程节点的编码
    now_node_type  int2         NULL,                        -- 当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    next_node_code varchar(100) NOT NULL,                    -- 下一个流程节点的编码
    next_node_type int2         NULL,                        -- 下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    skip_name      varchar(100) NULL,                        -- 跳转名称
    skip_type      varchar(40)  NULL,                        -- 跳转类型(PASS审批通过 REJECT退回)
    skip_condition varchar(200) NULL,                        -- 跳转条件
    coordinate     varchar(100) NULL,                        -- 坐标
    create_time    timestamp    NULL,                        -- 创建时间
    update_time    timestamp    NULL,                        -- 更新时间
    del_flag       bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志
    tenant_id      varchar(40)  NULL,                        -- 租户id
    id             int8         NOT NULL,                             -- 主键id
    definition_id  int8         NOT NULL,                             -- 流程定义id
    now_node_code  varchar(100) NOT NULL,                             -- 当前流程节点的编码
    now_node_type  int2         NULL,                                 -- 当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    next_node_code varchar(100) NOT NULL,                             -- 下一个流程节点的编码
    next_node_type int2         NULL,                                 -- 下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    skip_name      varchar(100) NULL,                                 -- 跳转名称
    skip_type      varchar(40)  NULL,                                 -- 跳转类型(PASS审批通过 REJECT退回)
    skip_condition varchar(200) NULL,                                 -- 跳转条件
    coordinate     varchar(100) NULL,                                 -- 坐标
    create_time    timestamp    NULL,                                 -- 创建时间
    update_time    timestamp    NULL,                                 -- 更新时间
    del_flag       bpchar(1)    NULL DEFAULT '0':: character varying, -- 删除标志
    tenant_id      varchar(40)  NULL,                                 -- 租户id
    CONSTRAINT flow_skip_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE flow_skip IS '节点跳转关联表';
@@ -127,21 +127,21 @@
CREATE TABLE flow_instance
(
    id              int8         NOT NULL,                                -- 主键id
    definition_id   int8         NOT NULL,                                -- 对应flow_definition表的id
    business_id     varchar(40)  NOT NULL,                                -- 业务id
    node_type       int2         NOT NULL,                                -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    node_code       varchar(40)  NOT NULL,                                -- 流程节点编码
    node_name       varchar(100) NULL,                                    -- 流程节点名称
    variable        text         NULL,                                    -- 任务变量
    flow_status     varchar(20)  NOT NULL,                                -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效)
    activity_status int2         NOT NULL DEFAULT 1,                      -- 流程激活状态(0挂起 1激活)
    create_by       varchar(64)  NULL     DEFAULT '':: character varying, -- 创建者
    create_time     timestamp    NULL,                                    -- 创建时间
    update_time     timestamp    NULL,                                    -- 更新时间
    ext             varchar(500) NULL,                                    -- 扩展字段,预留给业务系统使用
    del_flag        bpchar(1) NULL DEFAULT '0':: character varying,              -- 删除标志
    tenant_id       varchar(40)  NULL,                                    -- 租户id
    id              int8         NOT NULL,                                 -- 主键id
    definition_id   int8         NOT NULL,                                 -- 对应flow_definition表的id
    business_id     varchar(40)  NOT NULL,                                 -- 业务id
    node_type       int2         NOT NULL,                                 -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    node_code       varchar(40)  NOT NULL,                                 -- 流程节点编码
    node_name       varchar(100) NULL,                                     -- 流程节点名称
    variable        text         NULL,                                     -- 任务变量
    flow_status     varchar(20)  NOT NULL,                                 -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效)
    activity_status int2         NOT NULL DEFAULT 1,                       -- 流程激活状态(0挂起 1激活)
    create_by       varchar(64)  NULL     DEFAULT '':: character varying,  -- 创建者
    create_time     timestamp    NULL,                                     -- 创建时间
    update_time     timestamp    NULL,                                     -- 更新时间
    ext             varchar(500) NULL,                                     -- 扩展字段,预留给业务系统使用
    del_flag        bpchar(1)    NULL     DEFAULT '0':: character varying, -- 删除标志
    tenant_id       varchar(40)  NULL,                                     -- 租户id
    CONSTRAINT flow_instance_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE flow_instance IS '流程实例表';
@@ -164,18 +164,18 @@
CREATE TABLE flow_task
(
    id            int8         NOT NULL,                        -- 主键id
    definition_id int8         NOT NULL,                        -- 对应flow_definition表的id
    instance_id   int8         NOT NULL,                        -- 对应flow_instance表的id
    node_code     varchar(100) NOT NULL,                        -- 节点编码
    node_name     varchar(100) NULL,                            -- 节点名称
    node_type     int2         NOT NULL,                        -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    form_custom   bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否)
    form_path     varchar(100) NULL,                            -- 审批表单路径
    create_time   timestamp    NULL,                            -- 创建时间
    update_time   timestamp    NULL,                            -- 更新时间
    del_flag      bpchar(1) NULL DEFAULT '0':: character varying,    -- 删除标志
    tenant_id     varchar(40)  NULL,                            -- 租户id
    id            int8         NOT NULL,                             -- 主键id
    definition_id int8         NOT NULL,                             -- 对应flow_definition表的id
    instance_id   int8         NOT NULL,                             -- 对应flow_instance表的id
    node_code     varchar(100) NOT NULL,                             -- 节点编码
    node_name     varchar(100) NULL,                                 -- 节点名称
    node_type     int2         NOT NULL,                             -- 节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    form_custom   bpchar(1)    NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否)
    form_path     varchar(100) NULL,                                 -- 审批表单路径
    create_time   timestamp    NULL,                                 -- 创建时间
    update_time   timestamp    NULL,                                 -- 更新时间
    del_flag      bpchar(1)    NULL DEFAULT '0':: character varying, -- 删除标志
    tenant_id     varchar(40)  NULL,                                 -- 租户id
    CONSTRAINT flow_task_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE flow_task IS '待办任务表';
@@ -195,28 +195,29 @@
CREATE TABLE flow_his_task
(
    id               int8         NOT NULL,                     -- 主键id
    definition_id    int8         NOT NULL,                     -- 对应flow_definition表的id
    instance_id      int8         NOT NULL,                     -- 对应flow_instance表的id
    task_id          int8         NOT NULL,                     -- 对应flow_task表的id
    node_code        varchar(100) NULL,                         -- 开始节点编码
    node_name        varchar(100) NULL,                         -- 开始节点名称
    node_type        int2         NULL,                         -- 开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    target_node_code varchar(100) NULL,                         -- 目标节点编码
    target_node_name varchar(100) NULL,                         -- 结束节点名称
    approver         varchar(40)  NULL,                         -- 审批者
    cooperate_type   int2         NOT NULL DEFAULT 0,           -- 协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签)
    collaborator     varchar(40)  NULL,                         -- 协作人(只有转办、会签、票签、委派)
    skip_type        varchar(10)  NULL,                         -- 流转类型(PASS通过 REJECT退回 NONE无动作)
    flow_status      varchar(20)  NOT NULL,                     -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效)
    form_custom      bpchar(1) NULL DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否)
    form_path        varchar(100) NULL,                         -- 审批表单路径
    ext              varchar(500) NULL,                         -- 扩展字段,预留给业务系统使用
    message          varchar(500) NULL,                         -- 审批意见
    create_time      timestamp    NULL,                         -- 创建时间
    update_time      timestamp    NULL,                         -- 更新时间
    del_flag         bpchar(1) NULL DEFAULT '0':: character varying,    -- 删除标志
    tenant_id        varchar(40)  NULL,                         -- 租户id
    id               int8         NOT NULL,                                 -- 主键id
    definition_id    int8         NOT NULL,                                 -- 对应flow_definition表的id
    instance_id      int8         NOT NULL,                                 -- 对应flow_instance表的id
    task_id          int8         NOT NULL,                                 -- 对应flow_task表的id
    node_code        varchar(100) NULL,                                     -- 开始节点编码
    node_name        varchar(100) NULL,                                     -- 开始节点名称
    node_type        int2         NULL,                                     -- 开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)
    target_node_code varchar(200) NULL,                                     -- 目标节点编码
    target_node_name varchar(200) NULL,                                     -- 结束节点名称
    approver         varchar(40)  NULL,                                     -- 审批者
    cooperate_type   int2         NOT NULL DEFAULT 0,                       -- 协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签)
    collaborator     varchar(40)  NULL,                                     -- 协作人(只有转办、会签、票签、委派)
    skip_type        varchar(10)  NULL,                                     -- 流转类型(PASS通过 REJECT退回 NONE无动作)
    flow_status      varchar(20)  NOT NULL,                                 -- 流程状态(0待提交 1审批中 2 审批通过 8已完成 9已退回 10失效)
    form_custom      bpchar(1)    NULL     DEFAULT 'N':: character varying, -- 审批表单是否自定义(Y是 N否)
    form_path        varchar(100) NULL,                                     -- 审批表单路径
    ext              varchar(500) NULL,                                     -- 扩展字段,预留给业务系统使用
    message          varchar(500) NULL,                                     -- 审批意见
    variable         text         NULL,                                     -- 任务变量
    create_time      timestamp    NULL,                                     -- 创建时间
    update_time      timestamp    NULL,                                     -- 更新时间
    del_flag         bpchar(1)    NULL     DEFAULT '0':: character varying, -- 删除标志
    tenant_id        varchar(40)  NULL,                                     -- 租户id
    CONSTRAINT flow_his_task_pkey PRIMARY KEY (id)
);
COMMENT ON TABLE flow_his_task IS '历史任务记录表';
@@ -238,6 +239,7 @@
COMMENT ON COLUMN flow_his_task.form_custom IS '审批表单是否自定义(Y是 N否)';
COMMENT ON COLUMN flow_his_task.form_path IS '审批表单路径';
COMMENT ON COLUMN flow_his_task.message IS '审批意见';
COMMENT ON COLUMN flow_his_task.variable IS '任务变量';
COMMENT ON COLUMN flow_his_task.ext IS '扩展字段,预留给业务系统使用';
COMMENT ON COLUMN flow_his_task.create_time IS '任务开始时间';
COMMENT ON COLUMN flow_his_task.update_time IS '审批完成时间';
@@ -246,15 +248,15 @@
CREATE TABLE flow_user
(
    id           int8        NOT NULL,                       -- 主键id
    "type"       bpchar(1) NOT NULL,                         -- 人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3流程实例的抄送人权限 4待办任务的委托人权限)
    processed_by varchar(80) NULL,                           -- 权限人
    associated   int8        NOT NULL,                       -- 任务表id
    create_time  timestamp   NULL,                           -- 创建时间
    create_by    varchar(80) NULL,                           -- 创建人
    update_time  timestamp   NULL,                           -- 更新时间
    del_flag     bpchar(1) NULL DEFAULT '0':: character varying, -- 删除标志
    tenant_id    varchar(40) NULL,                           -- 租户id
    id           int8        NOT NULL,                             -- 主键id
    "type"       bpchar(1)   NOT NULL,                             -- 人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3流程实例的抄送人权限 4待办任务的委托人权限)
    processed_by varchar(80) NULL,                                 -- 权限人
    associated   int8        NOT NULL,                             -- 任务表id
    create_time  timestamp   NULL,                                 -- 创建时间
    create_by    varchar(80) NULL,                                 -- 创建人
    update_time  timestamp   NULL,                                 -- 更新时间
    del_flag     bpchar(1)   NULL DEFAULT '0':: character varying, -- 删除标志
    tenant_id    varchar(40) NULL,                                 -- 租户id
    CONSTRAINT flow_user_pk PRIMARY KEY (id)
);
CREATE INDEX user_processed_type ON flow_user USING btree (processed_by, type);
@@ -306,7 +308,7 @@
INSERT INTO flow_category VALUES (100, '000000', 0, '0', 'OA审批', 0, '0', 103, 1, now(), NULL, NULL);
INSERT INTO flow_category VALUES (101, '000000', 100, '0,100', '假勤管理', 0, '0', 103, 1, now(), NULL, NULL);
INSERT INTO flow_category VALUES (102, '000000', 100, '0,100', '人事管理', 0, '0', 103, 1, now(), NULL, NULL);
INSERT INTO flow_category VALUES (102, '000000', 100, '0,100', '人事管理', 1, '0', 103, 1, now(), NULL, NULL);
INSERT INTO flow_category VALUES (103, '000000', 101, '0,100,101', '请假', 0, '0', 103, 1, now(), NULL, NULL);
INSERT INTO flow_category VALUES (104, '000000', 101, '0,100,101', '出差', 1, '0', 103, 1, now(), NULL, NULL);
INSERT INTO flow_category VALUES (105, '000000', 101, '0,100,101', '加班', 2, '0', 103, 1, now(), NULL, NULL);