-- =============================================================================
|
-- 2026-09-30 公司管理-充值记录二级菜单与导出按钮
|
-- -----------------------------------------------------------------------------
|
-- 前置说明:
|
-- 1) 父菜单「单位管理」path='/company'(menu_id=51,测试库已建)
|
-- 2) 全部语句幂等,可重复执行
|
-- 3) 权限键与前端 accessKey、后端 @RequiresPermissions 一致:
|
-- C 列表页 path = /company/rechargeRecord
|
-- F 导出按钮 path = '#' perms = /company/rechargeRecord/export
|
-- 4) 默认授权 admin(role_id=1)和 company_admin(role_id=75)
|
-- 5) 依赖前置脚本:20260930_company_admin_role_menu.sql(提供 company_admin 角色)
|
-- =============================================================================
|
SET NAMES utf8mb4;
|
|
USE charging_pile_other;
|
|
-- -----------------------------------------------------------------------------
|
-- 1. 充值记录(菜单 C)
|
-- -----------------------------------------------------------------------------
|
INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, query, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
SELECT '充值记录', 51, 4, '/company/rechargeRecord', 'company/rechargeRecord/index', NULL, 1, 0, 'C', '0', '0', '/company/rechargeRecord', 'wallet', 'admin', NOW(), '公司管理-充值记录'
|
FROM DUAL
|
WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE menu_type = 'C' AND perms = '/company/rechargeRecord');
|
|
-- -----------------------------------------------------------------------------
|
-- 2. 导出按钮(F)
|
-- -----------------------------------------------------------------------------
|
INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, query, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, remark)
|
SELECT '导出', (
|
SELECT menu_id FROM sys_menu WHERE menu_type = 'C' AND perms = '/company/rechargeRecord' LIMIT 1
|
), 1, '#', NULL, NULL, 1, 0, 'F', '0', '0', '/company/rechargeRecord/export', '#', 'admin', NOW(), '公司管理-充值记录-导出'
|
FROM DUAL
|
WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = '/company/rechargeRecord/export');
|
|
-- -----------------------------------------------------------------------------
|
-- 3. 默认授权 admin 角色(role_id=1)
|
-- -----------------------------------------------------------------------------
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
SELECT 1, m.menu_id
|
FROM sys_menu m
|
WHERE (m.perms = '/company/rechargeRecord' OR m.perms = '/company/rechargeRecord/export')
|
AND NOT EXISTS (SELECT 1 FROM sys_role_menu rm WHERE rm.role_id = 1 AND rm.menu_id = m.menu_id);
|
|
-- -----------------------------------------------------------------------------
|
-- 4. 默认授权 company_admin(role_id=75;该角色由 20260930_company_admin_role_menu.sql 创建)
|
-- -----------------------------------------------------------------------------
|
INSERT INTO sys_role_menu (role_id, menu_id)
|
SELECT 75, m.menu_id
|
FROM sys_menu m
|
WHERE (m.perms = '/company/rechargeRecord' OR m.perms = '/company/rechargeRecord/export')
|
AND NOT EXISTS (SELECT 1 FROM sys_role_menu rm WHERE rm.role_id = 75 AND rm.menu_id = m.menu_id);
|
|
-- -----------------------------------------------------------------------------
|
-- 5. 回查
|
-- R1. C 菜单与 F 按钮已建:
|
-- SELECT menu_id, menu_name, path, perms, menu_type, order_num, parent_id
|
-- FROM charging_pile_other.sys_menu
|
-- WHERE perms IN ('/company/rechargeRecord','/company/rechargeRecord/export');
|
-- R2. 已授 admin(1) 与 company_admin(75):
|
-- SELECT rm.role_id, r.role_name, m.menu_name, m.perms
|
-- FROM charging_pile_other.sys_role_menu rm
|
-- JOIN charging_pile_other.sys_role r ON rm.role_id = r.role_id
|
-- JOIN charging_pile_other.sys_menu m ON rm.menu_id = m.menu_id
|
-- WHERE m.perms IN ('/company/rechargeRecord','/company/rechargeRecord/export')
|
-- ORDER BY rm.role_id, m.perms;
|
-- R3. 幂等复跑:以上 INSERT 命中 0 行(NOT EXISTS 已存在)
|
-- =============================================================================
|