43 lines
1.7 KiB
Markdown
43 lines
1.7 KiB
Markdown
|
|
# 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 路径
|