api-server/CHANGELOG.md
WangDL b8a1fb0921
All checks were successful
Deploy API Server / build-and-deploy (push) Successful in 10s
feat: add admin backend modules — dashboard, audit-log, admin-users
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-21 17:22:48 +08:00

43 lines
1.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 路径