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
| -- 卡片管理/白名单用户管理-批量解绑 按钮权限增量脚本
| -- 说明:本功能无表结构变更(复用 t_charging_card / t_app_user_whitelist 的 fleet_id 列),
| -- 仅在 charging_pile_other 逻辑库新增按钮权限。
| -- 幂等:已存在同名 perms 时自动跳过,可重复执行。
|
| USE charging_pile_other;
|
| -- 卡片管理-批量解绑按钮权限;父菜单按现有卡片管理菜单定位(历史数据可能存在多个节点,逐一定位均已覆盖)。
| INSERT INTO `sys_menu`
| (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
| SELECT permissions.menu_name, parent.menu_id, permissions.order_num, '#', '', '', 1, 0, 'F', '0', '0', permissions.perms, '#', 'admin', NOW(), '', NULL, ''
| FROM `sys_menu` parent
| JOIN (
| SELECT '批量解绑' AS menu_name, 9 AS order_num, '/chargingCard/unbind' AS perms
| ) permissions
| WHERE parent.perms = '/chargingCard/list'
| AND NOT EXISTS (
| SELECT 1 FROM `sys_menu` existing WHERE existing.perms = permissions.perms
| );
|
| -- 白名单用户管理-批量解绑按钮权限。
| INSERT INTO `sys_menu`
| (`menu_name`, `parent_id`, `order_num`, `path`, `component`, `query`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`)
| SELECT permissions.menu_name, parent.menu_id, permissions.order_num, '#', '', '', 1, 0, 'F', '0', '0', permissions.perms, '#', 'admin', NOW(), '', NULL, ''
| FROM `sys_menu` parent
| JOIN (
| SELECT '批量解绑' AS menu_name, 10 AS order_num, '/appUserWhitelist/unbind' AS perms
| ) permissions
| WHERE parent.perms = '/appUserWhitelist/list'
| AND NOT EXISTS (
| SELECT 1 FROM `sys_menu` existing WHERE existing.perms = permissions.perms
| );
|
| -- 默认仅授予管理员角色;其他角色由后台按职责单独授权。
| INSERT INTO `sys_role_menu` (`role_id`, `menu_id`)
| SELECT 1, child.menu_id
| FROM `sys_menu` child
| WHERE child.parent_id = (
| SELECT parent.menu_id FROM `sys_menu` parent WHERE parent.perms = '/chargingCard/list' LIMIT 1
| )
| AND child.perms = '/chargingCard/unbind'
| AND NOT EXISTS (
| SELECT 1 FROM `sys_role_menu` existing
| WHERE existing.role_id = 1 AND existing.menu_id = child.menu_id
| );
|
| INSERT INTO `sys_role_menu` (`role_id`, `menu_id`)
| SELECT 1, child.menu_id
| FROM `sys_menu` child
| WHERE child.parent_id = (
| SELECT parent.menu_id FROM `sys_menu` parent WHERE parent.perms = '/appUserWhitelist/list' LIMIT 1
| )
| AND child.perms = '/appUserWhitelist/unbind'
| AND NOT EXISTS (
| SELECT 1 FROM `sys_role_menu` existing
| WHERE existing.role_id = 1 AND existing.menu_id = child.menu_id
| );
|
|