pangu-user-platform/docs/07-运维文档/角色权限配置指南.md

289 lines
7.3 KiB
Markdown
Raw Permalink Normal View History

fix: 修复管理员角色菜单权限缺失问题 ## 问题描述 用户反馈:登录管理后台后,只能看到盘古业务菜单,缺少RuoYi系统管理、系统监控、系统工具等菜单 ## 问题分析 ### 根本原因 管理员角色(role_id=1)的菜单权限配置不完整,只有盘古业务菜单权限,缺少RuoYi系统菜单权限 ### 权限状态检查 ```sql -- 修复前 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:30条(仅盘古业务菜单) -- 各类型菜单权限分布 RuoYi系统菜单:0条 ❌ (应该有72条) 盘古业务菜单: 30条 ✅ 合计: 30条 ❌ (应该有118条) ``` ### 影响 - ❌ 无法访问用户管理、角色管理、菜单管理 - ❌ 无法进行系统配置和权限分配 - ❌ 无法使用代码生成等系统工具 - ❌ 系统功能严重受限 ## 解决方案 ### 1. 立即修复(已执行) ```sql -- 删除现有权限 DELETE FROM sys_role_menu WHERE role_id = 1; -- 为管理员角色添加所有菜单权限 INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu; ``` ### 2. 创建权限修复脚本 **新增**:`sql/fix_admin_permissions.sh` **功能特性**: - ✅ 检查当前管理员角色权限状态 - ✅ 统计菜单权限分布 - ✅ 自动备份现有权限 - ✅ 一键修复权限配置 - ✅ 验证修复结果 **使用方法**: ```bash cd sql ./fix_admin_permissions.sh # 按提示选择y确认 # 退出登录并重新登录 ``` ### 3. 创建配置文档 **新增**:`docs/07-运维文档/角色权限配置指南.md` **内容包含**: - ✅ 问题说明和原因分析 - ✅ 3种修复方法(脚本/SQL/界面) - ✅ 验证步骤(数据库+前端) - ✅ 角色权限管理最佳实践 - ✅ 常见问题Q&A - ✅ 权限备份恢复方法 ## 修复结果 ### 数据库验证 ```sql -- 修复后 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:118条 ✅ -- 各类型菜单权限分布 RuoYi系统菜单:72条 ✅ 盘古业务菜单: 46条 ✅ 合计: 118条 ✅ -- 顶级菜单权限 menu_id menu_name order_num 2000 盘古管理 0 ✅ 1 系统管理 1 ✅ 2 系统监控 2 ✅ 3 系统工具 3 ✅ 4 若依官网 4 ✅ ``` ### 前端验证 退出登录并重新登录后,菜单栏应显示: - ✅ 盘古管理(学校、会员、学生、应用、基础数据) - ✅ 系统管理(用户、角色、菜单、部门、岗位、字典、参数、通知、日志) - ✅ 系统监控(在线用户、定时任务、数据监控、服务监控、缓存监控) - ✅ 系统工具(表单构建、代码生成、系统接口) - ✅ 若依官网 ## 重要提醒 ⚠️ **权限修改后,必须退出登录并重新登录才会生效!** ## 相关文件 - sql/fix_admin_permissions.sh - 权限修复脚本 - docs/07-运维文档/角色权限配置指南.md - 配置文档 --- 作者:湖北新华业务中台研发团队
2026-02-01 13:23:44 +08:00
# 角色权限配置指南
> **作者**pangu
fix: 修复管理员角色菜单权限缺失问题 ## 问题描述 用户反馈:登录管理后台后,只能看到盘古业务菜单,缺少RuoYi系统管理、系统监控、系统工具等菜单 ## 问题分析 ### 根本原因 管理员角色(role_id=1)的菜单权限配置不完整,只有盘古业务菜单权限,缺少RuoYi系统菜单权限 ### 权限状态检查 ```sql -- 修复前 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:30条(仅盘古业务菜单) -- 各类型菜单权限分布 RuoYi系统菜单:0条 ❌ (应该有72条) 盘古业务菜单: 30条 ✅ 合计: 30条 ❌ (应该有118条) ``` ### 影响 - ❌ 无法访问用户管理、角色管理、菜单管理 - ❌ 无法进行系统配置和权限分配 - ❌ 无法使用代码生成等系统工具 - ❌ 系统功能严重受限 ## 解决方案 ### 1. 立即修复(已执行) ```sql -- 删除现有权限 DELETE FROM sys_role_menu WHERE role_id = 1; -- 为管理员角色添加所有菜单权限 INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu; ``` ### 2. 创建权限修复脚本 **新增**:`sql/fix_admin_permissions.sh` **功能特性**: - ✅ 检查当前管理员角色权限状态 - ✅ 统计菜单权限分布 - ✅ 自动备份现有权限 - ✅ 一键修复权限配置 - ✅ 验证修复结果 **使用方法**: ```bash cd sql ./fix_admin_permissions.sh # 按提示选择y确认 # 退出登录并重新登录 ``` ### 3. 创建配置文档 **新增**:`docs/07-运维文档/角色权限配置指南.md` **内容包含**: - ✅ 问题说明和原因分析 - ✅ 3种修复方法(脚本/SQL/界面) - ✅ 验证步骤(数据库+前端) - ✅ 角色权限管理最佳实践 - ✅ 常见问题Q&A - ✅ 权限备份恢复方法 ## 修复结果 ### 数据库验证 ```sql -- 修复后 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:118条 ✅ -- 各类型菜单权限分布 RuoYi系统菜单:72条 ✅ 盘古业务菜单: 46条 ✅ 合计: 118条 ✅ -- 顶级菜单权限 menu_id menu_name order_num 2000 盘古管理 0 ✅ 1 系统管理 1 ✅ 2 系统监控 2 ✅ 3 系统工具 3 ✅ 4 若依官网 4 ✅ ``` ### 前端验证 退出登录并重新登录后,菜单栏应显示: - ✅ 盘古管理(学校、会员、学生、应用、基础数据) - ✅ 系统管理(用户、角色、菜单、部门、岗位、字典、参数、通知、日志) - ✅ 系统监控(在线用户、定时任务、数据监控、服务监控、缓存监控) - ✅ 系统工具(表单构建、代码生成、系统接口) - ✅ 若依官网 ## 重要提醒 ⚠️ **权限修改后,必须退出登录并重新登录才会生效!** ## 相关文件 - sql/fix_admin_permissions.sh - 权限修复脚本 - docs/07-运维文档/角色权限配置指南.md - 配置文档 --- 作者:湖北新华业务中台研发团队
2026-02-01 13:23:44 +08:00
> **日期**2026-01-31
> **用途**:管理员角色菜单权限配置和问题修复
---
## 一、问题说明
### 1.1 问题现象
登录管理后台后,左侧菜单栏**只显示盘古业务菜单**缺少RuoYi系统管理菜单
**缺失菜单**
-**系统管理**(用户管理、角色管理、菜单管理、部门管理等)
-**系统监控**(在线用户、定时任务、数据监控等)
-**系统工具**(表单构建、代码生成、系统接口)
-**盘古官网**
fix: 修复管理员角色菜单权限缺失问题 ## 问题描述 用户反馈:登录管理后台后,只能看到盘古业务菜单,缺少RuoYi系统管理、系统监控、系统工具等菜单 ## 问题分析 ### 根本原因 管理员角色(role_id=1)的菜单权限配置不完整,只有盘古业务菜单权限,缺少RuoYi系统菜单权限 ### 权限状态检查 ```sql -- 修复前 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:30条(仅盘古业务菜单) -- 各类型菜单权限分布 RuoYi系统菜单:0条 ❌ (应该有72条) 盘古业务菜单: 30条 ✅ 合计: 30条 ❌ (应该有118条) ``` ### 影响 - ❌ 无法访问用户管理、角色管理、菜单管理 - ❌ 无法进行系统配置和权限分配 - ❌ 无法使用代码生成等系统工具 - ❌ 系统功能严重受限 ## 解决方案 ### 1. 立即修复(已执行) ```sql -- 删除现有权限 DELETE FROM sys_role_menu WHERE role_id = 1; -- 为管理员角色添加所有菜单权限 INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu; ``` ### 2. 创建权限修复脚本 **新增**:`sql/fix_admin_permissions.sh` **功能特性**: - ✅ 检查当前管理员角色权限状态 - ✅ 统计菜单权限分布 - ✅ 自动备份现有权限 - ✅ 一键修复权限配置 - ✅ 验证修复结果 **使用方法**: ```bash cd sql ./fix_admin_permissions.sh # 按提示选择y确认 # 退出登录并重新登录 ``` ### 3. 创建配置文档 **新增**:`docs/07-运维文档/角色权限配置指南.md` **内容包含**: - ✅ 问题说明和原因分析 - ✅ 3种修复方法(脚本/SQL/界面) - ✅ 验证步骤(数据库+前端) - ✅ 角色权限管理最佳实践 - ✅ 常见问题Q&A - ✅ 权限备份恢复方法 ## 修复结果 ### 数据库验证 ```sql -- 修复后 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:118条 ✅ -- 各类型菜单权限分布 RuoYi系统菜单:72条 ✅ 盘古业务菜单: 46条 ✅ 合计: 118条 ✅ -- 顶级菜单权限 menu_id menu_name order_num 2000 盘古管理 0 ✅ 1 系统管理 1 ✅ 2 系统监控 2 ✅ 3 系统工具 3 ✅ 4 若依官网 4 ✅ ``` ### 前端验证 退出登录并重新登录后,菜单栏应显示: - ✅ 盘古管理(学校、会员、学生、应用、基础数据) - ✅ 系统管理(用户、角色、菜单、部门、岗位、字典、参数、通知、日志) - ✅ 系统监控(在线用户、定时任务、数据监控、服务监控、缓存监控) - ✅ 系统工具(表单构建、代码生成、系统接口) - ✅ 若依官网 ## 重要提醒 ⚠️ **权限修改后,必须退出登录并重新登录才会生效!** ## 相关文件 - sql/fix_admin_permissions.sh - 权限修复脚本 - docs/07-运维文档/角色权限配置指南.md - 配置文档 --- 作者:湖北新华业务中台研发团队
2026-02-01 13:23:44 +08:00
**仅显示**
-**盘古管理**(学校、会员、学生、应用、基础数据)
### 1.2 原因分析
**根本原因**管理员角色role_id=1缺少RuoYi系统菜单的权限
**验证方法**
```sql
-- 检查管理员角色的菜单权限数量
SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1;
-- 统计各类型菜单权限
SELECT
CASE
WHEN m.menu_id < 2000 THEN 'RuoYi系统菜单'
ELSE '盘古业务菜单'
END AS menu_type,
COUNT(*) as count
FROM sys_role_menu rm
INNER JOIN sys_menu m ON rm.menu_id = m.menu_id
WHERE rm.role_id = 1
GROUP BY CASE WHEN m.menu_id < 2000 THEN 'RuoYi系统菜单' ELSE '盘古业务菜单' END;
```
**问题权限配置**
```
RuoYi系统菜单0条 ❌ (应该有72条)
盘古业务菜单: 30条 ✅
合计: 30条 ❌ (应该有118条)
```
---
## 二、解决方案
### 2.1 方法一:使用修复脚本(推荐)
#### 步骤1进入SQL目录
```bash
cd /path/to/pangu-user-platform/sql
```
#### 步骤2执行修复脚本
```bash
./fix_admin_permissions.sh
```
#### 步骤3按提示确认
```
是否为管理员角色添加所有菜单权限?(y/n): y
```
#### 步骤4退出登录并重新登录
**⚠️ 重要**:权限修改后,必须**退出登录并重新登录**才会生效!
### 2.2 方法二手动执行SQL
```sql
-- 1. 删除管理员角色现有权限
DELETE FROM sys_role_menu WHERE role_id = 1;
-- 2. 为管理员角色添加所有菜单权限
INSERT INTO sys_role_menu (role_id, menu_id)
SELECT 1, menu_id FROM sys_menu;
-- 3. 验证权限数量
SELECT COUNT(*) as total FROM sys_role_menu WHERE role_id = 1;
-- 预期结果118条
```
### 2.3 方法三:通过管理界面配置
**步骤**
1. 以管理员身份登录(如果能看到系统管理菜单)
2. 进入 **系统管理 > 角色管理**
3. 点击超级管理员角色的**修改**按钮
4. 在**菜单权限**标签页,勾选所有菜单
5. 点击**提交**保存
**注意**:此方法前提是能看到系统管理菜单。如果看不到,请使用方法一或方法二。
---
## 三、验证结果
### 3.1 数据库验证
```sql
-- 验证权限总数
SELECT COUNT(*) as total FROM sys_role_menu WHERE role_id = 1;
-- 预期结果118条
-- 验证各类型菜单权限
SELECT
CASE
WHEN m.menu_id < 2000 THEN 'RuoYi系统菜单'
ELSE '盘古业务菜单'
END AS menu_type,
COUNT(*) as count
FROM sys_role_menu rm
INNER JOIN sys_menu m ON rm.menu_id = m.menu_id
WHERE rm.role_id = 1
GROUP BY CASE WHEN m.menu_id < 2000 THEN 'RuoYi系统菜单' ELSE '盘古业务菜单' END;
-- 预期结果:
-- RuoYi系统菜单 72
-- 盘古业务菜单 46
-- 验证顶级菜单权限
SELECT m.menu_id, m.menu_name, m.order_num
FROM sys_menu m
INNER JOIN sys_role_menu rm ON m.menu_id = rm.menu_id
WHERE rm.role_id = 1 AND m.parent_id = 0
ORDER BY m.order_num;
-- 预期结果:盘古管理、系统管理、系统监控、系统工具、盘古官网
fix: 修复管理员角色菜单权限缺失问题 ## 问题描述 用户反馈:登录管理后台后,只能看到盘古业务菜单,缺少RuoYi系统管理、系统监控、系统工具等菜单 ## 问题分析 ### 根本原因 管理员角色(role_id=1)的菜单权限配置不完整,只有盘古业务菜单权限,缺少RuoYi系统菜单权限 ### 权限状态检查 ```sql -- 修复前 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:30条(仅盘古业务菜单) -- 各类型菜单权限分布 RuoYi系统菜单:0条 ❌ (应该有72条) 盘古业务菜单: 30条 ✅ 合计: 30条 ❌ (应该有118条) ``` ### 影响 - ❌ 无法访问用户管理、角色管理、菜单管理 - ❌ 无法进行系统配置和权限分配 - ❌ 无法使用代码生成等系统工具 - ❌ 系统功能严重受限 ## 解决方案 ### 1. 立即修复(已执行) ```sql -- 删除现有权限 DELETE FROM sys_role_menu WHERE role_id = 1; -- 为管理员角色添加所有菜单权限 INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu; ``` ### 2. 创建权限修复脚本 **新增**:`sql/fix_admin_permissions.sh` **功能特性**: - ✅ 检查当前管理员角色权限状态 - ✅ 统计菜单权限分布 - ✅ 自动备份现有权限 - ✅ 一键修复权限配置 - ✅ 验证修复结果 **使用方法**: ```bash cd sql ./fix_admin_permissions.sh # 按提示选择y确认 # 退出登录并重新登录 ``` ### 3. 创建配置文档 **新增**:`docs/07-运维文档/角色权限配置指南.md` **内容包含**: - ✅ 问题说明和原因分析 - ✅ 3种修复方法(脚本/SQL/界面) - ✅ 验证步骤(数据库+前端) - ✅ 角色权限管理最佳实践 - ✅ 常见问题Q&A - ✅ 权限备份恢复方法 ## 修复结果 ### 数据库验证 ```sql -- 修复后 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:118条 ✅ -- 各类型菜单权限分布 RuoYi系统菜单:72条 ✅ 盘古业务菜单: 46条 ✅ 合计: 118条 ✅ -- 顶级菜单权限 menu_id menu_name order_num 2000 盘古管理 0 ✅ 1 系统管理 1 ✅ 2 系统监控 2 ✅ 3 系统工具 3 ✅ 4 若依官网 4 ✅ ``` ### 前端验证 退出登录并重新登录后,菜单栏应显示: - ✅ 盘古管理(学校、会员、学生、应用、基础数据) - ✅ 系统管理(用户、角色、菜单、部门、岗位、字典、参数、通知、日志) - ✅ 系统监控(在线用户、定时任务、数据监控、服务监控、缓存监控) - ✅ 系统工具(表单构建、代码生成、系统接口) - ✅ 若依官网 ## 重要提醒 ⚠️ **权限修改后,必须退出登录并重新登录才会生效!** ## 相关文件 - sql/fix_admin_permissions.sh - 权限修复脚本 - docs/07-运维文档/角色权限配置指南.md - 配置文档 --- 作者:湖北新华业务中台研发团队
2026-02-01 13:23:44 +08:00
```
### 3.2 前端页面验证
**退出登录并重新登录后**,菜单栏应显示:
```
📋 盘古管理 ✅
├─ 学校管理
├─ 会员管理
├─ 学生管理
├─ 应用管理
└─ 基础数据
⚙️ 系统管理 ✅ (新增)
├─ 用户管理
├─ 角色管理
├─ 菜单管理
├─ 部门管理
├─ 岗位管理
├─ 字典管理
├─ 参数设置
├─ 通知公告
└─ 日志管理
📊 系统监控 ✅ (新增)
├─ 在线用户
├─ 定时任务
├─ 数据监控
├─ 服务监控
└─ 缓存监控
🔧 系统工具 ✅ (新增)
├─ 表单构建
├─ 代码生成
└─ 系统接口
🌐 盘古官网 ✅ (新增)
fix: 修复管理员角色菜单权限缺失问题 ## 问题描述 用户反馈:登录管理后台后,只能看到盘古业务菜单,缺少RuoYi系统管理、系统监控、系统工具等菜单 ## 问题分析 ### 根本原因 管理员角色(role_id=1)的菜单权限配置不完整,只有盘古业务菜单权限,缺少RuoYi系统菜单权限 ### 权限状态检查 ```sql -- 修复前 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:30条(仅盘古业务菜单) -- 各类型菜单权限分布 RuoYi系统菜单:0条 ❌ (应该有72条) 盘古业务菜单: 30条 ✅ 合计: 30条 ❌ (应该有118条) ``` ### 影响 - ❌ 无法访问用户管理、角色管理、菜单管理 - ❌ 无法进行系统配置和权限分配 - ❌ 无法使用代码生成等系统工具 - ❌ 系统功能严重受限 ## 解决方案 ### 1. 立即修复(已执行) ```sql -- 删除现有权限 DELETE FROM sys_role_menu WHERE role_id = 1; -- 为管理员角色添加所有菜单权限 INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu; ``` ### 2. 创建权限修复脚本 **新增**:`sql/fix_admin_permissions.sh` **功能特性**: - ✅ 检查当前管理员角色权限状态 - ✅ 统计菜单权限分布 - ✅ 自动备份现有权限 - ✅ 一键修复权限配置 - ✅ 验证修复结果 **使用方法**: ```bash cd sql ./fix_admin_permissions.sh # 按提示选择y确认 # 退出登录并重新登录 ``` ### 3. 创建配置文档 **新增**:`docs/07-运维文档/角色权限配置指南.md` **内容包含**: - ✅ 问题说明和原因分析 - ✅ 3种修复方法(脚本/SQL/界面) - ✅ 验证步骤(数据库+前端) - ✅ 角色权限管理最佳实践 - ✅ 常见问题Q&A - ✅ 权限备份恢复方法 ## 修复结果 ### 数据库验证 ```sql -- 修复后 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:118条 ✅ -- 各类型菜单权限分布 RuoYi系统菜单:72条 ✅ 盘古业务菜单: 46条 ✅ 合计: 118条 ✅ -- 顶级菜单权限 menu_id menu_name order_num 2000 盘古管理 0 ✅ 1 系统管理 1 ✅ 2 系统监控 2 ✅ 3 系统工具 3 ✅ 4 若依官网 4 ✅ ``` ### 前端验证 退出登录并重新登录后,菜单栏应显示: - ✅ 盘古管理(学校、会员、学生、应用、基础数据) - ✅ 系统管理(用户、角色、菜单、部门、岗位、字典、参数、通知、日志) - ✅ 系统监控(在线用户、定时任务、数据监控、服务监控、缓存监控) - ✅ 系统工具(表单构建、代码生成、系统接口) - ✅ 若依官网 ## 重要提醒 ⚠️ **权限修改后,必须退出登录并重新登录才会生效!** ## 相关文件 - sql/fix_admin_permissions.sh - 权限修复脚本 - docs/07-运维文档/角色权限配置指南.md - 配置文档 --- 作者:湖北新华业务中台研发团队
2026-02-01 13:23:44 +08:00
```
---
## 四、角色权限管理
### 4.1 权限分配原则
| 角色 | 权限范围 | 建议配置 |
|------|---------|---------|
| **超级管理员** | 所有菜单 | 118个菜单全部勾选 ✅ |
| **普通管理员** | 业务菜单 | 盘古管理46个菜单 ✅ |
| **教师** | 部分业务菜单 | 会员管理、学生管理 ✅ |
| **家长** | 查看功能 | 学生查询、学校查询 ✅ |
### 4.2 新建角色权限配置
**步骤**
1. **系统管理 > 角色管理** > 点击**新增**
2. 填写角色信息(角色名称、权限字符、排序)
3. 设置**菜单权限**
- 系统管理员:勾选所有菜单
- 业务管理员:只勾选盘古管理下的菜单
- 教师/家长:根据需要勾选特定菜单
4. 设置**数据权限**(本部门数据/全部数据等)
5. 点击**提交**保存
### 4.3 修改用户角色
**步骤**
1. **系统管理 > 用户管理** > 点击用户的**修改**按钮
2. 在**角色**下拉框中选择角色
3. 点击**提交**保存
4. **⚠️ 用户需要退出登录并重新登录**
---
## 五、常见问题
### Q1修复权限后仍然看不到菜单
**A**:请按以下步骤排查:
1.**退出登录并重新登录**(必须!)
2. ✅ 清除浏览器缓存
3. ✅ 检查菜单状态:`SELECT menu_id, menu_name, visible, status FROM sys_menu WHERE parent_id = 0;`
- `visible = '0'` 表示显示
- `status = '0'` 表示正常
4. ✅ 检查用户角色:`SELECT * FROM sys_user_role WHERE user_id = 1;`
### Q2只想给部分菜单权限怎么办
**A**:不要使用修复脚本,通过管理界面手动勾选:
1. **系统管理 > 角色管理** > 修改角色
2. 在**菜单权限**标签页,只勾选需要的菜单
3. 点击**提交**保存
### Q3新用户如何分配权限
**A**
1. **系统管理 > 用户管理** > 新增用户
2. 在**角色**下拉框中选择合适的角色
3. 如果需要特殊权限,先创建新角色再分配
### Q4权限修复脚本会影响其他角色吗
**A**不会。脚本只修复role_id=1超级管理员的权限其他角色不受影响。
---
## 六、权限数据备份
### 6.1 备份权限数据
```sql
-- 备份所有角色权限
CREATE TABLE sys_role_menu_backup_20260131 AS
SELECT * FROM sys_role_menu;
-- 备份用户角色关系
CREATE TABLE sys_user_role_backup_20260131 AS
SELECT * FROM sys_user_role;
```
### 6.2 恢复权限数据
```sql
-- 恢复角色权限
TRUNCATE TABLE sys_role_menu;
INSERT INTO sys_role_menu SELECT * FROM sys_role_menu_backup_20260131;
-- 恢复用户角色
TRUNCATE TABLE sys_user_role;
INSERT INTO sys_user_role SELECT * FROM sys_user_role_backup_20260131;
```
---
## 七、相关文件
| 文件路径 | 说明 |
|---------|------|
| `sql/fix_admin_permissions.sh` | 管理员权限自动修复脚本 |
| `sql/sys_menu_complete.sql` | 完整菜单数据SQL |
| `docs/07-运维文档/菜单数据恢复指南.md` | 菜单数据恢复文档 |
---
## 八、技术支持
如有问题,请联系:**pangu**
fix: 修复管理员角色菜单权限缺失问题 ## 问题描述 用户反馈:登录管理后台后,只能看到盘古业务菜单,缺少RuoYi系统管理、系统监控、系统工具等菜单 ## 问题分析 ### 根本原因 管理员角色(role_id=1)的菜单权限配置不完整,只有盘古业务菜单权限,缺少RuoYi系统菜单权限 ### 权限状态检查 ```sql -- 修复前 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:30条(仅盘古业务菜单) -- 各类型菜单权限分布 RuoYi系统菜单:0条 ❌ (应该有72条) 盘古业务菜单: 30条 ✅ 合计: 30条 ❌ (应该有118条) ``` ### 影响 - ❌ 无法访问用户管理、角色管理、菜单管理 - ❌ 无法进行系统配置和权限分配 - ❌ 无法使用代码生成等系统工具 - ❌ 系统功能严重受限 ## 解决方案 ### 1. 立即修复(已执行) ```sql -- 删除现有权限 DELETE FROM sys_role_menu WHERE role_id = 1; -- 为管理员角色添加所有菜单权限 INSERT INTO sys_role_menu (role_id, menu_id) SELECT 1, menu_id FROM sys_menu; ``` ### 2. 创建权限修复脚本 **新增**:`sql/fix_admin_permissions.sh` **功能特性**: - ✅ 检查当前管理员角色权限状态 - ✅ 统计菜单权限分布 - ✅ 自动备份现有权限 - ✅ 一键修复权限配置 - ✅ 验证修复结果 **使用方法**: ```bash cd sql ./fix_admin_permissions.sh # 按提示选择y确认 # 退出登录并重新登录 ``` ### 3. 创建配置文档 **新增**:`docs/07-运维文档/角色权限配置指南.md` **内容包含**: - ✅ 问题说明和原因分析 - ✅ 3种修复方法(脚本/SQL/界面) - ✅ 验证步骤(数据库+前端) - ✅ 角色权限管理最佳实践 - ✅ 常见问题Q&A - ✅ 权限备份恢复方法 ## 修复结果 ### 数据库验证 ```sql -- 修复后 SELECT COUNT(*) FROM sys_role_menu WHERE role_id = 1; -- 结果:118条 ✅ -- 各类型菜单权限分布 RuoYi系统菜单:72条 ✅ 盘古业务菜单: 46条 ✅ 合计: 118条 ✅ -- 顶级菜单权限 menu_id menu_name order_num 2000 盘古管理 0 ✅ 1 系统管理 1 ✅ 2 系统监控 2 ✅ 3 系统工具 3 ✅ 4 若依官网 4 ✅ ``` ### 前端验证 退出登录并重新登录后,菜单栏应显示: - ✅ 盘古管理(学校、会员、学生、应用、基础数据) - ✅ 系统管理(用户、角色、菜单、部门、岗位、字典、参数、通知、日志) - ✅ 系统监控(在线用户、定时任务、数据监控、服务监控、缓存监控) - ✅ 系统工具(表单构建、代码生成、系统接口) - ✅ 若依官网 ## 重要提醒 ⚠️ **权限修改后,必须退出登录并重新登录才会生效!** ## 相关文件 - sql/fix_admin_permissions.sh - 权限修复脚本 - docs/07-运维文档/角色权限配置指南.md - 配置文档 --- 作者:湖北新华业务中台研发团队
2026-02-01 13:23:44 +08:00
---
*最后更新2026-01-31*