expo-popcore-app/api_integration_report.md

236 lines
6.6 KiB
Markdown

# API 接口对接分析报告
> 生成日期: 2026-01-23
> 分析范围: Expo Popcore App 项目与 @repo/sdk 接口对接情况
---
## 概述
本报告分析了当前 Expo 项目的所有页面组件与 @repo/sdk 中可用接口的对接情况。
### 统计数据
| 项目 | 数量 |
|------|------|
| 总页面数 | 19 |
| 已完全对接接口的页面 | 15 |
| 需要对接接口的页面 | 4 |
| SDK 控制器数量 | 24 |
| SDK 可用接口数量 | 150+ |
---
## 一、需要对接接口的页面清单
### 1. 修改密码页面 (app/changePassword.tsx)
| 属性 | 详情 |
|------|------|
| **优先级** | 中 |
| **当前状态** | 无接口对接 |
| **需要对接的接口** | 用户修改密码接口 |
| **说明** | 需要集成用户密码修改功能 |
**对接建议:**
- 检查 SDK 是否有专门的密码修改接口
- 可能需要使用 better-auth 的密码修改功能
---
### 2. 生成记录页面 (app/generationRecord.tsx)
| 属性 | 详情 |
|------|------|
| **优先级** | 高 |
| **当前状态** | 部分对接 (使用 useTemplateGenerations) |
| **需要对接的接口** | 删除作品接口 |
| **说明** | 当前可以查看生成记录,但缺少删除功能 |
**可用 SDK 接口:**
- `TemplateGenerationController.delete` - 删除单条生成记录
- `TemplateGenerationController.batchDelete` - 批量删除生成记录
**对接建议:**
- 添加删除按钮,调用 `TemplateGenerationController.delete`
- 可选:添加批量删除功能
---
### 3. 会员页面 (app/membership.tsx)
| 属性 | 详情 |
|------|------|
| **优先级** | 高 |
| **当前状态** | 无接口对接 |
| **需要对接的接口** | 订阅接口、支付接口 |
| **说明** | 会员套餐订阅功能需要完整的支付流程 |
**可用 SDK 接口:**
- `AlipayController.appPay` - 支付宝 APP 支付下单
- `AlipayController.preRecharge` - 积分预充值
- `AlipayController.webhook` - 支付回调
**对接建议:**
- 集成支付宝支付 SDK
- 实现订阅套餐购买流程
- 处理支付回调
---
### 4. 作品搜索页面 (app/searchWorks.tsx, app/searchWorksResults.tsx)
| 属性 | 详情 |
|------|------|
| **优先级** | 中 |
| **当前状态** | 使用模拟数据 |
| **需要对接的接口** | 作品搜索接口、作品列表接口 |
| **说明** | 当前使用本地状态,需要对接真实的作品搜索 |
**可用 SDK 接口:**
- `TemplateGenerationController.list` - 可用于获取作品列表
- 需要确认是否有专门的作品搜索接口
**对接建议:**
- 使用 `TemplateGenerationController.list` 替换模拟数据
- 添加搜索参数支持
---
## 二、已完全对接接口的页面
以下页面已完成接口对接,无需额外工作:
| 页面 | 文件路径 | 已对接接口 |
|------|----------|------------|
| 首页 | app/(tabs)/index.tsx | useActivates, useCategories |
| 视频 | app/(tabs)/video.tsx | useTemplates |
| 消息 | app/(tabs)/message.tsx | useMessages, useMessageActions |
| 我的 | app/(tabs)/my.tsx | useTemplateGenerations |
| 认证 | app/auth.tsx | useSession (better-auth) |
| 频道 | app/channels.tsx | useCategories |
| 生成视频 | app/generateVideo.tsx | useTemplateDetail, useTemplateActions |
| 搜索结果 | app/searchResults.tsx | useTemplates, useSearchHistory |
| 搜索模板 | app/searchTemplate.tsx | useSearchHistory, useTags |
| 模板详情 | app/templateDetail.tsx | useTemplateDetail, useTemplateGenerations, useTemplateActions, uploadFile |
| 作品列表 | app/worksList.tsx | useWorksList |
| 隐私政策 | app/privacy.tsx | 静态页面 |
| 服务条款 | app/terms.tsx | 静态页面 |
| 模态框 | app/modal.tsx | 示例页面 |
---
## 三、SDK 接口详情
### SDK 位置
```
node_modules/@repo/sdk
```
### 主要控制器
| 控制器 | 接口数量 | 主要功能 |
|--------|----------|----------|
| ActivityController | 5 | 活动管理 (创建、列表、获取、更新、删除) |
| ProjectController | 6 | 项目管理 |
| TemplateController | 7 | 模板管理 (含运行、重新运行) |
| CategoryController | 8 | 分类管理 |
| TagController | 9 | 标签管理 |
| FileController | 5 | 文件上传、视频转换 |
| AigcController | 3 | AI 生成内容 |
| AnnouncementController | 6 | 公告管理 |
| MessageController | 6 | 消息管理 |
| AlipayController | 4 | 支付宝支付 |
| TemplateSocialController | 15 | 模板社交 (点赞、收藏、评论、分享) |
| TemplateGenerationController | 5 | 模板生成记录 |
| ProjectTagController | 7 | 项目标签管理 |
| ChatController | 2 | 聊天功能 |
| AiCharacterController | 3 | AI 角色管理 |
| AigcBillingController | 1 | AIGC 账单 |
### 项目中已使用的接口
```typescript
// 活动列表
hooks/use-activates.ts ActivityController.list
// 模板列表
hooks/use-templates.ts TemplateController.list
// 模板详情
hooks/use-template-detail.ts TemplateController.get
// 模板操作
hooks/use-template-actions.ts TemplateController.run
// 模板生成记录
hooks/use-template-generations.ts TemplateGenerationController.list
// 分类列表
hooks/use-categories.ts CategoryController.list
// 标签列表
hooks/use-tags.ts TagController.list
// 公告列表
hooks/use-announcements.ts AnnouncementController.list
// 公告操作
hooks/use-announcement-actions.ts AnnouncementController.update/delete/markRead
// 消息列表
hooks/use-messages.ts MessageController.list
// 消息操作
hooks/use-message-actions.ts MessageController.markRead/delete
// 文件上传
lib/uploadFile.ts FileController.uploadS3
```
---
## 四、对接优先级建议
### 高优先级
1. **generationRecord** - 删除作品功能
- SDK 接口已可用
- 用户核心功能
2. **membership** - 会员订阅支付
- 商业核心功能
- 需要完整的支付流程对接
### 中优先级
3. **searchWorks/searchWorksResults** - 作品搜索
- 替换模拟数据
- 提升用户体验
4. **changePassword** - 修改密码
- 用户账户安全功能
- 需要确认接口位置
---
## 五、总结
### 当前状态
- 项目的基础功能接口对接已基本完成 (15/19 页面)
- 核心业务流程 (浏览、生成、管理) 已打通
### 需要关注的点
1. **支付功能** - 会员订阅是商业核心,需要优先完成
2. **作品管理** - 删除功能是用户基本需求
3. **搜索功能** - 需要替换模拟数据为真实接口
### 可进一步利用的 SDK 功能
SDK 中还有许多接口尚未使用,包括:
- 社交功能 (点赞、收藏、评论、分享)
- 项目管理
- AI 角色和聊天
- 视频处理 (合成、转换、水印)
---
*报告生成于 2026-01-23*