api-server/CHANGELOG.md

43 lines
1.7 KiB
Markdown
Raw Permalink Normal View History

# Changelog
## 2026-05-21 — Admin Starter 后台管理
### 新增模块
#### Admin 认证体系
- `AdminAuthModule` — 管理员登录/登出/刷新令牌/获取当前用户
- JWT 双 token 机制admin 专用 secret`type: "admin"` 字段区隔 C 端
- bcryptjs 密码哈希12 rounds
- 账号锁定5 次登录失败 → 锁定 15 分钟
- 5 个管理员角色层级SUPER_ADMIN > ADMIN > OPERATIONS > DEVELOPER > READONLY
- `AdminAuthGuard` / `AdminRolesGuard` / `@AdminRoles()` / `@AdminPublic()` 装饰器
- 审计日志自动记录所有管理员操作
#### AdminDashboardModule
- `GET /admin-api/dashboard/stats` — 仪表盘聚合统计
- 总用户数 / 今日新增 / 今日活跃
- 知识库总数 / 今日新增
- AI 调用总数 / 文件总数 / 存储总量
- 近 30 天日活趋势、AI 调用趋势
#### AdminUsersModule
- `GET /admin-api/admin-users` — 管理员列表(分页 + 搜索 + 角色/状态筛选)
- `GET /admin-api/admin-users/:id` — 管理员详情
- `POST /admin-api/admin-users` — 创建管理员SUPER_ADMIN
- `PUT /admin-api/admin-users/:id` — 更新角色/状态/名称SUPER_ADMIN
- `DELETE /admin-api/admin-users/:id` — 软删除管理员SUPER_ADMIN
#### AdminAuditLogModule
- `GET /admin-api/audit-logs` — 审计日志列表(分页 + 按用户/操作/日期筛选)
- `GET /admin-api/audit-logs/:id` — 审计日志详情
- 关联 AdminUser 返回操作者邮箱和名称
### Prisma Schema 变更
- `AdminUser` 新增反向关系 `auditLogs AdminAuditLog[]`
- `AdminAuditLog` 新增关系字段 `adminUser AdminUser`
### 路由隔离
- C 端:`/api/*` — JwtAuthGuard
- Admin`/admin-api/*` — AdminAuthGuard + AdminRolesGuard
- 全局 prefix `api` 排除 admin-api 路径