Commit Graph

7 Commits

Author SHA1 Message Date
bujinyuan
fa6f1e5c58 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
2026-03-02 15:40:02 +08:00
bujinyuan
c3e8600b24 fix: 前后台 Token Redis 存储隔离,修复同账号互相覆盖问题
核心变更:
- Redis key 加入 clientType 前缀:echo:auth:token:{frontend|admin}:{user_id}
- JWT Claims 新增 client_type 字段区分前台/管理端
- 新增 constants/client_type.go 定义 ClientTypeFrontend / ClientTypeAdmin
- 全链路传递 clientType:Controller → Service → TokenStore → Redis
- 中间件从 JWT Claims 提取 clientType 做 Redis 校验
- 登出只删除当前端 Token,不影响另一端

前端变更:
- 管理端 login API 改为调用 POST /api/v1/admin/auth/login(之前错误调用了前台接口)

文档更新:
- 系统设计文档、实施计划、API文档、开发规范、项目进度全部同步

Made-with: Cursor
2026-03-02 14:28:45 +08:00
bujinyuan
cfb1651480 docs: 新增前后端集成开发规范,更新项目规则与进度文档
- 创建 docs/conventions/frontend-backend-integration.md
  完整规范:API响应格式、HTTP状态码语义、前端错误处理、后端错误处理、
  前后端错误码对照表、安全约束、检查清单
- 更新 .cursor/rules/project-context.mdc 加入前后端联动规范6条
- 更新 CURRENT_STATUS.md 记录修复内容和规范引用

Made-with: Cursor
2026-03-02 14:12:06 +08:00
bujinyuan
cb08e1d621 fix: 超级管理员用户名改为 super_admin,统一区分
系统预置唯一超管账号:super_admin / admin123456 / super_admin@echochat.com

Made-with: Cursor
2026-03-02 13:49:26 +08:00
bujinyuan
c6ffc07ca6 docs: 补充开发测试指南(启动命令 + 测试账号 + 可测试功能)
Made-with: Cursor
2026-03-02 11:52:58 +08:00
bujinyuan
60c49112b4 docs: 补充 gitignore 配置说明到进度文档
Made-with: Cursor
2026-03-02 11:47:40 +08:00
bujinyuan
4d03215fe4 feat: Phase 1 完成 — 基础设施 + 用户认证 + 管理端 + 端到端验证
Phase 1 (基础设施与用户认证) 全部 11 个 Task 开发完成:

后端 (Go):
- Auth 模块: 注册/登录/JWT(有状态)/Profile/密码修改
- Admin 模块: 用户列表/详情/禁用/启用/角色分配/创建用户
- 中间件: JWT认证 + RBAC角色权限 + 请求日志 + CORS + Panic恢复
- Dockerfile 多阶段构建 + Docker Compose 全栈部署

前台 (uni-app):
- 登录/注册页面 + 自定义 TabBar + 个人中心
- 请求封装 + 状态管理 (Pinia)

管理端 (Vue 3 + Element Plus):
- 登录/仪表盘/用户列表/用户详情
- Axios 封装 + 路由守卫 + Pinia 状态管理

验证:
- 全流程 API 端到端测试通过
- Playwright 页面自动化验证通过
- code-reviewer 代码审查通过

Made-with: Cursor
2026-03-02 11:31:24 +08:00