- Update food, outfits, props, home-decor pages and components - Add permissions page and sidebar updates - Update API client and all API modules (auth, food, dances, etc.) - Add card model migrations for optional fields - Update Django views, serializers, and authentication - Add affinity level migrations and user app updates - Add project documentation Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
14 KiB
14 KiB
洛天依管理系统 - 功能清单与开发状态
生成时间:2026-03-19(已通过 API 实测验证)
一、整体架构
| 组件 | 技术栈 | 路径 |
|---|---|---|
| 后端 API | Django + DRF + Channels + Daphne | qy_lty/ |
| 管理后台前端 | Next.js 15 + React 19 + Tailwind + shadcn/ui | qy-lty-admin/ |
| 数据库 | PostgreSQL(阿里云 RDS) | 远程 |
| 缓存/消息 | Redis(阿里云) | 远程 |
二、功能模块状态总览
| 模块 | 前端页面 | 后端 API | 前后端对接 | 后端实测数据 | 状态 |
|---|---|---|---|---|---|
| 邮箱登录 | ✅ | ✅ | ✅ 已对接 | ✅ 返回 token | ✅ 完成 |
| 手机登录 | ✅ UI | ✅ 已验证 | ❌ 未对接 | ✅ 接口可用 | ⚠️ 待对接 |
| 注册 | ✅ UI | ✅ 已验证 | ❌ 未对接 | ✅ 接口可用(返回参数校验) | ⚠️ 待对接 |
| 忘记密码 | ✅ UI | ✅ 已验证 | ❌ 未对接 | ✅ 接口可用 | ⚠️ 待对接 |
| 仪表盘 | ✅ UI | ❌ 无统计接口 | ❌ 硬编码数据 | — | ⚠️ 待开发 |
| 用户管理 | ✅ | ✅ | ✅ 已对接 | ✅ 5 条数据 | ✅ 完成 |
| 歌曲管理 | ✅ | ✅ | ✅ 已对接 | ✅ 9 条数据 | ✅ 完成 |
| 舞蹈管理 | ✅ UI | ✅ 已验证 | ❌ 前端用 mock | ✅ 5 条数据 | ⚠️ 待对接 |
| 服装管理 | ✅ UI | ✅ 已验证 | ❌ 前端用 mock | ✅ 11 条数据 | ⚠️ 待对接 |
| 道具管理 | ✅ UI | ✅ 已验证 | ❌ 前端用 mock | ✅ 3 条数据 | ⚠️ 待对接 |
| 家居装饰 | ✅ UI | ✅ 已验证 | ❌ 前端用 mock | ✅ 6 条数据 | ⚠️ 待对接 |
| 食物管理 | ✅ | ✅ | ✅ 已对接 | ✅ 5 条数据 | ✅ 完成 |
| 成就系统 | ✅ UI | ✅ 已验证 | ❌ 前端用 mock | ✅ 13 条数据 | ⚠️ 待对接 |
| 好感度 | ✅ UI | ✅ 已验证 | ❌ 前端用 mock | ✅ 接口可用(暂无数据) | ⚠️ 待对接 |
| AI 模型管理 | ✅ UI | ✅ 已验证 | ❌ 前端纯展示 | ✅ 1 个 Bot | ⚠️ 待对接 |
| 权限管理 | ✅ UI | ✅ 已验证 | ❌ 前端用 mock | ✅ 接口可用(暂无数据) | ⚠️ 待对接 |
| 系统设置 | ✅ UI | ❌ 无接口 | ❌ 无持久化 | — | ❌ 待开发 |
| 设备管理 | ❌ 无页面 | ✅ 已验证 | ❌ | ✅ 2 类型/20 设备 | ❌ 前端待开发 |
| 订阅管理 | ❌ 无页面 | ⚠️ 有模型无接口 | ❌ | — | ❌ 待开发 |
| 工作流 | ❌ 无页面 | ❌ 空模块 | ❌ | — | ❌ 待开发 |
三、已完成功能详细说明
1. 邮箱登录(✅ 完成)
- 前端:
/login页面,邮箱 + 密码表单 - 后端:
POST /api/v1/admin/login/→ 返回 token - 使用方式:输入邮箱和密码,登录后 token 自动存储到 localStorage 和 Cookie
- 测试账号:邮箱
111111@qq.com,密码111111
2. 用户管理(✅ 完成)
- 前端:
/users页面,完整 CRUD - 后端:
/api/user/ViewSet - 功能:
- 用户列表(分页、搜索)
- 新增用户
- 编辑用户信息
- 删除用户
- 切换用户状态(启用/禁用)
3. 歌曲管理(✅ 完成)
- 前端:
/songs列表页 +/songs/[id]详情页 - 后端:
/api/card/category/song/+/api/card/templates/ - 功能:
- 歌曲列表(分页、搜索)
- 新增/编辑歌曲(含音频上传)
- 发布/取消发布
- 批次生成与管理
- 音频播放器(播放/暂停/音量控制)
4. 食物管理(✅ 完成)
- 前端:
/food列表页 +/food/[id]详情页 - 后端:
/api/food/foods/ - 功能:
- 食物列表(分页、搜索、分类筛选)
- 新增/编辑/删除食物
- 食物分类和稀有度管理
- 使用记录查看
四、待对接功能(前后端都有,需要连接)
以下模块前端 UI 已完成,后端 API 已存在,但前端页面使用的是 mock 硬编码数据,需要替换为真实 API 调用。
5. 舞蹈管理(⚠️ 待对接)
- 前端:
/dances页面,使用initialDances硬编码 5 条数据 - 后端 API:
GET /api/card/category/dance/— 舞蹈列表POST /api/card/templates/— 创建PATCH /api/card/templates/{id}/— 更新DELETE /api/card/templates/{id}/— 删除
- 前端 API 模块:
lib/api/dances.ts已写好,页面未调用 - 工作量:将页面中 mock 数据替换为 API 调用即可
6. 服装管理(⚠️ 待对接)
- 前端:
/outfits页面,内联硬编码数据 - 后端 API:
/api/card/category/clothing/+/api/card/templates/ - 前端 API 模块:
lib/api/outfits.ts已写好 - 工作量:页面重构程度较大,CRUD 交互不完整
7. 道具管理(⚠️ 待对接)
- 前端:
/props页面,使用initialProps硬编码数据 - 后端 API:
/api/card/category/prop/+/api/card/templates/ - 前端 API 模块:
lib/api/props.ts已写好 - 工作量:与舞蹈管理类似,替换 mock 数据
8. 家居装饰(⚠️ 待对接)
- 前端:
/home-decor页面,使用initialDecors硬编码数据 - 后端 API:
/api/card/category/decoration/+/api/card/templates/ - 前端 API 模块:
lib/api/home-decor.ts已写好 - 工作量:与舞蹈管理类似,替换 mock 数据
9. 成就系统(⚠️ 待对接)
- 前端:
/achievements页面,使用mockData硬编码 10 条数据 - 后端 API:
GET /api/achievement/achievements/— 列表POST /api/achievement/achievements/— 创建PATCH /api/achievement/achievements/{id}/— 更新DELETE /api/achievement/achievements/{id}/— 删除
- 前端 API 模块:
lib/api/achievements.ts已写好 - 工作量:替换 mock 数据 + 对齐数据结构
10. 好感度系统(⚠️ 待对接)
- 前端:
/affinity页面,使用initialRules和initialLevels硬编码 - 后端 API:
/api/user/affinity-rules/— 好感度规则 CRUD/api/user/affinity-levels/— 好感度等级 CRUD
- 前端 API 模块:
lib/api/affinity.ts已写好 - 工作量:替换 mock 数据
11. AI 模型管理(⚠️ 待对接)
- 前端:
/ai-model页面,纯展示页面(框架/微调/语音/知识库 tab) - 后端 API:
GET/POST/PATCH/DELETE /api/ai/bots/— Bot CRUD
- 前端 API 模块:
lib/api/ai-models.ts已写好 - 工作量:需要将展示页改为管理页,添加 CRUD 交互
12. 权限管理(⚠️ 待对接)
- 前端:
/permissions页面,使用initialRoles硬编码 5 个角色 - 后端 API:
/api/user/groups/— Django Group CRUD - 前端 API 模块:
lib/api/roles.ts已写好 - 工作量:替换 mock 数据,权限矩阵需与后端权限体系对齐
13. 手机登录 / 注册 / 忘记密码(⚠️ 待对接)
- 前端:UI 表单已完成,但使用
setTimeout模拟请求 - 后端:
- 手机登录:
POST /api/user/auth/phone/login/ - 发送验证码:
POST /api/user/auth/phone/verify/ - 注册:
POST /api/user/auth/register/ - 重置密码:
POST /api/user/auth/password/reset/
- 手机登录:
- 工作量:前端对接后端已有接口
五、待开发功能(缺前端或缺后端)
14. 仪表盘数据(❌ 待开发)
- 现状:前端
/页面显示硬编码统计数据(12,345 用户、5,732 活跃等) - 需要:后端开发统计聚合接口,前端对接
- 建议接口:
GET /api/v1/admin/dashboard/stats/— 用户统计、卡片统计等
15. 系统设置(❌ 待开发)
- 现状:前端
/settings页面有基本/数据库/安全/通知 4 个 tab,但无持久化 - 需要:后端设计系统配置模型和接口
- 工作量:前后端都需要开发
16. 设备管理(❌ 前端待开发)
- 后端已有完整 API:
/api/device/device-types/— 设备类型 CRUD/api/device/device-batches/— 设备批次 CRUD/api/device/devices/— 设备 CRUD(含批量创建)/api/device/user-devices/— 用户设备绑定/api/device/messages/— 消息管理- WebSocket:
ws://domain/ws/device/{user_id}/
- 需要:开发前端管理页面
17. 订阅管理(❌ 前后端待开发)
- 现状:后端有模型定义(SubscriptionPlan、Subscription、AddOnPackage 等),但无 API 接口
- 需要:后端开发 API + 前端开发页面
18. 工作流系统(❌ 前后端待开发)
- 现状:后端
workflow_app为空模块,无模型无接口 - 需要:完整设计和开发
19. 阿里云 VI(视觉智能)(❌ 已禁用)
- 现状:后端
ali_vi_app有人脸相关接口,但在主 urls.py 中已注释禁用 - 接口:人脸模板、人脸合成、美颜、美妆等
- 状态:暂不需要管理后台
六、后端 API 完整清单
用户模块 /api/user/
| 方法 | 路径 | 说明 |
|---|---|---|
| GET | / |
用户列表 |
| POST | / |
创建用户 |
| GET/PUT/PATCH/DELETE | /{id}/ |
用户详情/更新/删除 |
| GET | /info/ |
当前用户信息 |
| PUT/PATCH | /update_profile/ |
更新个人资料 |
| POST | /bind_phone/ |
绑定手机号 |
| GET/POST | /groups/ |
角色列表/创建 |
| GET/PUT/DELETE | /groups/{id}/ |
角色详情/更新/删除 |
| GET/POST | /affinity-rules/ |
好感度规则列表/创建 |
| GET/PUT/DELETE | /affinity-rules/{id}/ |
规则详情/更新/删除 |
| GET/POST | /affinity-levels/ |
好感度等级列表/创建 |
| GET/PUT/DELETE | /affinity-levels/{id}/ |
等级详情/更新/删除 |
认证模块 /api/user/auth/
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /login/ |
用户名密码登录 |
| POST | /logout/ |
登出 |
| POST | /register/ |
注册 |
| POST | /email/login/ |
邮箱登录 |
| POST | /phone/login/ |
手机号登录 |
| POST | /phone/verify/ |
发送验证码 |
| POST | /username/login/ |
用户名登录 |
| POST | /mac/login/ |
MAC 地址登录 |
| POST | /password/reset/ |
重置密码 |
管理员模块 /api/v1/admin/
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /login/ |
管理员邮箱登录 |
| POST | /logout/ |
管理员登出 |
AI 模块 /api/ai/
| 方法 | 路径 | 说明 |
|---|---|---|
| GET/POST | /bots/ |
Bot 列表/创建 |
| GET/PUT/DELETE | /bots/{id}/ |
Bot 详情/更新/删除 |
| POST | /chat/{bot_id}/ |
单轮对话 |
| POST | /multichat/ |
多轮对话 |
卡片模块 /api/card/
| 方法 | 路径 | 说明 |
|---|---|---|
| GET/POST | /templates/ |
模板列表/创建 |
| GET/PUT/DELETE | /templates/{id}/ |
模板详情/更新/删除 |
| POST | /templates/{id}/publish/ |
发布模板 |
| POST | /templates/{id}/archive/ |
归档模板 |
| GET/POST | /cards/ |
卡片列表/创建 |
| POST | /cards/scan/ |
扫描卡片(需认证) |
| POST | /cards/scan_public/ |
扫描卡片(公开) |
| POST | /cards/use/ |
使用卡片 |
| GET/POST | /batches/ |
批次列表/创建 |
| POST | /batches/generate/ |
批量生成卡片 |
| GET | /batches/{id}/export/ |
导出批次 |
| POST | /batches/{id}/mark_produced/ |
标记生产完成 |
| POST | /batches/{id}/publish/ |
发布批次 |
| GET | /category/{category}/ |
按分类查询模板 |
| GET | /user/cards/ |
用户卡片列表 |
食物模块 /api/food/
| 方法 | 路径 | 说明 |
|---|---|---|
| GET/POST | /foods/ |
食物列表/创建 |
| GET/PUT/PATCH/DELETE | /foods/{id}/ |
食物详情/更新/删除 |
| GET | /foods/categories/ |
食物分类信息 |
| POST | /use-food/ |
使用食物 |
| GET | /my-foods/ |
我的食物 |
| GET | /user-foods/ |
用户食物列表 |
| GET | /food-stats/ |
食物统计 |
| GET | /usage-logs/ |
使用记录 |
成就模块 /api/achievement/
| 方法 | 路径 | 说明 |
|---|---|---|
| GET/POST | /achievements/ |
成就列表/创建 |
| GET/PUT/DELETE | /achievements/{id}/ |
成就详情/更新/删除 |
| GET | /achievements/{id}/check_achievement/ |
检查成就 |
| GET/POST | /user-achievements/ |
用户成就列表/授予 |
| POST | /user-achievements/check_and_grant/ |
检查并授予 |
| GET | /user-achievements/stats/ |
成就统计 |
设备模块 /api/device/
| 方法 | 路径 | 说明 |
|---|---|---|
| CRUD | /device-types/ |
设备类型管理 |
| CRUD | /device-batches/ |
设备批次管理 |
| CRUD | /devices/ |
设备管理 |
| POST | /devices/batch_create/ |
批量创建设备 |
| CRUD | /user-devices/ |
用户设备绑定 |
| GET | /messages/ |
消息列表 |
| POST | /rtc-token/ |
获取 RTC Token |
| POST | /send_message_to_user/{user_id}/ |
WebSocket 发消息 |
通用 /api/common/
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /upload/ |
文件上传 |
七、开发优先级建议
高优先级(API 已有,仅需前端对接)
- 舞蹈管理 — 前端 API 模块已写好,替换 mock 数据即可
- 道具管理 — 同上
- 家居装饰 — 同上
- 成就系统 — 同上
- 好感度系统 — 同上
- 权限管理 — 同上
- 手机登录/注册/忘记密码 — 前端 UI 已有,对接后端接口
中优先级(需要一定开发量)
- 服装管理 — 前端页面结构需调整
- AI 模型管理 — 需要从展示页改为管理页
- 仪表盘 — 需要后端开发统计接口
- 设备管理 — 后端完整,需要开发前端页面
低优先级(需要较大开发量)
- 系统设置 — 前后端都需要开发
- 订阅管理 — 后端需要暴露 API,前端需要开发页面
- 工作流系统 — 完全空白,需要完整设计