60 lines
2.5 KiB
MySQL
60 lines
2.5 KiB
MySQL
|
|
-- =====================================================
|
|||
|
|
-- 修复拉黑菜单 - 最终版
|
|||
|
|
-- =====================================================
|
|||
|
|
|
|||
|
|
-- 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 ('用户拉黑', '房间拉黑');
|