60 lines
2.5 KiB
SQL
60 lines
2.5 KiB
SQL
-- =====================================================
|
||
-- 修复拉黑菜单 - 最终版
|
||
-- =====================================================
|
||
|
||
-- 1. 查看表结构
|
||
DESC eb_system_menu;
|
||
|
||
-- 2. 查看社交互动菜单
|
||
SELECT id, pid, `name`, component, menu_type, sort, is_show FROM eb_system_menu WHERE `name` = '社交互动';
|
||
|
||
-- 3. 查看群组管理作为参考(它能正常显示)
|
||
SELECT * FROM eb_system_menu WHERE `name` = '群组管理';
|
||
|
||
-- 4. 查看现有的拉黑菜单
|
||
SELECT * FROM eb_system_menu WHERE `name` IN ('用户拉黑', '房间拉黑');
|
||
|
||
-- 5. 删除旧的拉黑菜单记录
|
||
DELETE FROM eb_system_menu WHERE `name` = '用户拉黑';
|
||
DELETE FROM eb_system_menu WHERE `name` = '房间拉黑';
|
||
|
||
-- 6. 获取社交互动的ID
|
||
SET @social_id = (SELECT id FROM eb_system_menu WHERE `name` = '社交互动' AND menu_type = 'M' LIMIT 1);
|
||
SELECT @social_id as '社交互动ID';
|
||
|
||
-- 7. 获取群组管理的sort值,在其后面添加
|
||
SET @group_sort = (SELECT sort FROM eb_system_menu WHERE `name` = '群组管理' LIMIT 1);
|
||
SELECT @group_sort as '群组管理排序';
|
||
|
||
-- 8. 插入用户拉黑菜单(参考群组管理的格式)
|
||
INSERT INTO eb_system_menu (`pid`, `name`, `icon`, `perms`, `component`, `menu_type`, `sort`, `is_show`)
|
||
VALUES (@social_id, '用户拉黑', '', 'admin:blacklist:user:list', '/socialManage/blacklist/user', 'C', IFNULL(@group_sort, 0) + 1, 1);
|
||
|
||
SET @user_blacklist_id = LAST_INSERT_ID();
|
||
SELECT @user_blacklist_id as '用户拉黑菜单ID';
|
||
|
||
-- 9. 插入房间拉黑菜单
|
||
INSERT INTO eb_system_menu (`pid`, `name`, `icon`, `perms`, `component`, `menu_type`, `sort`, `is_show`)
|
||
VALUES (@social_id, '房间拉黑', '', 'admin:blacklist:room:list', '/socialManage/blacklist/room', 'C', IFNULL(@group_sort, 0) + 2, 1);
|
||
|
||
SET @room_blacklist_id = LAST_INSERT_ID();
|
||
SELECT @room_blacklist_id as '房间拉黑菜单ID';
|
||
|
||
-- 10. 为管理员角色添加权限(rid=1是超级管理员)
|
||
INSERT IGNORE INTO eb_system_role_menu (rid, menu_id) VALUES (1, @user_blacklist_id);
|
||
INSERT IGNORE INTO eb_system_role_menu (rid, menu_id) VALUES (1, @room_blacklist_id);
|
||
|
||
-- 11. 验证结果
|
||
SELECT '=== 社交互动下所有子菜单 ===' as info;
|
||
SELECT id, pid, `name`, component, sort, is_show, menu_type
|
||
FROM eb_system_menu
|
||
WHERE pid = @social_id
|
||
ORDER BY sort;
|
||
|
||
-- 12. 验证权限
|
||
SELECT '=== 拉黑菜单权限 ===' as info;
|
||
SELECT rm.rid, rm.menu_id, m.`name`, m.component
|
||
FROM eb_system_role_menu rm
|
||
JOIN eb_system_menu m ON rm.menu_id = m.id
|
||
WHERE m.`name` IN ('用户拉黑', '房间拉黑');
|