feat: 角色等级体系与权限管控实施

- 数据库:auth_roles 表新增 level 字段(1=超管, 10=管理员, 100=普通用户)
- 后端:新增 GetAllRoles/GetUserMaxLevel/SetUserRoles/FindByCodeList DAO 方法
- 后端:SetRolesRequest 替换 AssignRoleRequest,AdminUserInfo.Roles 改为 []RoleInfo
- 后端:所有管理操作(禁用/启用/角色分配/创建用户)强制层级权限校验
- 后端:PUT /users/:id/roles(批量设置角色)+ GET /roles(角色列表)
- 前端:角色管理改为 Checkbox Group 多选,高等级角色禁用
- 前端:禁用/启用按钮受角色层级约束,列表页操作按钮权限管控
- 前端:创建用户对话框角色选项根据操作者等级动态过滤
- 文档:API 文档、设计方案、集成规范、进度文档同步更新

Made-with: Cursor
This commit is contained in:
bujinyuan
2026-03-02 15:40:02 +08:00
parent dd84e50429
commit fa6f1e5c58
18 changed files with 771 additions and 279 deletions

View File

@@ -1,6 +1,6 @@
# EchoChat 项目开发进度
> **最后更新**2026-03-02前后端错误处理规范统一 + 安全加固
> **最后更新**2026-03-02角色等级体系与权限管控实施
> **当前阶段**Phase 1 - 基础设施与用户认证
> **当前分支**`feature/phase1-foundation-and-auth`
> **实施计划**`docs/plans/2026-02-27-phase1-foundation-and-auth.md`
@@ -35,6 +35,7 @@
5. **API 响应格式**:统一 `{ "code": 0, "message": "success", "data": ... }`
6. **常量命名**Go camelCase`UserStatusActive`),非大写下划线
7. **模块路由**:模块内自注册 + 中央 router 聚合
8. **角色等级体系**`auth_roles.level` 字段值越小权限越高1=超管, 10=管理员, 100=普通用户),所有管理操作强制执行"高等级管理低等级"规则
### 前台用户端frontend/
1. **框架**uni-app 3.0Vue 3.4.21 框架锁定)
@@ -151,7 +152,7 @@ cd frontend && npm run dev:h5
### 可测试功能
- **管理端**:登录 → 仪表盘 → 用户列表 → 搜索/筛选 → 用户详情 → 禁用/启用 → 分配角色 → 创建用户
- **管理端**:登录 → 仪表盘 → 用户列表 → 搜索/筛选 → 用户详情 → 禁用/启用(受角色等级约束) → 批量设置角色Checkbox 多选 + 等级管控) → 创建用户
- **前台 H5**:注册 → 登录 → 个人中心 → 修改资料 → 退出登录
- **API**`GET http://localhost:8085/health`(健康检查)