iven
|
a66b675675
|
feat(saas): Phase 2 Admin Web 管理后台 — 完整 CRUD + Dashboard 统计
后端:
- 添加 GET /api/v1/stats/dashboard 聚合统计端点
(账号数/活跃服务商/今日请求/今日Token用量等7项指标)
- 需要 account:admin 权限
Admin 前端 (Next.js 14 + shadcn/ui + Tailwind + Recharts):
- 设计系统: Dark Mode OLED (#020617 背景, #22C55E CTA)
- 登录页: 双栏布局, 品牌区 + 表单
- Dashboard 布局: Sidebar 导航 + Header + 主内容区
- 仪表盘: 4 统计卡片 + AreaChart 请求趋势 + BarChart Token用量
- 8 个 CRUD 页面:
- 账号管理 (搜索/角色/状态筛选, 编辑/启用禁用)
- 服务商 (CRUD + API Key masked)
- 模型管理 (Provider筛选, CRUD)
- API 密钥 (创建/撤销, 一次性显示token)
- 用量统计 (LineChart + BarChart)
- 中转任务 (状态筛选, 展开详情)
- 系统配置 (分类Tab, 编辑)
- 操作日志 (Action筛选, 展开详情)
- 14 个 shadcn 风格 UI 组件 (手写实现)
- 类型化 API 客户端 (SaaSClient, 20+ 方法, 401 自动跳转)
- AuthGuard 路由保护 + useAuth() hook
验证: tsc --noEmit 零 error, pnpm build 13 页面成功, cargo test 21 通过
|
2026-03-27 14:06:50 +08:00 |
|
iven
|
a2f8112d69
|
feat(saas): Phase 1 — 基础框架与账号管理模块
- 新增 zclaw-saas crate 作为 workspace 成员
- 配置系统 (TOML + 环境变量覆盖)
- 错误类型体系 (SaasError 16 变体, IntoResponse)
- SQLite 数据库 (12 表 schema, 内存/文件双模式, 3 系统角色种子数据)
- JWT 认证 (签发/验证/刷新)
- Argon2id 密码哈希
- 认证中间件 (公开/受保护路由分层)
- 账号管理 CRUD + API Token 管理 + 操作日志
- 7 单元测试 + 5 集成测试全部通过
|
2026-03-27 12:58:01 +08:00 |
|