# 开发任务列表: 003 - 用户端体验

基于实施计划，为“用户端体验”功能分解出以下开发任务。

## 后端 (Backend)

### 核心服务与数据库

- [x] **BE-DB-06**: 创建 `short_links` 表的数据库迁移脚本。
- [x] **BE-DB-07**: 为 `invitations` 表增加 `status` 字段的数据库迁移脚本。（实现为 `user_invites.status`）
- [x] **BE-SVC-01**: 实现短链接生成服务，包括 `POST /api/v1/internal/shorten` 内部接口。
- [x] **BE-SVC-02**: 实现短链接重定向的公共接口 `GET /r/{code}`。
- [x] **BE-SVC-03**: 实现海报生成服务 `GET /api/v1/me/poster`，需支持图片和JSON两种返回模式。

### API & 业务逻辑

- [x] **BE-API-11**: 实现获取用户专属邀请信息 (`GET /api/v1/me/invitation-info`) 的业务逻辑。
- [x] **BE-API-12**: 实现获取邀请好友列表 (`GET /api/v1/me/invited-friends`) 的业务逻辑，包含分页和隐私处理。
- [x] **BE-API-13**: 实现获取用户奖励列表 (`GET /api/v1/me/rewards`) 的业务逻辑，包含分页。
- [x] **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` 组件中，实现对海报生成接口的调用及失败/降级时的客户端渲染逻辑。
