Files
hzdyjs/menu_structure_update.sql
T
2025-08-18 12:03:44 +08:00

227 lines
6.9 KiB
SQL
Raw 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.
-- =============================================
-- 菜单结构更新脚本
-- 目标:区分违纪处分管理和处分记录审批两个功能模块
-- 执行日期:2025-01-08
-- =============================================
-- 步骤1:查看当前菜单结构
SELECT '=== 当前菜单结构 ===' as step;
SELECT
menu_id,
menu_name,
parent_id,
path,
component,
order_num,
status
FROM sys_menu
WHERE menu_id IN (9100, 9110, 9111, 9112, 9113)
OR parent_id IN (9100, 9110)
ORDER BY parent_id, order_num;
-- 步骤2:更新违纪处分管理菜单(menu_id=9110)
-- 修改为指向违纪处分申请页面
SELECT '=== 更新违纪处分管理菜单 ===' as step;
UPDATE sys_menu
SET
menu_name = '违纪处分管理',
path = 'disciplineApplication',
component = 'xskh/disciplineApplication/index',
update_time = NOW(),
update_by = 1
WHERE menu_id = 9110;
-- 步骤3:添加处分记录审批主菜单
SELECT '=== 添加处分记录审批主菜单 ===' as step;
INSERT INTO sys_menu (
menu_id,
menu_name,
parent_id,
order_num,
path,
component,
is_frame,
is_cache,
menu_type,
visible,
status,
perms,
icon,
create_by,
create_time,
update_by,
update_time,
remark
) VALUES (
9120, -- 新的菜单ID
'处分记录审批',
9100, -- 父菜单:学生考核管理
3, -- 排序
'disciplineRecordApproval',
'ParentView',
1, -- 非外链
0, -- 不缓存
'M', -- 目录
'0', -- 显示
'0', -- 正常状态
'', -- 权限标识
'approval',
1,
NOW(),
1,
NOW(),
'处分记录审批菜单'
);
-- 步骤4:添加违纪处分审批子菜单
SELECT '=== 添加违纪处分审批子菜单 ===' as step;
INSERT INTO sys_menu (
menu_id,
menu_name,
parent_id,
order_num,
path,
component,
is_frame,
is_cache,
menu_type,
visible,
status,
perms,
icon,
create_by,
create_time,
update_by,
update_time,
remark
) VALUES (
9121, -- 违纪处分审批菜单ID
'违纪处分审批',
9120, -- 父菜单:处分记录审批
1, -- 排序
'approval',
'xskh/disciplineApproval/index',
1, -- 非外链
0, -- 不缓存
'C', -- 菜单
'0', -- 显示
'0', -- 正常状态
'xskh:disciplineApproval:list',
'check',
1,
NOW(),
1,
NOW(),
'违纪处分审批菜单'
);
-- 步骤5:添加处分记录管理子菜单
SELECT '=== 添加处分记录管理子菜单 ===' as step;
INSERT INTO sys_menu (
menu_id,
menu_name,
parent_id,
order_num,
path,
component,
is_frame,
is_cache,
menu_type,
visible,
status,
perms,
icon,
create_by,
create_time,
update_by,
update_time,
remark
) VALUES (
9122, -- 处分记录管理菜单ID
'处分记录管理',
9120, -- 父菜单:处分记录审批
2, -- 排序
'record',
'xskh/disciplineRecord/index',
1, -- 非外链
0, -- 不缓存
'C', -- 菜单
'0', -- 显示
'0', -- 正常状态
'xskh:disciplineRecord:list',
'record',
1,
NOW(),
1,
NOW(),
'处分记录管理菜单'
);
-- 步骤6:为新菜单添加权限按钮(违纪处分审批)
SELECT '=== 添加违纪处分审批权限按钮 ===' as step;
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark) VALUES
(9123, '违纪处分审批查询', 9121, 1, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineApproval:query', '#', 1, NOW(), ''),
(9124, '违纪处分审批新增', 9121, 2, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineApproval:add', '#', 1, NOW(), ''),
(9125, '违纪处分审批修改', 9121, 3, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineApproval:edit', '#', 1, NOW(), ''),
(9126, '违纪处分审批删除', 9121, 4, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineApproval:remove', '#', 1, NOW(), ''),
(9127, '违纪处分审批导出', 9121, 5, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineApproval:export', '#', 1, NOW(), ''),
(9128, '违纪处分审批', 9121, 6, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineApproval:approve', '#', 1, NOW(), '');
-- 步骤7:为新菜单添加权限按钮(处分记录管理)
SELECT '=== 添加处分记录管理权限按钮 ===' as step;
INSERT INTO sys_menu (menu_id, menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark) VALUES
(9129, '处分记录管理查询', 9122, 1, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineRecord:query', '#', 1, NOW(), ''),
(9130, '处分记录管理新增', 9122, 2, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineRecord:add', '#', 1, NOW(), ''),
(9131, '处分记录管理修改', 9122, 3, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineRecord:edit', '#', 1, NOW(), ''),
(9132, '处分记录管理删除', 9122, 4, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineRecord:remove', '#', 1, NOW(), ''),
(9133, '处分记录管理导出', 9122, 5, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineRecord:export', '#', 1, NOW(), ''),
(9134, '处分记录审核', 9122, 6, '', '', 1, 0, 'F', '0', '0', 'xskh:disciplineRecord:approve', '#', 1, NOW(), '');
-- 步骤8:为管理员角色分配新菜单权限
SELECT '=== 为管理员角色分配新菜单权限 ===' as step;
INSERT INTO sys_role_menu (role_id, menu_id) VALUES
-- 处分记录审批主菜单
(1, 9120),
-- 违纪处分审批子菜单及权限
(1, 9121), (1, 9123), (1, 9124), (1, 9125), (1, 9126), (1, 9127), (1, 9128),
-- 处分记录管理子菜单及权限
(1, 9122), (1, 9129), (1, 9130), (1, 9131), (1, 9132), (1, 9133), (1, 9134);
-- 步骤9:验证更新结果
SELECT '=== 验证更新结果 ===' as step;
SELECT
menu_id,
menu_name,
parent_id,
path,
component,
order_num,
status,
CASE menu_type
WHEN 'M' THEN '目录'
WHEN 'C' THEN '菜单'
WHEN 'F' THEN '按钮'
END as menu_type_desc
FROM sys_menu
WHERE menu_id IN (9100, 9110, 9120, 9121, 9122)
OR parent_id IN (9100, 9110, 9120, 9121, 9122)
ORDER BY parent_id, order_num;
-- 步骤10:检查角色权限分配
SELECT '=== 检查角色权限分配 ===' as step;
SELECT
r.role_name,
m.menu_name,
m.perms
FROM sys_role_menu rm
JOIN sys_role r ON rm.role_id = r.role_id
JOIN sys_menu m ON rm.menu_id = m.menu_id
WHERE rm.menu_id IN (9120, 9121, 9122, 9123, 9124, 9125, 9126, 9127, 9128, 9129, 9130, 9131, 9132, 9133, 9134)
ORDER BY m.menu_id;
SELECT '=== 菜单结构更新完成 ===' as final_step;
SELECT '新的菜单结构:
1. 违纪处分管理 → 显示违纪处分申请页面 (disciplineApplication)
2. 处分记录审批 → 包含两个子菜单:
- 违纪处分审批 (disciplineApproval)
- 处分记录管理 (disciplineRecord)' as new_structure;