Files
2025-12-05 00:09:32 +08:00

246 lines
6.6 KiB
SQL

-- ============================================================
-- 系统路由表 (sys_routes) 更新脚本
-- 目的:根据实际 app/routes 目录和期望菜单结构更新路由配置
-- 生成时间: 2025-11-17
-- ============================================================
-- ============================================================
-- 第 1 步:删除废弃的路由
-- ============================================================
-- 删除废弃的一级菜单及其子路由
DELETE FROM sys_routes WHERE id IN (3, 4, 5, 6);
-- ============================================================
-- 第 2 步:调整现有路由的层级结构
-- ============================================================
-- 2.1 将 rule-groups 改为 rules 的子级(评查点分组)
UPDATE sys_routes
SET parent_id = 41,
sort_order = 1,
route_title = '评查点分组'
WHERE id = 43;
-- 2.2 将 prompts 改为 settings 的子级(稍后创建 settings 父级)
-- 注意:先创建 settings 路由后再执行此更新
-- UPDATE sys_routes SET parent_id = 53, sort_order = 2 WHERE id = 45;
-- 2.3 将 document-types 改为 settings 的子级
-- UPDATE sys_routes SET parent_id = 53, sort_order = 1 WHERE id = 47;
-- 2.4 更新合同模板搜索的标题
UPDATE sys_routes
SET route_title = '智能搜索'
WHERE id = 39;
-- ============================================================
-- 第 3 步:添加新的一级菜单 - 系统设置
-- ============================================================
INSERT INTO sys_routes (
id,
route_path,
route_name,
route_title,
parent_id,
icon,
sort_order,
is_hidden,
is_cache,
component,
meta
) VALUES (
53,
'/settings',
'Settings',
'系统设置',
NULL,
'el-icon-setting',
20,
false,
true,
'views/settings/Index.vue',
'{}'
);
-- 现在更新 prompts 和 document-types 的父级
UPDATE sys_routes SET parent_id = 53, sort_order = 2, route_title = '提示词管理' WHERE id = 45;
UPDATE sys_routes SET parent_id = 53, sort_order = 1, route_title = '文档类型' WHERE id = 47;
-- ============================================================
-- 第 4 步:添加缺失的路由
-- ============================================================
-- 4.1 添加 /rules/list - 评查点列表(作为 rules 的子级)
INSERT INTO sys_routes (
route_path,
route_name,
route_title,
parent_id,
icon,
sort_order,
is_hidden,
is_cache,
component,
meta
) VALUES (
'/rules/list',
'RulesList',
'评查点列表',
41,
NULL,
2,
false,
true,
'views/rules/List.vue',
'{}'
);
-- 4.2 添加 /rules-files - 评查文件列表(作为 rules 的子级)
INSERT INTO sys_routes (
route_path,
route_name,
route_title,
parent_id,
icon,
sort_order,
is_hidden,
is_cache,
component,
meta
) VALUES (
'/rules-files',
'RulesFiles',
'评查文件列表',
41,
NULL,
3,
false,
true,
'views/rules/Files.vue',
'{}'
);
-- 4.3 添加 /contract-template/list - 合同列表(作为 contract-template 的子级)
INSERT INTO sys_routes (
route_path,
route_name,
route_title,
parent_id,
icon,
sort_order,
is_hidden,
is_cache,
component,
meta
) VALUES (
'/contract-template/list',
'ContractTemplateList',
'合同列表',
38,
NULL,
2,
false,
true,
'views/contract-template/List.vue',
'{}'
);
-- 4.4 添加 /reviews - 评查详情页(隐藏路由,不在侧边栏显示)
INSERT INTO sys_routes (
route_path,
route_name,
route_title,
parent_id,
icon,
sort_order,
is_hidden,
is_cache,
component,
meta
) VALUES (
'/reviews',
'Reviews',
'评查详情',
NULL,
NULL,
99,
true,
true,
'views/reviews/Index.vue',
'{}'
);
-- ============================================================
-- 第 5 步:调整排序顺序,使菜单符合期望结构
-- ============================================================
-- 期望的一级菜单顺序:
-- 1. 系统概览
-- 2. 文档管理
-- 3. 评查规则库
-- 4. 合同模板
-- 5. 系统设置
UPDATE sys_routes SET sort_order = 1 WHERE id = 31; -- /home (系统概览)
UPDATE sys_routes SET sort_order = 2 WHERE id = 2; -- /documents (文档管理)
UPDATE sys_routes SET sort_order = 3 WHERE id = 41; -- /rules (评查规则库)
UPDATE sys_routes SET sort_order = 4 WHERE id = 38; -- /contract-template (合同模板)
UPDATE sys_routes SET sort_order = 5 WHERE id = 53; -- /settings (系统设置)
-- 其他菜单(交叉评查、AI助手等)排在后面
UPDATE sys_routes SET sort_order = 6 WHERE id = 35; -- /cross-checking (交叉评查)
UPDATE sys_routes SET sort_order = 7 WHERE id = 40; -- /chat-with-llm (AI法务助手)
UPDATE sys_routes SET sort_order = 8 WHERE id = 51; -- /files (文件管理)
UPDATE sys_routes SET sort_order = 9 WHERE id = 49; -- /config-lists (配置列表)
-- ============================================================
-- 第 6 步:隐藏不需要在菜单中显示的路由
-- ============================================================
-- 隐藏入口页(不在侧边栏显示)
UPDATE sys_routes SET is_hidden = true WHERE id = 30; -- /
-- ============================================================
-- 第 7 步:验证更新结果
-- ============================================================
-- 查看更新后的一级菜单
SELECT id, route_path, route_name, route_title, parent_id, icon, sort_order, is_hidden
FROM sys_routes
WHERE parent_id IS NULL
ORDER BY sort_order;
-- 查看 /rules 的子菜单
SELECT id, route_path, route_name, route_title, parent_id, icon, sort_order, is_hidden
FROM sys_routes
WHERE parent_id = 41
ORDER BY sort_order;
-- 查看 /contract-template 的子菜单
SELECT id, route_path, route_name, route_title, parent_id, icon, sort_order, is_hidden
FROM sys_routes
WHERE parent_id = 38
ORDER BY sort_order;
-- 查看 /settings 的子菜单
SELECT id, route_path, route_name, route_title, parent_id, icon, sort_order, is_hidden
FROM sys_routes
WHERE parent_id = 53
ORDER BY sort_order;
-- ============================================================
-- 第 8 步:清理 role_route 表中的废弃路由关联
-- ============================================================
-- 删除指向已废弃路由的角色-路由关联
DELETE FROM role_route
WHERE route_id IN (3, 4, 5, 6);
-- ============================================================
-- 完成!
-- ============================================================
-- 提示:执行此脚本后,请重新登录系统以刷新路由权限