ry-workflow.sql 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  1. -- ----------------------------
  2. -- 0、warm-flow-all.sql,地址:https://gitee.com/dromara/warm-flow/blob/master/sql/mysql/warm-flow-all.sql
  3. -- ----------------------------
  4. CREATE TABLE `flow_definition`
  5. (
  6. `id` bigint NOT NULL COMMENT '主键id',
  7. `flow_code` varchar(40) NOT NULL COMMENT '流程编码',
  8. `flow_name` varchar(100) NOT NULL COMMENT '流程名称',
  9. `category` varchar(100) DEFAULT NULL COMMENT '流程类别',
  10. `version` varchar(20) NOT NULL COMMENT '流程版本',
  11. `is_publish` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否发布(0未发布 1已发布 9失效)',
  12. `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
  13. `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
  14. `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)',
  15. `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型',
  16. `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径',
  17. `ext` varchar(500) DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串',
  18. `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  19. `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  20. `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
  21. `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
  22. PRIMARY KEY (`id`) USING BTREE
  23. ) ENGINE = InnoDB COMMENT ='流程定义表';
  24. CREATE TABLE `flow_node`
  25. (
  26. `id` bigint NOT NULL COMMENT '主键id',
  27. `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
  28. `definition_id` bigint NOT NULL COMMENT '流程定义id',
  29. `node_code` varchar(100) NOT NULL COMMENT '流程节点编码',
  30. `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称',
  31. `permission_flag` varchar(200) DEFAULT NULL COMMENT '权限标识(权限类型:权限标识,可以多个,用@@隔开)',
  32. `node_ratio` decimal(6, 3) DEFAULT NULL COMMENT '流程签署比例值',
  33. `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标',
  34. `any_node_skip` varchar(100) DEFAULT NULL COMMENT '任意结点跳转',
  35. `listener_type` varchar(100) DEFAULT NULL COMMENT '监听器类型',
  36. `listener_path` varchar(400) DEFAULT NULL COMMENT '监听器路径',
  37. `handler_type` varchar(100) DEFAULT NULL COMMENT '处理器类型',
  38. `handler_path` varchar(400) DEFAULT NULL COMMENT '处理器路径',
  39. `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
  40. `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
  41. `version` varchar(20) NOT NULL COMMENT '版本',
  42. `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  43. `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  44. `ext` text COMMENT '节点扩展属性',
  45. `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
  46. `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
  47. PRIMARY KEY (`id`) USING BTREE
  48. ) ENGINE = InnoDB COMMENT ='流程节点表';
  49. CREATE TABLE `flow_skip`
  50. (
  51. `id` bigint NOT NULL COMMENT '主键id',
  52. `definition_id` bigint NOT NULL COMMENT '流程定义id',
  53. `now_node_code` varchar(100) NOT NULL COMMENT '当前流程节点的编码',
  54. `now_node_type` tinyint(1) DEFAULT NULL COMMENT '当前节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
  55. `next_node_code` varchar(100) NOT NULL COMMENT '下一个流程节点的编码',
  56. `next_node_type` tinyint(1) DEFAULT NULL COMMENT '下一个节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
  57. `skip_name` varchar(100) DEFAULT NULL COMMENT '跳转名称',
  58. `skip_type` varchar(40) DEFAULT NULL COMMENT '跳转类型(PASS审批通过 REJECT退回)',
  59. `skip_condition` varchar(200) DEFAULT NULL COMMENT '跳转条件',
  60. `coordinate` varchar(100) DEFAULT NULL COMMENT '坐标',
  61. `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  62. `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  63. `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
  64. `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
  65. PRIMARY KEY (`id`) USING BTREE
  66. ) ENGINE = InnoDB COMMENT ='节点跳转关联表';
  67. CREATE TABLE `flow_instance`
  68. (
  69. `id` bigint NOT NULL COMMENT '主键id',
  70. `definition_id` bigint NOT NULL COMMENT '对应flow_definition表的id',
  71. `business_id` varchar(40) NOT NULL COMMENT '业务id',
  72. `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
  73. `node_code` varchar(40) NOT NULL COMMENT '流程节点编码',
  74. `node_name` varchar(100) DEFAULT NULL COMMENT '流程节点名称',
  75. `variable` text COMMENT '任务变量',
  76. `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)',
  77. `activity_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '流程激活状态(0挂起 1激活)',
  78. `def_json` text COMMENT '流程定义json',
  79. `create_by` varchar(64) DEFAULT '' COMMENT '创建者',
  80. `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  81. `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  82. `ext` varchar(500) DEFAULT NULL COMMENT '扩展字段,预留给业务系统使用',
  83. `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
  84. `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
  85. PRIMARY KEY (`id`) USING BTREE
  86. ) ENGINE = InnoDB COMMENT ='流程实例表';
  87. CREATE TABLE `flow_task`
  88. (
  89. `id` bigint NOT NULL COMMENT '主键id',
  90. `definition_id` bigint NOT NULL COMMENT '对应flow_definition表的id',
  91. `instance_id` bigint NOT NULL COMMENT '对应flow_instance表的id',
  92. `node_code` varchar(100) NOT NULL COMMENT '节点编码',
  93. `node_name` varchar(100) DEFAULT NULL COMMENT '节点名称',
  94. `node_type` tinyint(1) NOT NULL COMMENT '节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
  95. `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)',
  96. `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
  97. `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
  98. `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  99. `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  100. `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
  101. `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
  102. PRIMARY KEY (`id`) USING BTREE
  103. ) ENGINE = InnoDB COMMENT ='待办任务表';
  104. CREATE TABLE `flow_his_task`
  105. (
  106. `id` bigint(20) NOT NULL COMMENT '主键id',
  107. `definition_id` bigint(20) NOT NULL COMMENT '对应flow_definition表的id',
  108. `instance_id` bigint(20) NOT NULL COMMENT '对应flow_instance表的id',
  109. `task_id` bigint(20) NOT NULL COMMENT '对应flow_task表的id',
  110. `node_code` varchar(100) DEFAULT NULL COMMENT '开始节点编码',
  111. `node_name` varchar(100) DEFAULT NULL COMMENT '开始节点名称',
  112. `node_type` tinyint(1) DEFAULT NULL COMMENT '开始节点类型(0开始节点 1中间节点 2结束节点 3互斥网关 4并行网关)',
  113. `target_node_code` varchar(200) DEFAULT NULL COMMENT '目标节点编码',
  114. `target_node_name` varchar(200) DEFAULT NULL COMMENT '结束节点名称',
  115. `approver` varchar(40) DEFAULT NULL COMMENT '审批者',
  116. `cooperate_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '协作方式(1审批 2转办 3委派 4会签 5票签 6加签 7减签)',
  117. `collaborator` varchar(40) DEFAULT NULL COMMENT '协作人',
  118. `skip_type` varchar(10) NOT NULL COMMENT '流转类型(PASS通过 REJECT退回 NONE无动作)',
  119. `flow_status` varchar(20) NOT NULL COMMENT '流程状态(0待提交 1审批中 2审批通过 4终止 5作废 6撤销 8已完成 9已退回 10失效 11拿回)',
  120. `form_custom` char(1) DEFAULT 'N' COMMENT '审批表单是否自定义(Y是 N否)',
  121. `form_path` varchar(100) DEFAULT NULL COMMENT '审批表单路径',
  122. `message` varchar(500) DEFAULT NULL COMMENT '审批意见',
  123. `variable` TEXT DEFAULT NULL COMMENT '任务变量',
  124. `ext` TEXT DEFAULT NULL COMMENT '业务详情 存业务表对象json字符串',
  125. `create_time` datetime DEFAULT NULL COMMENT '任务开始时间',
  126. `update_time` datetime DEFAULT NULL COMMENT '审批完成时间',
  127. `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
  128. `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
  129. PRIMARY KEY (`id`) USING BTREE
  130. ) ENGINE = InnoDB COMMENT ='历史任务记录表';
  131. CREATE TABLE `flow_user`
  132. (
  133. `id` bigint NOT NULL COMMENT '主键id',
  134. `type` char(1) NOT NULL COMMENT '人员类型(1待办任务的审批人权限 2待办任务的转办人权限 3待办任务的委托人权限)',
  135. `processed_by` varchar(80) DEFAULT NULL COMMENT '权限人',
  136. `associated` bigint NOT NULL COMMENT '任务表id',
  137. `create_time` datetime DEFAULT NULL COMMENT '创建时间',
  138. `create_by` varchar(80) DEFAULT NULL COMMENT '创建人',
  139. `update_time` datetime DEFAULT NULL COMMENT '更新时间',
  140. `del_flag` char(1) DEFAULT '0' COMMENT '删除标志',
  141. `tenant_id` varchar(40) DEFAULT NULL COMMENT '租户id',
  142. PRIMARY KEY (`id`) USING BTREE,
  143. KEY `user_processed_type` (`processed_by`, `type`),
  144. KEY `user_associated` (`associated`) USING BTREE
  145. ) ENGINE = InnoDB COMMENT ='流程用户表';
  146. -- ----------------------------
  147. -- 流程分类表
  148. -- ----------------------------
  149. create table flow_category
  150. (
  151. category_id bigint(20) not null comment '流程分类ID',
  152. tenant_id varchar(20) default '000000' comment '租户编号',
  153. parent_id bigint(20) default 0 comment '父流程分类id',
  154. ancestors varchar(500) default '' comment '祖级列表',
  155. category_name varchar(30) not null comment '流程分类名称',
  156. order_num int(4) default 0 comment '显示顺序',
  157. del_flag char(1) default '0' comment '删除标志(0代表存在 1代表删除)',
  158. create_dept bigint(20) null comment '创建部门',
  159. create_by bigint(20) null comment '创建者',
  160. create_time datetime null comment '创建时间',
  161. update_by bigint(20) null comment '更新者',
  162. update_time datetime null comment '更新时间',
  163. primary key (category_id)
  164. ) engine = innodb comment = '流程分类';
  165. INSERT INTO flow_category values (100, '000000', 0, '0', 'OA审批', 0, '0', 103, 1, sysdate(), null, null);
  166. INSERT INTO flow_category values (101, '000000', 100, '0,100', '假勤管理', 0, '0', 103, 1, sysdate(), null, null);
  167. INSERT INTO flow_category values (102, '000000', 100, '0,100', '人事管理', 1, '0', 103, 1, sysdate(), null, null);
  168. INSERT INTO flow_category values (103, '000000', 101, '0,100,101', '请假', 0, '0', 103, 1, sysdate(), null, null);
  169. INSERT INTO flow_category values (104, '000000', 101, '0,100,101', '出差', 1, '0', 103, 1, sysdate(), null, null);
  170. INSERT INTO flow_category values (105, '000000', 101, '0,100,101', '加班', 2, '0', 103, 1, sysdate(), null, null);
  171. INSERT INTO flow_category values (106, '000000', 101, '0,100,101', '换班', 3, '0', 103, 1, sysdate(), null, null);
  172. INSERT INTO flow_category values (107, '000000', 101, '0,100,101', '外出', 4, '0', 103, 1, sysdate(), null, null);
  173. INSERT INTO flow_category values (108, '000000', 102, '0,100,102', '转正', 1, '0', 103, 1, sysdate(), null, null);
  174. INSERT INTO flow_category values (109, '000000', 102, '0,100,102', '离职', 2, '0', 103, 1, sysdate(), null, null);
  175. -- ----------------------------
  176. -- 请假单信息
  177. -- ----------------------------
  178. create table test_leave
  179. (
  180. id bigint(20) not null comment 'id',
  181. tenant_id varchar(20) default '000000' comment '租户编号',
  182. leave_type varchar(255) not null comment '请假类型',
  183. start_date datetime not null comment '开始时间',
  184. end_date datetime not null comment '结束时间',
  185. leave_days int(10) not null comment '请假天数',
  186. remark varchar(255) null comment '请假原因',
  187. status varchar(255) null comment '状态',
  188. create_dept bigint null comment '创建部门',
  189. create_by bigint null comment '创建者',
  190. create_time datetime null comment '创建时间',
  191. update_by bigint null comment '更新者',
  192. update_time datetime null comment '更新时间',
  193. PRIMARY KEY (id) USING BTREE
  194. ) ENGINE = InnoDB COMMENT = '请假申请表';
  195. -- for AT mode you must to init this sql for you business database. the seata server not need it.
  196. CREATE TABLE IF NOT EXISTS undo_log
  197. (
  198. branch_id BIGINT(20) NOT NULL COMMENT 'branch transaction id',
  199. xid VARCHAR(100) NOT NULL COMMENT 'global transaction id',
  200. context VARCHAR(128) NOT NULL COMMENT 'undo_log context,such as serialization',
  201. rollback_info LONGBLOB NOT NULL COMMENT 'rollback info',
  202. log_status INT(11) NOT NULL COMMENT '0:normal status,1:defense status',
  203. log_created DATETIME(6) NOT NULL COMMENT 'create datetime',
  204. log_modified DATETIME(6) NOT NULL COMMENT 'modify datetime',
  205. UNIQUE KEY ux_undo_log (xid, branch_id)
  206. ) ENGINE = InnoDB COMMENT ='AT transaction mode undo table';