ry-workflow.sql 18 KB

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