修改内容
This commit is contained in:
45
tradeCattle/grant_all_permissions_to_super_admin.sql
Normal file
45
tradeCattle/grant_all_permissions_to_super_admin.sql
Normal file
@@ -0,0 +1,45 @@
|
||||
-- 为超级管理员(roleId=1)分配所有菜单权限
|
||||
-- 这将解决操作权限管理界面中超级管理员权限未全部打开的问题
|
||||
|
||||
-- 1. 查询当前超级管理员已有的权限
|
||||
SELECT rm.role_id, r.name as role_name, rm.menu_id, m.name as menu_name, m.authority
|
||||
FROM sys_role_menu rm
|
||||
LEFT JOIN sys_role r ON rm.role_id = r.id
|
||||
LEFT JOIN sys_menu m ON rm.menu_id = m.id
|
||||
WHERE rm.role_id = 1 AND m.is_delete = 0
|
||||
ORDER BY m.sort;
|
||||
|
||||
-- 2. 为超级管理员角色分配所有菜单权限
|
||||
-- 使用 INSERT ... ON DUPLICATE KEY UPDATE 避免重复插入
|
||||
INSERT INTO sys_role_menu (role_id, menu_id)
|
||||
SELECT 1, id FROM sys_menu WHERE is_delete = 0
|
||||
ON DUPLICATE KEY UPDATE role_id = role_id;
|
||||
|
||||
-- 3. 验证分配结果
|
||||
SELECT
|
||||
rm.role_id,
|
||||
r.name as role_name,
|
||||
COUNT(rm.menu_id) as menu_count
|
||||
FROM sys_role_menu rm
|
||||
LEFT JOIN sys_role r ON rm.role_id = r.id
|
||||
WHERE rm.role_id = 1
|
||||
GROUP BY rm.role_id, r.name;
|
||||
|
||||
-- 4. 查询总菜单数
|
||||
SELECT COUNT(*) as total_menus FROM sys_menu WHERE is_delete = 0;
|
||||
|
||||
-- 5. 查询超级管理员所有权限详情
|
||||
SELECT
|
||||
rm.role_id,
|
||||
r.name as role_name,
|
||||
m.id as menu_id,
|
||||
m.name as menu_name,
|
||||
m.type,
|
||||
m.authority,
|
||||
m.page_url
|
||||
FROM sys_role_menu rm
|
||||
LEFT JOIN sys_role r ON rm.role_id = r.id
|
||||
LEFT JOIN sys_menu m ON rm.menu_id = m.id
|
||||
WHERE rm.role_id = 1 AND m.is_delete = 0
|
||||
ORDER BY m.parent_id, m.sort;
|
||||
|
||||
Reference in New Issue
Block a user