-- ============================================================================= -- 预签约订单菜单:插入 sys_menu,并授权给已有「采集协议单」的角色 -- 测试库 zkxw-sc 已确认原先没有该菜单行。 -- 菜单位置:采集协议单 之下、缴费信息/样本信息管理 之上 -- id: 50000000000000000000000000000020 -- perms: cell-storage:presign-order:list -- ============================================================================= INSERT INTO sys_menu ( id, menu_name, parent_id, menu_type, path, component, perms, is_frame, visible, status, tenant_no, order_num, remark, create_by, create_dept_id, create_time, update_by, update_time, del_flag ) SELECT '50000000000000000000000000000020', '预签约订单', 'CEL00000000000000000000000000001', 'C', 'presign-order', '/cell-storage/presign-order/index', 'cell-storage:presign-order:list', 1, '1', '1', 'zkxw', 3, '细胞存储:预签约订单', NULL, '', NOW(), NULL, NOW(), 0 FROM DUAL WHERE NOT EXISTS ( SELECT 1 FROM sys_menu m WHERE m.del_flag = 0 AND ( m.id = '50000000000000000000000000000020' OR m.perms = 'cell-storage:presign-order:list' ) ); -- 已有采集协议单权限的角色补授权(幂等) INSERT INTO sys_role_menu ( id, role_id, menu_id, tenant_no, order_num, remark, create_by, create_dept_id, create_time, update_by, update_time, del_flag ) SELECT MD5(CONCAT(r.id, '|50000000000000000000000000000020')), r.id, '50000000000000000000000000000020', IFNULL(NULLIF(r.tenant_no, ''), 'zkxw'), 0, 'grant presign-order to protocol-audit roles', NULL, '', NOW(), NULL, NOW(), 0 FROM sys_role r INNER JOIN sys_role_menu rm ON rm.role_id = r.id AND rm.menu_id = '50000000000000000000000000000003' AND rm.del_flag = 0 WHERE r.del_flag = 0 AND NOT EXISTS ( SELECT 1 FROM sys_role_menu x WHERE x.role_id = r.id AND x.menu_id = '50000000000000000000000000000020' AND x.del_flag = 0 );