Files
wenzi/specs/003-user-experience/tasks.md

36 lines
1.9 KiB
Markdown
Raw Normal View History

# 开发任务列表: 003 - 用户端体验
基于实施计划,为“用户端体验”功能分解出以下开发任务。
## 后端 (Backend)
### 核心服务与数据库
- [ ] **BE-DB-06**: 创建 `short_links` 表的数据库迁移脚本。
- [ ] **BE-DB-07**: 为 `invitations` 表增加 `status` 字段的数据库迁移脚本。
- [ ] **BE-SVC-01**: 实现短链接生成服务,包括 `POST /api/v1/internal/shorten` 内部接口。
- [ ] **BE-SVC-02**: 实现短链接重定向的公共接口 `GET /r/{code}`
- [ ] **BE-SVC-03**: 实现海报生成服务 `GET /api/v1/me/poster`需支持图片和JSON两种返回模式。
### API & 业务逻辑
- [ ] **BE-API-11**: 实现获取用户专属邀请信息 (`GET /api/v1/me/invitation-info`) 的业务逻辑。
- [ ] **BE-API-12**: 实现获取邀请好友列表 (`GET /api/v1/me/invited-friends`) 的业务逻辑,包含分页和隐私处理。
- [ ] **BE-API-13**: 实现获取用户奖励列表 (`GET /api/v1/me/rewards`) 的业务逻辑,包含分页。
- [ ] **BE-TEST-03**: 为所有用户端相关的API Endpoints 编写单元测试和集成测试。
## 前端 (Frontend)
### UI 组件
- [ ] **FE-UI-12**: 开发 `UserCenter` 页面的主布局组件。
- [ ] **FE-UI-13**: 开发 `ShareModule` 组件,实现短链接复制、海报展示及客户端渲染降级逻辑。
- [ ] **FE-UI-14**: 开发一个可复用的 `InfiniteScrollList` 无限滚动列表组件。
- [ ] **FE-UI-15**: 开发 `InvitedFriendItem``RewardItem` 列表项组件。
### 状态管理与集成
- [ ] **FE-API-03**: 在API客户端中新增所有用户端相关的请求函数。
- [ ] **FE-INT-03**: 使用 `React Query` 或类似工具库,将 `InfiniteScrollList` 组件与后端分页接口集成。
- [ ] **FE-INT-04**: 在 `ShareModule` 组件中,实现对海报生成接口的调用及失败/降级时的客户端渲染逻辑。