146 lines
7.3 KiB
SQL
146 lines
7.3 KiB
SQL
-- 最终完整修复所有路由问题
|
||
USE soybean_admin;
|
||
|
||
-- ============================================
|
||
-- 第一步:修复所有路由的 name 字段
|
||
-- 必须与前端 routeMap 完全一致
|
||
-- ============================================
|
||
|
||
-- 设备管理
|
||
UPDATE sys_route SET name = 'device' WHERE route_id = 'device';
|
||
UPDATE sys_route SET name = 'device_list' WHERE route_id = 'device_list';
|
||
UPDATE sys_route SET name = 'device_online' WHERE route_id = 'device_online';
|
||
UPDATE sys_route SET name = 'device_power' WHERE route_id = 'device_power';
|
||
UPDATE sys_route SET name = 'device_monitor' WHERE route_id = 'device_monitor';
|
||
UPDATE sys_route SET name = 'device_group' WHERE route_id = 'device_group';
|
||
|
||
-- 屏幕监控
|
||
UPDATE sys_route SET name = 'screen' WHERE route_id = 'screen';
|
||
UPDATE sys_route SET name = 'screen_wall' WHERE route_id = 'screen_wall';
|
||
UPDATE sys_route SET name = 'screen_control' WHERE route_id = 'screen_control';
|
||
UPDATE sys_route SET name = 'screen_record' WHERE route_id = 'screen_record';
|
||
|
||
-- 用户管理(关键!)
|
||
UPDATE sys_route SET name = 'user-manage' WHERE route_id = 'user_manage';
|
||
UPDATE sys_route SET name = 'user-manage_list' WHERE route_id = 'user_list';
|
||
UPDATE sys_route SET name = 'user-manage_role' WHERE route_id = 'user_role';
|
||
UPDATE sys_route SET name = 'user-manage_permission' WHERE route_id = 'user_permission';
|
||
|
||
-- 申请管理
|
||
UPDATE sys_route SET name = 'application' WHERE route_id = 'application';
|
||
UPDATE sys_route SET name = 'application_approval' WHERE route_id = 'application_approval';
|
||
UPDATE sys_route SET name = 'application_history' WHERE route_id = 'application_history';
|
||
|
||
-- 系统设置
|
||
UPDATE sys_route SET name = 'system' WHERE route_id = 'system';
|
||
UPDATE sys_route SET name = 'system_amt' WHERE route_id = 'system_amt';
|
||
UPDATE sys_route SET name = 'system_agent' WHERE route_id = 'system_agent';
|
||
UPDATE sys_route SET name = 'system_log' WHERE route_id = 'system_log';
|
||
|
||
-- 我的设备
|
||
UPDATE sys_route SET name = 'my-device' WHERE route_id = 'my_device';
|
||
UPDATE sys_route SET name = 'my-device_status' WHERE route_id = 'my_device_status';
|
||
UPDATE sys_route SET name = 'my-device_power-control' WHERE route_id = 'my_device_power';
|
||
UPDATE sys_route SET name = 'my-device_remote-control' WHERE route_id = 'my_device_remote';
|
||
|
||
-- 设备申请
|
||
UPDATE sys_route SET name = 'my-application' WHERE route_id = 'my_application';
|
||
UPDATE sys_route SET name = 'my-application_apply' WHERE route_id = 'my_application_apply';
|
||
UPDATE sys_route SET name = 'my-application_my-list' WHERE route_id = 'my_application_list';
|
||
|
||
-- ============================================
|
||
-- 第二步:修复所有组件路径
|
||
-- 父路由用 layout.base,子路由用 view.xxx
|
||
-- ============================================
|
||
|
||
-- 父路由
|
||
UPDATE sys_route SET component = 'layout.base' WHERE route_id IN ('device', 'screen', 'user_manage', 'application', 'system', 'my_device', 'my_application');
|
||
|
||
-- 设备管理子路由
|
||
UPDATE sys_route SET component = 'view.device_list' WHERE route_id = 'device_list';
|
||
UPDATE sys_route SET component = 'view.device_online' WHERE route_id = 'device_online';
|
||
UPDATE sys_route SET component = 'view.device_power' WHERE route_id = 'device_power';
|
||
UPDATE sys_route SET component = 'view.device_monitor' WHERE route_id = 'device_monitor';
|
||
UPDATE sys_route SET component = 'view.device_group' WHERE route_id = 'device_group';
|
||
|
||
-- 屏幕监控子路由
|
||
UPDATE sys_route SET component = 'view.screen_wall' WHERE route_id = 'screen_wall';
|
||
UPDATE sys_route SET component = 'view.screen_control' WHERE route_id = 'screen_control';
|
||
UPDATE sys_route SET component = 'view.screen_record' WHERE route_id = 'screen_record';
|
||
|
||
-- 用户管理子路由
|
||
UPDATE sys_route SET component = 'view.user-manage_list' WHERE route_id = 'user_list';
|
||
UPDATE sys_route SET component = 'view.user-manage_role' WHERE route_id = 'user_role';
|
||
UPDATE sys_route SET component = 'view.user-manage_permission' WHERE route_id = 'user_permission';
|
||
|
||
-- 申请管理子路由
|
||
UPDATE sys_route SET component = 'view.application_approval' WHERE route_id = 'application_approval';
|
||
UPDATE sys_route SET component = 'view.application_history' WHERE route_id = 'application_history';
|
||
|
||
-- 系统设置子路由
|
||
UPDATE sys_route SET component = 'view.system_amt' WHERE route_id = 'system_amt';
|
||
UPDATE sys_route SET component = 'view.system_agent' WHERE route_id = 'system_agent';
|
||
UPDATE sys_route SET component = 'view.system_log' WHERE route_id = 'system_log';
|
||
|
||
-- 我的设备子路由
|
||
UPDATE sys_route SET component = 'view.my-device_status' WHERE route_id = 'my_device_status';
|
||
UPDATE sys_route SET component = 'view.my-device_power-control' WHERE route_id = 'my_device_power';
|
||
UPDATE sys_route SET component = 'view.my-device_remote-control' WHERE route_id = 'my_device_remote';
|
||
|
||
-- 设备申请子路由
|
||
UPDATE sys_route SET component = 'view.my-application_apply' WHERE route_id = 'my_application_apply';
|
||
UPDATE sys_route SET component = 'view.my-application_my-list' WHERE route_id = 'my_application_list';
|
||
|
||
-- ============================================
|
||
-- 第三步:更新角色菜单配置(最关键!)
|
||
-- 必须包含所有父路由和子路由的 name
|
||
-- ============================================
|
||
|
||
UPDATE sys_role
|
||
SET menus = 'device,device_list,device_group,device_monitor,device_online,device_power,screen,screen_wall,screen_control,screen_record,user-manage,user-manage_list,user-manage_role,user-manage_permission,application,application_approval,application_history,system,system_agent,system_amt,system_log,my-device,my-device_status,my-device_remote-control,my-device_power-control,my-application,my-application_apply,my-application_my-list'
|
||
WHERE role_code = 'R_SUPER';
|
||
|
||
UPDATE sys_role
|
||
SET menus = 'device,device_list,device_group,device_monitor,device_online,device_power,screen,screen_wall,screen_control,screen_record,user-manage,user-manage_list,user-manage_role,application,application_approval,application_history'
|
||
WHERE role_code = 'R_ADMIN';
|
||
|
||
UPDATE sys_role
|
||
SET menus = 'my-device,my-device_status,my-device_remote-control,my-device_power-control,my-application,my-application_apply,my-application_my-list'
|
||
WHERE role_code = 'R_USER';
|
||
|
||
-- ============================================
|
||
-- 第四步:验证修复结果
|
||
-- ============================================
|
||
|
||
SELECT '========================================' AS '';
|
||
SELECT '用户管理路由配置' AS '';
|
||
SELECT '========================================' AS '';
|
||
SELECT route_id, name, path, component
|
||
FROM sys_route
|
||
WHERE route_id IN ('user_manage', 'user_list', 'user_role', 'user_permission')
|
||
ORDER BY order_num;
|
||
|
||
SELECT '' AS '';
|
||
SELECT '========================================' AS '';
|
||
SELECT 'R_SUPER 角色菜单配置(前200字符)' AS '';
|
||
SELECT '========================================' AS '';
|
||
SELECT role_code, role_name, SUBSTRING(menus, 1, 200) AS menus_preview
|
||
FROM sys_role
|
||
WHERE role_code = 'R_SUPER';
|
||
|
||
SELECT '' AS '';
|
||
SELECT '========================================' AS '';
|
||
SELECT '检查子路由是否在角色配置中' AS '';
|
||
SELECT '========================================' AS '';
|
||
SELECT
|
||
r.name AS route_name,
|
||
CASE
|
||
WHEN role.menus LIKE CONCAT('%', r.name, '%') THEN '✓ YES'
|
||
ELSE '✗ NO - 这会导致路由被过滤!'
|
||
END AS in_role_config
|
||
FROM sys_route r
|
||
CROSS JOIN sys_role role
|
||
WHERE role.role_code = 'R_SUPER'
|
||
AND r.route_id IN ('user_manage', 'user_list', 'user_role', 'user_permission')
|
||
ORDER BY r.order_num;
|