1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
| -- 美股交割合约单 + 交割场控设置 — 挂到「股票-显示-美股」(menu_id=1864) 下
| -- 若你库中美股父菜单 id 不是 1864,先查:SELECT menu_id, name FROM tz_sys_menu WHERE name LIKE '%美股%';
| -- 执行后退出后台重新登录
|
| -- 【可选】查看 1864 下现有子菜单
| -- SELECT menu_id, parent_id, name, url, order_num FROM tz_sys_menu WHERE parent_id = 1864;
|
| -- 1) 交割合约单(US)
| 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-pickAddr',
| '',
| 1,
| 'sql',
| IFNULL((SELECT MAX(c.order_num) FROM tz_sys_menu c WHERE c.parent_id = 1864), 0) + 2,
| '1'
| WHERE NOT EXISTS (
| SELECT 1 FROM tz_sys_menu p WHERE p.url = 'us-spots/us-pickAddr'
| );
|
| -- 2) 交割场控设置(美股)
| 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-spots/us-indexImg',
| '',
| 1,
| 'sql',
| IFNULL((SELECT MAX(c.order_num) FROM tz_sys_menu c WHERE c.parent_id = 1864), 0) + 3,
| '1'
| WHERE NOT EXISTS (
| SELECT 1 FROM tz_sys_menu p WHERE p.url = 'us-spots/us-indexImg'
| );
|
| -- 3) 角色授权:已有 1864 权限的角色
| INSERT INTO tz_sys_role_menu (role_id, menu_id)
| SELECT DISTINCT rm.role_id, m.menu_id
| FROM tz_sys_role_menu rm
| CROSS JOIN tz_sys_menu m
| WHERE rm.menu_id = 1864
| AND m.url IN ('us-spots/us-pickAddr', 'us-spots/us-indexImg')
| AND NOT EXISTS (
| SELECT 1 FROM tz_sys_role_menu x WHERE x.role_id = rm.role_id AND x.menu_id = m.menu_id
| );
|
| -- 4) 角色授权:已有 1864 下任意子菜单权限的角色
| INSERT INTO tz_sys_role_menu (role_id, menu_id)
| SELECT DISTINCT rm.role_id, m.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
| CROSS JOIN tz_sys_menu m
| WHERE m.url IN ('us-spots/us-pickAddr', 'us-spots/us-indexImg')
| AND NOT EXISTS (
| SELECT 1 FROM tz_sys_role_menu x WHERE x.role_id = rm.role_id AND x.menu_id = m.menu_id
| );
|
| -- 【验证】角色是否已授权(把 YOUR_ROLE_ID 换成你的角色 id)
| -- SELECT rm.role_id, m.menu_id, m.name, m.url FROM tz_sys_role_menu rm
| -- JOIN tz_sys_menu m ON rm.menu_id = m.menu_id
| -- WHERE m.menu_id IN (1864, 1981, 1982);
|
| -- 【若菜单有、角色无】给管理员角色补授权(示例 role_id=1,请按实际修改)
| -- INSERT INTO tz_sys_role_menu (role_id, menu_id)
| -- SELECT 1, m.menu_id FROM tz_sys_menu m
| -- WHERE m.menu_id IN (1864, 1981, 1982)
| -- AND NOT EXISTS (SELECT 1 FROM tz_sys_role_menu x WHERE x.role_id = 1 AND x.menu_id = m.menu_id);
|
|