Files
shanxia2.0/docs/sql/migrate_pl_archive_group_20261004.sql
T
2026-10-05 12:57:51 +08:00

88 lines
2.3 KiB
SQL

-- 运输管理:在「运输计划」与「库存管理」之间新增「运输归档」分组,
-- 并将「运输计划归档」从运输计划下改挂到运输归档下。
-- 2026-10-04
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 * FROM (
SELECT
'PL_GROUP_ARCHIVE' AS `id`,
'运输归档' AS `menu_name`,
'PL_MENU_ROOT' AS `parent_id`,
'M' AS `menu_type`,
'archive-module' AS `path`,
NULL AS `component`,
NULL AS `perms`,
1 AS `is_frame`,
'1' AS `visible`,
'1' AS `status`,
'shanxia2.0' AS `tenant_no`,
2 AS `order_num`,
'运输归档分组' AS `remark`,
'system' AS `create_by`,
'' AS `create_dept_id`,
NOW() AS `create_time`,
NULL AS `update_by`,
NOW() AS `update_time`,
0 AS `del_flag`
) AS tmp
WHERE NOT EXISTS (
SELECT 1 FROM `sys_menu` WHERE `id` = 'PL_GROUP_ARCHIVE'
);
UPDATE `sys_menu`
SET `order_num` = 3, `update_time` = NOW()
WHERE `id` = 'PL_GROUP_STOCK' AND `del_flag` = 0;
UPDATE `sys_menu`
SET `parent_id` = 'PL_GROUP_ARCHIVE', `order_num` = 1, `update_time` = NOW()
WHERE `id` = 'PL_PLAN_ARCHIVE' AND `del_flag` = 0;
UPDATE `sys_menu`
SET `order_num` = 2, `update_time` = NOW()
WHERE `id` = 'PL_PLAN_CONTRACT' AND `del_flag` = 0;
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(src.`role_id`, '-', src.`group_menu_id`)),
src.`role_id`,
src.`group_menu_id`,
src.`tenant_no`,
0,
NULL,
src.`create_by`,
'',
NOW(),
src.`create_by`,
NOW(),
0
FROM (
SELECT DISTINCT
rm.`role_id`,
rm.`tenant_no`,
rm.`create_by`,
'PL_GROUP_ARCHIVE' AS `group_menu_id`
FROM `sys_role_menu` rm
WHERE rm.`del_flag` = 0
AND rm.`menu_id` IN (
'PL_PLAN_ARCHIVE',
'PL_PLAN_ARCHIVE_Q',
'PL_PLAN_ARCHIVE_E',
'PL_PLAN_ARCHIVE_A',
'PL_PLAN_ARCHIVE_PRICE'
)
) src
WHERE NOT EXISTS (
SELECT 1
FROM `sys_role_menu` exist
WHERE exist.`role_id` = src.`role_id`
AND exist.`menu_id` = src.`group_menu_id`
AND exist.`del_flag` = 0
);