56 lines
2.3 KiB
MySQL
56 lines
2.3 KiB
MySQL
|
|
-- ============================================
|
|||
|
|
-- 首页菜单诊断和修复脚本
|
|||
|
|
-- ============================================
|
|||
|
|
|
|||
|
|
-- 1. 首先查看当前菜单表结构
|
|||
|
|
DESCRIBE eb_system_menu;
|
|||
|
|
|
|||
|
|
-- 2. 查看现有的一级菜单(pid=0)
|
|||
|
|
SELECT id, pid, name, icon, component, menu_type, sort, is_show, is_delte
|
|||
|
|
FROM eb_system_menu
|
|||
|
|
WHERE pid = 0
|
|||
|
|
ORDER BY sort DESC, id ASC;
|
|||
|
|
|
|||
|
|
-- 3. 查看是否已存在首页相关菜单
|
|||
|
|
SELECT * FROM eb_system_menu WHERE name LIKE '%首页%' OR name LIKE '%控制台%' OR component LIKE '%home%';
|
|||
|
|
|
|||
|
|
-- 4. 查看当前最大的菜单ID
|
|||
|
|
SELECT MAX(id) as max_id FROM eb_system_menu;
|
|||
|
|
|
|||
|
|
-- 5. 查看角色表
|
|||
|
|
SELECT * FROM eb_system_role WHERE id = 1;
|
|||
|
|
|
|||
|
|
-- 6. 查看当前管理员的角色
|
|||
|
|
SELECT id, account, real_name, roles FROM eb_system_admin LIMIT 5;
|
|||
|
|
|
|||
|
|
-- ============================================
|
|||
|
|
-- 修复步骤(根据诊断结果选择执行)
|
|||
|
|
-- ============================================
|
|||
|
|
|
|||
|
|
-- 方案A:如果首页菜单不存在,插入新记录
|
|||
|
|
-- 注意:先执行上面的查询,确认 id 600, 601 不存在
|
|||
|
|
|
|||
|
|
-- 删除可能存在的旧记录(如果之前插入过)
|
|||
|
|
DELETE FROM eb_system_menu WHERE id IN (600, 601, 789, 790);
|
|||
|
|
DELETE FROM eb_system_role_menu WHERE menu_id IN (600, 601, 789, 790);
|
|||
|
|
|
|||
|
|
-- 插入首页一级菜单(sort=300 确保排在最前面)
|
|||
|
|
INSERT INTO `eb_system_menu` (`id`, `pid`, `name`, `icon`, `perms`, `component`, `menu_type`, `sort`, `is_show`, `is_delte`, `create_time`, `update_time`)
|
|||
|
|
VALUES (600, 0, '首页', 'el-icon-s-home', '', '/home', 'M', 300, 1, 0, NOW(), NOW());
|
|||
|
|
|
|||
|
|
-- 插入控制台子菜单
|
|||
|
|
INSERT INTO `eb_system_menu` (`id`, `pid`, `name`, `icon`, `perms`, `component`, `menu_type`, `sort`, `is_show`, `is_delte`, `create_time`, `update_time`)
|
|||
|
|
VALUES (601, 600, '控制台', '', 'admin:dashboard:index', '/home/index', 'C', 0, 1, 0, NOW(), NOW());
|
|||
|
|
|
|||
|
|
-- 为角色1(超级管理员)添加菜单权限(如果不是超管角色需要这个)
|
|||
|
|
INSERT INTO `eb_system_role_menu` (`rid`, `menu_id`) VALUES (1, 600);
|
|||
|
|
INSERT INTO `eb_system_role_menu` (`rid`, `menu_id`) VALUES (1, 601);
|
|||
|
|
|
|||
|
|
-- 7. 验证插入结果
|
|||
|
|
SELECT id, pid, name, icon, component, menu_type, sort, is_show, is_delte
|
|||
|
|
FROM eb_system_menu
|
|||
|
|
WHERE id IN (600, 601);
|
|||
|
|
|
|||
|
|
-- 8. 验证角色菜单关联
|
|||
|
|
SELECT * FROM eb_system_role_menu WHERE menu_id IN (600, 601);
|