mirror of
https://gitee.com/dromara/RuoYi-Vue-Plus.git
synced 2026-11-02 13:31:49 +08:00
update 更新warmflow升级sql
This commit is contained in:
parent
a8b1bea7b7
commit
c8be92b724
@ -1,7 +1,8 @@
|
||||
-- ============================================================
|
||||
-- RuoYi-Vue-Plus 6.0.0 → 6.1.0 工作流升级脚本(MySQL)
|
||||
-- 对齐 warm-flow 2.1.0:删除废弃的节点版本列、状态字典改为小写英文编码
|
||||
-- 对齐 warm-flow 2.1.0:新增节点/定义配置与事件列、迁移状态编码及事件等待表
|
||||
-- 只给存量库执行;全新建库直接用 script/sql/ry_workflow.sql,无需本脚本
|
||||
-- 请在启动已开启 warm-flow.timer-enabled 的 2.1.0 应用之前,按顺序执行本脚本
|
||||
-- 执行完到「系统管理 → 缓存管理 → 刷新缓存」刷一次字典缓存,否则前端仍显示旧文案
|
||||
-- ============================================================
|
||||
|
||||
@ -9,7 +10,57 @@
|
||||
-- 旧全量脚本里该列是 NOT NULL 且无默认值,引擎写节点会报「doesn't have a default value」
|
||||
ALTER TABLE `flow_node` DROP COLUMN `version`;
|
||||
|
||||
-- 2. 任务状态字典改为引擎 TaskStatus 的 7 个码,外加撤回归档留痕的 cancel
|
||||
-- 2. 补齐 2.1.0 的定义、服务任务、抄送与事件节点配置列
|
||||
ALTER TABLE `flow_definition`
|
||||
ADD COLUMN `def_config` text NULL COMMENT '流程定义配置(自动审批等引擎配置与自定义扩展属性json)' AFTER `ext`;
|
||||
|
||||
ALTER TABLE `flow_node`
|
||||
ADD COLUMN `node_config` text NULL COMMENT '节点配置(服务任务、事件等引擎节点配置json)' AFTER `ext`,
|
||||
ADD COLUMN `event_type` varchar(40) NULL COMMENT '事件类型' AFTER `node_config`,
|
||||
ADD COLUMN `event_name` varchar(100) NULL COMMENT '事件名称(消息事件使用)' AFTER `event_type`,
|
||||
ADD COLUMN `attached_to_node_code` varchar(100) NULL COMMENT '边界事件附着的任务节点编码' AFTER `event_name`,
|
||||
ADD COLUMN `interrupting` tinyint(1) NULL COMMENT '边界事件是否中断型' AFTER `attached_to_node_code`;
|
||||
|
||||
ALTER TABLE `flow_his_task`
|
||||
ADD COLUMN `node_config` text NULL COMMENT '节点配置(服务任务、事件等引擎节点配置json)' AFTER `ext`;
|
||||
|
||||
-- 3. 实例、任务和协作状态改用独立的字符串编码
|
||||
ALTER TABLE `flow_instance`
|
||||
MODIFY COLUMN `flow_status` varchar(20) NOT NULL COMMENT '实例状态(draft waiting termination invalid cancel finish back restart)';
|
||||
ALTER TABLE `flow_task`
|
||||
MODIFY COLUMN `flow_status` varchar(20) NOT NULL COMMENT '任务状态(pending pass auto_pass back invalid take_back copy)';
|
||||
ALTER TABLE `flow_his_task`
|
||||
MODIFY COLUMN `flow_status` varchar(20) NOT NULL COMMENT '任务状态(pending pass auto_pass back invalid take_back copy;撤回归档为 cancel)',
|
||||
MODIFY COLUMN `cooperate_type` varchar(20) NOT NULL DEFAULT 'none' COMMENT '协作方式(none transfer delegate add_signer remove_signer)';
|
||||
ALTER TABLE `flow_user`
|
||||
MODIFY COLUMN `type` char(1) NOT NULL COMMENT '人员类型(1审批人 2转办人 3委托人 4抄送人)',
|
||||
MODIFY COLUMN `associated` bigint NOT NULL COMMENT '关联id(待办任务id;抄送人记录为 flow_his_task.id)';
|
||||
|
||||
-- 旧数字码只在命中时转换,已经使用新编码的数据不会改变
|
||||
UPDATE flow_instance SET flow_status = CASE flow_status
|
||||
WHEN '0' THEN 'draft' WHEN '1' THEN 'waiting' WHEN '4' THEN 'termination'
|
||||
WHEN '5' THEN 'invalid' WHEN '6' THEN 'cancel' WHEN '7' THEN 'waiting'
|
||||
WHEN '8' THEN 'finish' WHEN '9' THEN 'back' WHEN '12' THEN 'restart'
|
||||
WHEN '13' THEN 'draft' END
|
||||
WHERE flow_status IN ('0', '1', '4', '5', '6', '7', '8', '9', '12', '13');
|
||||
|
||||
UPDATE flow_task SET flow_status = CASE flow_status
|
||||
WHEN '1' THEN 'pending' WHEN '2' THEN 'pass' WHEN '8' THEN 'pass'
|
||||
WHEN '9' THEN 'back' WHEN '10' THEN 'invalid' WHEN '11' THEN 'take_back' END
|
||||
WHERE flow_status IN ('1', '2', '8', '9', '10', '11');
|
||||
|
||||
UPDATE flow_his_task SET flow_status = CASE flow_status
|
||||
WHEN '1' THEN 'pending' WHEN '2' THEN 'pass' WHEN '8' THEN 'pass'
|
||||
WHEN '9' THEN 'back' WHEN '10' THEN 'invalid' WHEN '11' THEN 'take_back' END
|
||||
WHERE flow_status IN ('1', '2', '8', '9', '10', '11');
|
||||
|
||||
UPDATE flow_his_task SET cooperate_type = CASE cooperate_type
|
||||
WHEN '0' THEN 'none' WHEN '1' THEN 'none' WHEN '2' THEN 'transfer'
|
||||
WHEN '3' THEN 'delegate' WHEN '4' THEN 'none' WHEN '5' THEN 'none'
|
||||
WHEN '6' THEN 'add_signer' WHEN '7' THEN 'remove_signer' END
|
||||
WHERE cooperate_type IN ('0', '1', '2', '3', '4', '5', '6', '7');
|
||||
|
||||
-- 4. 任务状态字典改为引擎 TaskStatus 的 7 个码,外加撤回归档留痕的 cancel
|
||||
DELETE FROM sys_dict_data WHERE dict_type = 'wf_task_status';
|
||||
INSERT INTO sys_dict_data VALUES (1761600000000000060, 1, '待审批', 'pending', 'wf_task_status', '', 'primary', 'N', 1761000000000000103, 1761100000000000001, sysdate(), NULL, NULL, '待审批');
|
||||
INSERT INTO sys_dict_data VALUES (1761600000000000049, 2, '通过', 'pass', 'wf_task_status', '', 'success', 'N', 1761000000000000103, 1761100000000000001, sysdate(), NULL, NULL, '通过');
|
||||
@ -29,10 +80,10 @@ INSERT INTO sys_dict_data VALUES (1761600000000000067, 12, '减签', 'remove_sig
|
||||
-- add_signer / remove_signer),timeout 是 flow_event_wait 的状态,都不是任务状态。
|
||||
-- take_back 目前没有写入方,是留给「拿回」功能的占位,别当冗余删掉。
|
||||
|
||||
-- 3. 实例状态字典补 restart(引擎 FlowStatus 有,字典缺)
|
||||
-- 5. 实例状态字典补 restart(引擎 FlowStatus 有,字典缺)
|
||||
INSERT INTO sys_dict_data VALUES (1761600000000000063, 8, '重启', 'restart', 'wf_business_status', '', 'info', 'N', 1761000000000000103, 1761100000000000001, sysdate(), NULL, NULL, '重启');
|
||||
|
||||
-- 4. 事件等待表:定时 / 消息等需要「等待」的事件统一落在此表(与全量脚本一致)。
|
||||
-- 6. 事件等待表:定时 / 消息等需要「等待」的事件统一落在此表(与全量脚本一致)。
|
||||
-- 6.0.0 存量库没有这张表,不建表则定时器与定时任务页面全部不可用
|
||||
-- 注意:建表后还需在 application.yml 打开 warm-flow.timer-enabled: true,引擎才会扫描本表
|
||||
CREATE TABLE IF NOT EXISTS `flow_event_wait`
|
||||
@ -73,7 +124,7 @@ CREATE TABLE IF NOT EXISTS `flow_event_wait`
|
||||
KEY `event_wait_def_node_status` (`definition_id`, `node_code`, `status`) USING BTREE
|
||||
) ENGINE = InnoDB COMMENT ='事件等待表';
|
||||
|
||||
-- 5. 「流程监控」下补「定时任务」菜单 + 查询/手动补发按钮(与 script/sql/ry_workflow.sql 全量脚本一致)
|
||||
-- 7. 「流程监控」下补「定时任务」菜单 + 查询/手动补发按钮(与 script/sql/ry_workflow.sql 全量脚本一致)
|
||||
-- 先删后插保证可重复执行;重新执行后记得给角色重新勾选按钮权限
|
||||
DELETE FROM sys_menu WHERE menu_id IN (1761400000000011901, 1761400000000011902, 1761400000000011903);
|
||||
insert into sys_menu values (1761400000000011901, '定时任务', 1761400000000011630, 3, 'timer', 'workflow/timer/index', '', 'N', 'N', 'C', '0', '0', 'workflow:eventWait:list', 'time', '', '', 1761000000000000103, 1761100000000000001, sysdate(), null, null, '定时任务与事件等待监控菜单');
|
||||
|
||||
Loading…
Reference in New Issue
Block a user