zhibo/Zhibo/admin/sql/fix_home_menu.sql
2025-12-30 16:22:27 +08:00

56 lines
2.3 KiB
SQL
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- ============================================
-- 首页菜单诊断和修复脚本
-- ============================================
-- 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);