-- 审批流程多部门关联
|
create table if not exists approve_process_dept
|
(
|
id bigint auto_increment primary key,
|
approve_process_id bigint not null comment '审批流程主键ID',
|
approve_dept_id bigint not null comment '部门ID',
|
approve_dept_name varchar(255) not null comment '部门名称快照',
|
dept_order int not null default 1 comment '部门顺序',
|
delete_flag int not null default 0 comment '逻辑删除标记',
|
create_time datetime null comment '创建时间',
|
unique key uk_approve_process_dept (approve_process_id, approve_dept_id),
|
key idx_approve_process_id (approve_process_id),
|
key idx_approve_dept_id (approve_dept_id)
|
) comment '审批流程部门关联表';
|
|
-- 历史单部门审批数据迁移为关联记录
|
insert into approve_process_dept (approve_process_id, approve_dept_id, approve_dept_name, dept_order, delete_flag, create_time)
|
select p.id, p.approve_dept_id, p.approve_dept_name, 1, 0, now()
|
from approve_process p
|
where p.approve_dept_id is not null
|
and not exists (
|
select 1 from approve_process_dept d
|
where d.approve_process_id = p.id
|
and d.approve_dept_id = p.approve_dept_id
|
);
|