-- ============================================================= -- 审批流双层绑定重构 v2 - 增量迁移 -- -- 场景:上一版 create_approval_binding.sql 已建表但含 condition_expr/priority -- 本次将绑定层简化为纯关联,流程表加 apply_dept_ids 部门作用域。 -- -- 执行顺序: -- 1) DROP + 重建绑定表(结构变简,无法原地迁移) -- 2) 后端流程表补 apply_dept_ids -- ============================================================= -- 1. 绑定表:先删后建(如已有绑定数据请手工备份后再执行) DROP TABLE IF EXISTS `yz_approval_binding`; CREATE TABLE `yz_approval_binding` ( `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, `scope` TINYINT NOT NULL DEFAULT 1 COMMENT '1租户 2平台', `tid` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '租户ID(平台侧为0)', `biz_type` VARCHAR(50) NOT NULL DEFAULT '' COMMENT '功能/单据类型:reimburse/bid/domain', `flow_id` BIGINT UNSIGNED NOT NULL DEFAULT 0 COMMENT '绑定的审批流ID', `flow_code` VARCHAR(64) NOT NULL DEFAULT '' COMMENT '审批流编号(冗余)', `remark` VARCHAR(200) NOT NULL DEFAULT '' COMMENT '备注', `is_deleted` TINYINT NOT NULL DEFAULT 0, `create_time` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, `update_time` DATETIME DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY `uk_scope_tid_biz_flow` (`scope`,`tid`,`biz_type`,`flow_id`), KEY `idx_flow` (`flow_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='审批流功能绑定(biz_type↔flow 多对多)'; -- 2. 后端流程表:补部门作用域列 ALTER TABLE `yz_backend_approval_flow` ADD COLUMN `apply_dept_ids` VARCHAR(500) NOT NULL DEFAULT '' COMMENT '适用部门ID列表 CSV,空=全公司通用' AFTER `flow_code`;