# 知识库管理菜单 - 最终解决步骤 ## 📊 当前状态分析 根据验证SQL的结果: ✅ **菜单已添加**:知识库管理菜单存在 ✅ **权限已分配**:超级管理员角色已有权限 ❌ **菜单重复**:存在2组重复菜单(2209和2214) ❌ **菜单未显示**:需要退出登录重新登录 ## 🎯 解决方案 ### 步骤1:清理重复菜单 执行 `清理重复菜单.sql`: ```sql -- 删除重复菜单的权限 DELETE FROM sys_role_menu WHERE menu_id IN (2214, 2215, 2216, 2217, 2218); -- 删除重复的子菜单 DELETE FROM sys_menu WHERE menu_id IN (2215, 2216, 2217, 2218); -- 删除重复的主菜单 DELETE FROM sys_menu WHERE menu_id = 2214; ``` ### 步骤2:退出登录 ⭐ 最重要 **必须执行此步骤!** 1. 点击右上角用户名 2. 选择"退出登录" 3. 返回登录页面 ### 步骤3:重新登录 1. 输入用户名和密码 2. 登录系统 3. 查看左侧菜单 ### 步骤4:验证菜单 应该能看到: ``` 心理测评管理 ├── 在线用户 ├── 系统监控 ├── ... └── 知识库管理 ← 应该出现在这里 ``` ## 🔍 如果还是不显示 ### 方法1:强制刷新 1. 按 `Ctrl + Shift + Delete` 2. 选择"清除缓存" 3. 关闭浏览器 4. 重新打开并登录 ### 方法2:使用无痕模式 1. 按 `Ctrl + Shift + N`(Chrome)或 `Ctrl + Shift + P`(Firefox) 2. 在无痕窗口中访问系统 3. 登录查看 ### 方法3:检查菜单配置 执行验证SQL: ```sql SELECT menu_id, menu_name, parent_id, path, visible, status FROM sys_menu WHERE menu_name = '知识库管理'; ``` 确保: - `visible` = 0(显示) - `status` = 0(正常) - `parent_id` = 2000(心理测评管理的ID) ### 方法4:直接访问 如果菜单还是不显示,可以直接访问: ``` http://localhost:30081/#/psychology/knowledge ``` 将此链接添加到浏览器收藏夹。 ## 📝 完整的清理和重建脚本 如果上述方法都不行,执行完整重建: ```sql -- 完全清理 DELETE FROM sys_role_menu WHERE menu_id IN ( SELECT menu_id FROM sys_menu WHERE menu_name LIKE '知识库%' ); DELETE FROM sys_menu WHERE menu_name LIKE '知识库%'; -- 重新添加(只添加一次) INSERT INTO sys_menu ( menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark ) VALUES ( '知识库管理', 2000, 8, 'knowledge', 'psychology/knowledge/index', 1, 0, 'C', '0', '0', 'psychology:knowledge:list', 'documentation', 'admin', NOW(), 'AI知识库文档管理' ); SET @menu_id = LAST_INSERT_ID(); INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time) VALUES ('知识库查询', @menu_id, 1, '#', '', 1, 0, 'F', '0', '0', 'psychology:knowledge:query', '#', 'admin', NOW()), ('知识库上传', @menu_id, 2, '#', '', 1, 0, 'F', '0', '0', 'psychology:knowledge:upload', '#', 'admin', NOW()), ('知识库删除', @menu_id, 3, '#', '', 1, 0, 'F', '0', '0', 'psychology:knowledge:remove', '#', 'admin', NOW()), ('知识库重建', @menu_id, 4, '#', '', 1, 0, 'F', '0', '0', 'psychology:knowledge:rebuild', '#', 'admin', NOW()); INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu WHERE menu_name LIKE '知识库%'; -- 验证 SELECT '重建完成!请退出登录后重新登录' AS message; ``` ## ⚠️ 重要提示 **菜单权限在登录时加载,不会自动刷新!** 即使SQL执行成功,如果不退出登录重新登录,菜单也不会显示。 ## ✅ 检查清单 - [ ] 执行清理重复菜单SQL - [ ] 验证只剩一组菜单(menu_id=2209) - [ ] **退出登录** - [ ] **重新登录** - [ ] 清除浏览器缓存 - [ ] 查看左侧菜单 - [ ] 如果还是不显示,使用无痕模式 - [ ] 如果还是不显示,直接访问URL ## 🎉 成功标志 当你看到左侧菜单中出现"知识库管理",并且点击后能正常显示页面,就说明配置成功了! --- **记住:退出登录重新登录是关键!** 🔑