zhibo/Zhibo/admin/sql/fix_home_menu_v2.sql

48 lines
1.9 KiB
MySQL
Raw Normal View History

-- ============================================
-- 首页菜单修复脚本 v2
-- 用于确保侧边栏"首页"菜单能正确跳转到主页
-- ============================================
-- 1. 查看当前一级菜单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;
-- 2. 查看是否已存在首页相关菜单
SELECT * FROM eb_system_menu
WHERE name IN ('首页', '控制台', '主页')
OR component IN ('/dashboard', '/home', '/home/index');
-- ============================================
-- 修复方案更新现有首页菜单的component为/dashboard
-- ============================================
-- 方案A如果首页菜单存在但component不正确更新它
UPDATE eb_system_menu
SET component = '/dashboard'
WHERE name IN ('首页', '控制台', '主页')
AND (component IS NULL OR component = '' OR component = '/home' OR component = '/home/index');
-- 方案B如果首页菜单不存在插入新记录
-- 注意:先执行上面的查询,确认首页菜单是否存在
-- 检查是否需要插入(如果不存在首页菜单)
-- 如果上面的查询结果为空,执行以下插入语句:
-- 获取当前最大的菜单ID
SELECT MAX(id) as max_id FROM eb_system_menu;
-- 插入首页菜单sort=300 确保排在最前面)
-- 注意请根据实际情况修改id值确保不与现有记录冲突
/*
INSERT INTO `eb_system_menu` (`id`, `pid`, `name`, `icon`, `perms`, `component`, `menu_type`, `sort`, `is_show`, `is_delte`, `create_time`, `update_time`)
VALUES (700, 0, '首页', 'el-icon-s-home', 'admin:dashboard:index', '/dashboard', 'C', 300, 1, 0, NOW(), NOW());
*/
-- 3. 验证修复结果
SELECT id, pid, name, icon, component, menu_type, sort, is_show
FROM eb_system_menu
WHERE name IN ('首页', '控制台', '主页')
OR component = '/dashboard';