upload project source code

This commit is contained in:
2026-04-30 18:49:43 +08:00
commit 9b394ba682
2277 changed files with 660945 additions and 0 deletions

View File

@@ -0,0 +1,158 @@
-- ============================================
-- 改名方案模块权限配置
-- ============================================
-- 此脚本为改名方案模块创建菜单和权限配置
-- 执行前请确保 sys_menu 表存在
-- ============================================
-- 第一步:查找或创建易凡模块的父菜单
-- ============================================
-- 查找易凡模块的菜单ID假设已存在
SET @yifan_parent_id = (SELECT id FROM sys_menu WHERE name = '易凡模块' AND type = 1 LIMIT 1);
-- 如果不存在,创建易凡模块目录
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
SELECT '易凡模块', 1, '/module_yifan', 'Layout', 'el-icon-star-filled', 100, 0, 1, NULL, NULL, NOW(), NOW()
WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE name = '易凡模块' AND type = 1);
-- 重新获取父菜单ID
SET @yifan_parent_id = (SELECT id FROM sys_menu WHERE name = '易凡模块' AND type = 1 LIMIT 1);
-- ============================================
-- 第二步:创建改名方案菜单
-- ============================================
-- 删除旧的改名方案菜单(如果存在)
DELETE FROM sys_menu WHERE name = '改名方案' AND type = 2;
-- 创建改名方案菜单
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('改名方案', 2, '/module_yifan/yifan_naming_solutions', 'module_yifan/yifan_naming_solutions/index', 'el-icon-document', 3, 0, 1, @yifan_parent_id, 'module_yifan:yifan_naming_solutions:query', NOW(), NOW());
-- 获取改名方案菜单ID
SET @naming_solutions_menu_id = LAST_INSERT_ID();
-- ============================================
-- 第三步:创建改名方案的按钮权限
-- ============================================
-- 查询权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('查询', 3, NULL, NULL, NULL, 1, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:query', NOW(), NOW());
-- 详情权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('详情', 3, NULL, NULL, NULL, 2, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:detail', NOW(), NOW());
-- 新增权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('新增', 3, NULL, NULL, NULL, 3, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:create', NOW(), NOW());
-- 修改权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('修改', 3, NULL, NULL, NULL, 4, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:update', NOW(), NOW());
-- 删除权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('删除', 3, NULL, NULL, NULL, 5, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:delete', NOW(), NOW());
-- 批量操作权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('批量操作', 3, NULL, NULL, NULL, 6, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:batch', NOW(), NOW());
-- 修改状态权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('修改状态', 3, NULL, NULL, NULL, 7, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:patch', NOW(), NOW());
-- 导入权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('导入', 3, NULL, NULL, NULL, 8, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:import', NOW(), NOW());
-- 导出权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('导出', 3, NULL, NULL, NULL, 9, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:export', NOW(), NOW());
-- 下载模板权限
INSERT INTO sys_menu (name, type, path, component, icon, sort, status, visible, parent_id, perms, created_time, updated_time)
VALUES ('下载模板', 3, NULL, NULL, NULL, 10, 0, 1, @naming_solutions_menu_id, 'module_yifan:yifan_naming_solutions:download', NOW(), NOW());
-- ============================================
-- 第四步:为管理员角色分配权限
-- ============================================
-- 获取管理员角色ID通常是1也可能是其他值
SET @admin_role_id = (SELECT id FROM sys_role WHERE role_code = 'admin' OR role_name = '管理员' OR id = 1 LIMIT 1);
-- 为管理员角色分配改名方案菜单权限
INSERT INTO sys_role_menus (role_id, menu_id, created_time, updated_time)
SELECT @admin_role_id, id, NOW(), NOW()
FROM sys_menu
WHERE (id = @naming_solutions_menu_id OR parent_id = @naming_solutions_menu_id)
AND NOT EXISTS (
SELECT 1 FROM sys_role_menus
WHERE role_id = @admin_role_id AND menu_id = sys_menu.id
);
-- ============================================
-- 验证结果
-- ============================================
-- 查看创建的菜单
SELECT
m.id,
m.name,
m.type,
CASE m.type
WHEN 1 THEN '目录'
WHEN 2 THEN '菜单'
WHEN 3 THEN '按钮'
WHEN 4 THEN '链接'
END as type_name,
m.path,
m.perms,
m.parent_id,
p.name as parent_name
FROM sys_menu m
LEFT JOIN sys_menu p ON m.parent_id = p.id
WHERE m.name IN ('易凡模块', '改名方案') OR m.parent_id = @naming_solutions_menu_id
ORDER BY m.parent_id, m.sort;
-- 查看管理员角色的权限分配
SELECT
r.id as role_id,
r.role_name,
m.id as menu_id,
m.name as menu_name,
m.perms
FROM sys_role r
JOIN sys_role_menus rm ON r.id = rm.role_id
JOIN sys_menu m ON rm.menu_id = m.id
WHERE r.id = @admin_role_id
AND (m.id = @naming_solutions_menu_id OR m.parent_id = @naming_solutions_menu_id)
ORDER BY m.sort;
-- 统计信息
SELECT
'改名方案菜单ID' as info_type,
@naming_solutions_menu_id as value
UNION ALL
SELECT
'管理员角色ID' as info_type,
@admin_role_id as value
UNION ALL
SELECT
'创建的权限数量' as info_type,
COUNT(*) as value
FROM sys_menu
WHERE parent_id = @naming_solutions_menu_id;
-- ============================================
-- 注意事项
-- ============================================
-- 1. status 字段0=启用1=停用
-- 2. visible 字段0=显示1=隐藏
-- 3. type 字段1=目录2=菜单3=按钮/权限4=链接
-- 4. 如果管理员角色ID不是1需要手动调整 @admin_role_id
-- 5. 执行后需要重新登录才能看到新菜单
-- 6. 如果菜单路径或组件路径不对,需要根据实际情况调整