-- 盘前配置菜单 — 挂到「股票-显示-美股」(menu_id=1864) 下
|
-- 执行后退出后台重新登录
|
|
-- 【可选】查看 1864 下现有子菜单
|
-- SELECT menu_id, parent_id, name, url, order_num FROM tz_sys_menu WHERE parent_id = 1864;
|
|
-- 1) 新增盘前菜单
|
INSERT INTO tz_sys_menu (menu_id, parent_id, name, url, perms, type, icon, order_num, app_type)
|
SELECT
|
(SELECT IFNULL(MAX(s.menu_id), 0) + 1 FROM tz_sys_menu s),
|
1864,
|
'盘前配置(US)',
|
'us-spots/us-pre-market-config',
|
'',
|
1,
|
'bianji',
|
IFNULL((SELECT MAX(c.order_num) FROM tz_sys_menu c WHERE c.parent_id = 1864), 0) + 1,
|
'1'
|
WHERE NOT EXISTS (
|
SELECT 1 FROM tz_sys_menu p
|
WHERE p.url = 'us-spots/us-pre-market-config'
|
OR (p.parent_id = 1864 AND p.name = '盘前配置(US)')
|
);
|
|
-- 2) 角色授权:已有「股票-显示-美股」(1864) 权限的角色
|
INSERT INTO tz_sys_role_menu (role_id, menu_id)
|
SELECT DISTINCT rm.role_id, pre.menu_id
|
FROM tz_sys_role_menu rm
|
INNER JOIN tz_sys_menu pre ON pre.url = 'us-spots/us-pre-market-config'
|
WHERE rm.menu_id = 1864
|
AND NOT EXISTS (
|
SELECT 1 FROM tz_sys_role_menu x
|
WHERE x.role_id = rm.role_id AND x.menu_id = pre.menu_id
|
);
|
|
-- 3) 角色授权:已有 1864 下任意子菜单权限的角色
|
INSERT INTO tz_sys_role_menu (role_id, menu_id)
|
SELECT DISTINCT rm.role_id, pre.menu_id
|
FROM tz_sys_role_menu rm
|
INNER JOIN tz_sys_menu child ON rm.menu_id = child.menu_id AND child.parent_id = 1864
|
INNER JOIN tz_sys_menu pre ON pre.url = 'us-spots/us-pre-market-config'
|
WHERE NOT EXISTS (
|
SELECT 1 FROM tz_sys_role_menu x
|
WHERE x.role_id = rm.role_id AND x.menu_id = pre.menu_id
|
);
|
|
-- 【验证】
|
-- SELECT menu_id, parent_id, name, url FROM tz_sys_menu WHERE parent_id = 1864;
|