-- 设备管理 -> 能量链管理菜单及查询权限 SET @device_management_id := 258; 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, remark) SELECT '能量链管理', @device_management_id, 3, '/deviceManagement/energyChain/list', 'deviceManagement/energyChain', NULL, 1, 0, 'C', '0', 0, '/deviceManagement/energyChain', '#', 'admin', NOW(), '能量链管理页面' WHERE EXISTS (SELECT 1 FROM sys_menu WHERE menu_id = @device_management_id AND menu_type = 'M') AND NOT EXISTS ( SELECT 1 FROM sys_menu WHERE parent_id = @device_management_id AND (path = '/deviceManagement/energyChain/list' OR perms = '/deviceManagement/energyChain') ); SET @energy_chain_id := ( SELECT menu_id FROM sys_menu WHERE parent_id = @device_management_id AND (path = '/deviceManagement/energyChain/list' OR perms = '/deviceManagement/energyChain') ORDER BY menu_id LIMIT 1 ); UPDATE sys_menu SET menu_name = '能量链管理', order_num = 3, path = '/deviceManagement/energyChain/list', component = 'deviceManagement/energyChain', menu_type = 'C', visible = '0', status = 0, perms = '/deviceManagement/energyChain', update_time = NOW(), remark = '能量链管理页面' WHERE menu_id = @energy_chain_id; 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, remark) SELECT '能量链查询', @energy_chain_id, 1, '', NULL, NULL, 1, 0, 'F', '0', 0, '/deviceManagement/energyChain/select', '#', 'admin', NOW(), '能量链查询按钮权限' WHERE @energy_chain_id IS NOT NULL AND NOT EXISTS (SELECT 1 FROM sys_menu WHERE parent_id = @energy_chain_id AND perms = '/deviceManagement/energyChain/select'); 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, remark) SELECT '能量链新增', @energy_chain_id, 2, '', NULL, NULL, 1, 0, 'F', '0', 0, '/deviceManagement/energyChain/add', '#', 'admin', NOW(), '能量链新增按钮权限' WHERE @energy_chain_id IS NOT NULL AND NOT EXISTS (SELECT 1 FROM sys_menu WHERE parent_id = @energy_chain_id AND perms = '/deviceManagement/energyChain/add'); 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, remark) SELECT '能量链修改', @energy_chain_id, 3, '', NULL, NULL, 1, 0, 'F', '0', 0, '/deviceManagement/energyChain/update', '#', 'admin', NOW(), '能量链修改按钮权限' WHERE @energy_chain_id IS NOT NULL AND NOT EXISTS (SELECT 1 FROM sys_menu WHERE parent_id = @energy_chain_id AND perms = '/deviceManagement/energyChain/update'); 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, remark) SELECT '能量链删除', @energy_chain_id, 4, '', NULL, NULL, 1, 0, 'F', '0', 0, '/deviceManagement/energyChain/del', '#', 'admin', NOW(), '能量链删除按钮权限' WHERE @energy_chain_id IS NOT NULL AND NOT EXISTS (SELECT 1 FROM sys_menu WHERE parent_id = @energy_chain_id AND perms = '/deviceManagement/energyChain/del'); -- 已拥有设备管理或储能管理的角色同步获得能量链管理权限。 INSERT IGNORE INTO sys_role_menu (role_id, menu_id) SELECT source.role_id, target.menu_id FROM (SELECT DISTINCT role_id FROM sys_role_menu WHERE menu_id IN (258, 259, 264)) source CROSS JOIN ( SELECT menu_id FROM sys_menu WHERE menu_id = 258 OR menu_id = @energy_chain_id OR parent_id = @energy_chain_id ) target; INSERT IGNORE INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu WHERE menu_id = 258 OR menu_id = @energy_chain_id OR parent_id = @energy_chain_id;