zhibo/API接口对接分析报告.md
2025-12-29 14:56:26 +08:00

300 lines
14 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 直播系统 API 接口对接分析报告
> 生成时间2025-12-29
> 分析范围后端API、管理端、移动端Android
---
## 一、系统架构概览
| 系统 | 路径 | 技术栈 |
|------|------|--------|
| 后端API (Front) | `Zhibo/zhibo-h/crmeb-front` | Spring Boot + MyBatis-Plus |
| 后端API (Admin) | `Zhibo/zhibo-h/crmeb-admin` | Spring Boot + MyBatis-Plus |
| 管理端 | `Zhibo/admin` | Vue.js |
| 移动端 | `android-app` | Android (Java/Kotlin) + Retrofit |
---
## 二、移动端 API 接口对接状态
### 2.1 用户认证模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 登录 | POST `/api/front/login` | ✅ ApiService.login() | 完整 |
| 注册 | POST `/api/front/register` | ✅ ApiService.register() | 完整 |
| 发送验证码 | POST `/api/front/sendCode` | ✅ ApiService.sendCode() | 完整 |
| 退出登录 | GET `/api/front/logout` | ✅ ApiService.logout() | 完整 |
### 2.2 用户信息模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 获取用户信息 | GET `/api/front/user` | ✅ ApiService.getUserInfo() | 完整 |
| 更新用户信息 | POST `/api/front/user/edit` | ✅ ApiService.updateUserInfo() | 完整 |
### 2.3 直播间模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 获取直播间列表 | GET `/api/front/live/public/rooms` | ✅ ApiService.getRooms() | 完整 |
| 创建直播间 | POST `/api/front/live/rooms` | ✅ ApiService.createRoom() | 完整 |
| 获取直播间详情 | GET `/api/front/live/public/rooms/{id}` | ✅ ApiService.getRoom() | 完整 |
| 删除直播间 | DELETE `/api/front/live/rooms/{id}` | ✅ ApiService.deleteRoom() | 完整 |
| 获取观看人数 | GET `/api/front/live/public/rooms/{roomId}/viewers/count` | ✅ ApiService.getViewerCount() | 完整 |
| 关注主播 | POST `/api/front/live/follow` | ✅ ApiService.followStreamer() | 完整 |
### 2.4 直播弹幕模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 获取弹幕消息 | GET `/api/front/live/public/rooms/{roomId}/messages` | ✅ ApiService.getRoomMessages() | 完整 |
| 发送弹幕消息 | POST `/api/front/live/public/rooms/{roomId}/messages` | ✅ ApiService.sendRoomMessage() | 完整 |
### 2.5 礼物打赏模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 获取礼物列表 | GET `/api/front/gift/list` | ✅ ApiService.getGiftList() | 完整 |
| 获取用户余额 | GET `/api/front/gift/balance` | ✅ ApiService.getUserBalance() | 完整 |
| 赠送礼物 | POST `/api/front/gift/send` | ✅ ApiService.sendGift() | 完整 |
| 获取充值选项 | GET `/api/front/gift/recharge/options` | ✅ ApiService.getRechargeOptions() | 完整 |
| 创建充值订单 | POST `/api/front/gift/recharge/create` | ✅ ApiService.createRecharge() | 完整 |
### 2.6 私聊会话模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 获取会话列表 | GET `/api/front/conversations` | ✅ ApiService.getConversations() | 完整 |
| 搜索会话 | GET `/api/front/conversations/search` | ✅ ApiService.searchConversations() | 完整 |
| 获取/创建会话 | POST `/api/front/conversations/with/{otherUserId}` | ✅ ApiService.getOrCreateConversation() | 完整 |
| 标记已读 | POST `/api/front/conversations/{id}/read` | ✅ ApiService.markConversationRead() | 完整 |
| 删除会话 | DELETE `/api/front/conversations/{id}` | ✅ ApiService.deleteConversation() | 完整 |
| 获取消息列表 | GET `/api/front/conversations/{id}/messages` | ✅ ApiService.getConversationMessages() | 完整 |
| 发送消息 | POST `/api/front/conversations/{id}/messages` | ✅ ApiService.sendPrivateMessage() | 完整 |
| 删除消息 | DELETE `/api/front/conversations/messages/{id}` | ✅ ApiService.deleteMessage() | 完整 |
### 2.7 好友管理模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 获取好友列表 | GET `/api/front/friends` | ✅ ApiService.getFriends() | 完整 |
| 删除好友 | DELETE `/api/front/friends/{friendId}` | ✅ ApiService.deleteFriend() | 完整 |
| 搜索用户 | GET `/api/front/users/search` | ✅ ApiService.searchUsers() | 完整 |
| 发送好友请求 | POST `/api/front/friends/request` | ✅ ApiService.sendFriendRequest() | 完整 |
| 获取好友请求 | GET `/api/front/friends/requests` | ✅ ApiService.getFriendRequests() | 完整 |
| 处理好友请求 | POST `/api/front/friends/requests/{requestId}/handle` | ✅ ApiService.handleFriendRequest() | 完整 |
### 2.8 通话功能模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 发起通话 | POST `/api/front/call/initiate` | ✅ CallApiService.initiateCall() | 完整 |
| 接听通话 | POST `/api/front/call/accept/{callId}` | ✅ CallApiService.acceptCall() | 完整 |
| 拒绝通话 | POST `/api/front/call/reject/{callId}` | ✅ CallApiService.rejectCall() | 完整 |
| 取消通话 | POST `/api/front/call/cancel/{callId}` | ✅ CallApiService.cancelCall() | 完整 |
| 结束通话 | POST `/api/front/call/end/{callId}` | ✅ CallApiService.endCall() | 完整 |
| 获取通话记录 | GET `/api/front/call/history` | ✅ CallApiService.getCallHistory() | 完整 |
| 删除通话记录 | DELETE `/api/front/call/record/{recordId}` | ✅ CallApiService.deleteCallRecord() | 完整 |
| 获取未接来电数 | GET `/api/front/call/missed/count` | ✅ CallApiService.getMissedCallCount() | 完整 |
| 获取通话状态 | GET `/api/front/call/status` | ✅ CallApiService.getCallStatus() | 完整 |
| 获取通话详情 | GET `/api/front/call/detail/{callId}` | ✅ CallApiService.getCallDetail() | 完整 |
### 2.9 在线状态模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 检查用户在线 | GET `/api/front/online/status/{userId}` | ✅ ApiService.checkUserOnline() | 完整 |
| 批量检查在线 | POST `/api/front/online/status/batch` | ✅ ApiService.checkUsersOnline() | 完整 |
| 获取房间在线数 | GET `/api/front/online/room/{roomId}/count` | ✅ ApiService.getRoomOnlineCount() | 完整 |
| 获取房间在线用户 | GET `/api/front/online/room/{roomId}/users` | ✅ ApiService.getRoomOnlineUsers() | 完整 |
| 获取连接统计 | GET `/api/front/online/stats` | ✅ ApiService.getConnectionStats() | 完整 |
### 2.10 离线消息模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 获取离线消息数 | GET `/api/front/online/offline/count/{userId}` | ✅ ApiService.getOfflineMessageCount() | 完整 |
| 获取离线消息 | GET `/api/front/online/offline/messages/{userId}` | ✅ ApiService.getOfflineMessages() | 完整 |
| 清除离线消息 | DELETE `/api/front/online/offline/messages/{userId}` | ✅ ApiService.clearOfflineMessages() | 完整 |
### 2.11 文件上传模块 ✅ 完整
| 接口 | 后端路径 | Android调用 | 状态 |
|------|----------|-------------|------|
| 上传图片 | POST `/api/front/user/upload/image` | ✅ ApiService.uploadImage() | 完整 |
---
## 三、移动端缺失功能分析
### 3.1 后端已有但移动端未对接 ⚠️
| 功能模块 | 后端Controller | 缺失接口 |
|----------|----------------|----------|
| 优惠券 | CouponController | 获取优惠券列表、领取优惠券 |
| 购物车 | CartController | 购物车增删改查 |
| 订单 | StoreOrderController | 创建订单、订单列表、订单详情 |
| 商品 | ProductController | 商品列表、商品详情、商品搜索 |
| 收货地址 | UserAddressController | 地址增删改查 |
| 用户签到 | UserSignController | 签到、签到记录 |
| 用户收藏 | UserCollectController | 收藏列表、添加/取消收藏 |
| 砍价活动 | BargainController | 砍价列表、参与砍价 |
| 拼团活动 | CombinationController | 拼团列表、参与拼团 |
| 秒杀活动 | SecKillController | 秒杀列表、参与秒杀 |
| 文章资讯 | ArticleController | 文章列表、文章详情 |
| 微信相关 | WeChatController | 微信登录、微信支付 |
### 3.2 移动端功能页面但无后端支持 ⚠️
| 移动端页面 | 功能描述 | 后端状态 |
|------------|----------|----------|
| WishTreeActivity | 许愿树 | ❌ 无后端接口 |
| DrawGuessActivity | 你画我猜 | ❌ 无后端接口 |
| VoiceMatchActivity | 语音匹配 | ❌ 无后端接口 |
| OnlineDatingActivity | 在线约会 | ❌ 无后端接口 |
| HeartbeatSignalActivity | 心动信号 | ❌ 无后端接口 |
| KTVTogetherActivity | K歌房 | ❌ 无后端接口 |
| TableGamesActivity | 桌游 | ❌ 无后端接口 |
| PeaceEliteActivity | 和平精英 | ❌ 无后端接口 |
| FishPondActivity | 鱼塘 | ❌ 无后端接口 |
| FindGameActivity | 找游戏 | ❌ 无后端接口 |
---
## 四、管理端 API 对接状态
### 4.1 已对接模块 ✅
| 模块 | 管理端API文件 | 后端Controller | 状态 |
|------|---------------|----------------|------|
| 用户管理 | user.js | UserController | ✅ 完整 |
| 房间管理 | room.js | RoomController | ✅ 完整 |
| 礼物管理 | giftDetail.js | GiftDetailController | ✅ 完整 |
| 礼物打赏记录 | giftRewardRecord.js | GiftRewardRecordController | ✅ 完整 |
| 充值管理 | liveRecharge.js | LiveRechargeController | ✅ 完整 |
| 提现管理 | withdraw.js | WithdrawController | ✅ 完整 |
| 黑名单 | blacklist.js | BlacklistController | ✅ 完整 |
| 举报管理 | report.js | ReportController | ✅ 完整 |
| 敏感词 | sensitiveWord.js | SensitiveWordController | ✅ 完整 |
| 系统配置 | systemConfig.js | SystemConfigController | ✅ 完整 |
| 角色权限 | role.js | SystemRoleController | ✅ 完整 |
| 管理员 | systemadmin.js | SystemAdminController | ✅ 完整 |
| 文章管理 | article.js | ArticleController | ✅ 完整 |
| 分类管理 | categoryApi.js | CategoryController | ✅ 完整 |
| 优惠券 | marketing.js | StoreCouponController | ✅ 完整 |
| 订单管理 | order.js | StoreOrderController | ✅ 完整 |
| 商品管理 | store.js | StoreProductController | ✅ 完整 |
| 坐骑管理 | mount.js | MountController | ✅ 完整 |
| 头饰管理 | headwear.js | HeadwearController | ✅ 完整 |
| 贵族等级 | nobleLevel.js | NobleLevelController | ✅ 完整 |
| 魅力等级 | charmLevel.js | CharmLevelController | ✅ 完整 |
| 家族管理 | familyList.js | FamilyListController | ✅ 完整 |
| 动态管理 | dynamic.js | DynamicController | ✅ 完整 |
| 评论管理 | comment.js | CommentController | ✅ 完整 |
| 聊天管理 | chat.js | ChatManagementController | ✅ 完整 |
### 4.2 管理端缺失功能 ⚠️
| 功能 | 描述 | 建议 |
|------|------|------|
| 通话记录管理 | 查看/管理用户通话记录 | 需新增 CallRecordController |
| 私聊消息管理 | 查看/管理私聊消息 | 需新增 PrivateMessageController |
| 会话管理 | 查看/管理用户会话 | 需新增 ConversationController |
| 好友关系管理 | 查看/管理好友关系 | 需新增 FriendController |
| 在线状态监控 | 实时查看在线用户 | 需新增监控面板 |
| WebSocket监控 | 监控WS连接状态 | 需新增监控面板 |
---
## 五、WebSocket 接口状态
### 5.1 已实现的WebSocket端点
| 端点 | 路径 | Handler | 功能 |
|------|------|---------|------|
| 直播弹幕 | `/ws/live/chat/{roomId}` | LiveChatHandler | 直播间实时弹幕 |
| 私聊 | `/ws/chat/{conversationId}` | PrivateChatHandler | 私聊实时消息 |
| 通话信令 | `/ws/call` | CallSignalingHandler | 语音/视频通话信令 |
### 5.2 WebSocket认证
- ✅ WebSocketAuthInterceptor 已实现
- ✅ 支持token验证
- ✅ 支持用户ID提取
---
## 六、优化建议
### 6.1 高优先级 🔴
1. **支付集成**
- 当前充值订单只生成订单号,未集成真实支付
- 建议:集成微信支付/支付宝SDK
2. **实时通话优化**
- WebRTC信令服务需要完善
- 建议集成TURN/STUN服务器
3. **消息推送**
- 缺少离线推送能力
- 建议:集成极光推送/个推
### 6.2 中优先级 🟡
1. **电商功能对接**
- 移动端缺少购物车、订单、商品模块
- 建议:根据业务需求决定是否对接
2. **管理端监控**
- 缺少实时在线监控
- 建议新增WebSocket监控面板
3. **娱乐功能后端**
- 许愿树、K歌房等功能无后端
- 建议:根据产品规划逐步实现
### 6.3 低优先级 🟢
1. **API文档**
- 建议集成Swagger UI自动生成API文档
2. **接口版本管理**
- 建议添加API版本号 `/api/v1/front/...`
3. **限流防刷**
- 建议:添加接口限流中间件
---
## 七、总结
### 整体完成度
| 系统 | 完成度 | 说明 |
|------|--------|------|
| 后端API (Front) | 85% | 核心功能完整,部分娱乐功能待开发 |
| 后端API (Admin) | 90% | 管理功能完善,缺少部分监控功能 |
| 移动端 (Android) | 80% | 核心功能对接完整,电商模块未对接 |
| 管理端 (Vue) | 85% | 功能完善,缺少实时监控 |
### 核心功能状态
| 功能 | 后端 | 移动端 | 管理端 |
|------|------|--------|--------|
| 用户认证 | ✅ | ✅ | ✅ |
| 直播间 | ✅ | ✅ | ✅ |
| 弹幕消息 | ✅ | ✅ | ✅ |
| 礼物打赏 | ✅ | ✅ | ✅ |
| 私聊会话 | ✅ | ✅ | ⚠️ |
| 好友管理 | ✅ | ✅ | ⚠️ |
| 语音/视频通话 | ✅ | ✅ | ⚠️ |
| 在线状态 | ✅ | ✅ | ⚠️ |
| 充值支付 | ⚠️ | ⚠️ | ✅ |
---
*报告生成完毕*