API: - 新增 player-messages 域:充值审核通过/拒绝、Banner/公告推广消息,支持多语言模板 - 新增 presence 域:Redis 心跳在线状态,管理端可查询在线玩家数 - User 表增加 visible_menus 字段;新增 player_messages 表及迁移 - 充值审核通过/拒绝时按系统配置自动写入玩家站内消息 - 管理端新增 GET /deposit-orders/pending-count、GET /presence/online-count - 玩家端新增消息 CRUD、presence/ping、home 返回 inbox 开关配置 - 员工管理支持 visibleMenus 配置与删除保护(不能删自己/最后超管) - SystemConfig 增加 inbox 功能开关及各类通知开关 Admin: - 员工管理:按角色默认菜单 + 可勾选可见菜单项 - ManageLayout:按 visibleMenus 过滤侧栏;充值待审数量角标轮询 - Contents:富文本编辑器、图片字段组件重构 - DashboardPlayers:展示在线玩家数;AdminPlayerStatusCell 在线状态列 - 多页面 i18n 与权限细节调整 Player: - 站内邮箱中心(InboxHub):消息列表/详情、未读角标、一键已读/删除 - 公告列表与详情页;走马灯可跳转详情 - 客服 Modal 改为 Panel,与邮箱 Hub 整合 - 充值状态轮询通知;presence 心跳;BetSlip 清空二次确认 - HomeView 今日赛事板块;FootballView 等体验优化 Shared: 新增 CANNOT_DELETE_SELF、STAFF_NOT_FOUND、MESSAGE_NOT_FOUND 等错误码 Docs: 玩家端缺失功能分析文档 Chore: 移除 .agents/skills 设计类 skill 文件 Co-authored-by: Cursor <cursoragent@cursor.com>
157 lines
7.1 KiB
Markdown
157 lines
7.1 KiB
Markdown
## 玩家端缺失功能分析
|
||
|
||
> 基于 PRD v1.2 要求 + 行业通用标准,对比当前代码实际实现情况
|
||
> 分析日期:2026-06-17
|
||
|
||
---
|
||
|
||
### 一、PRD 明确要求但尚未完整实现的功能
|
||
|
||
#### 1. 首页「今日赛事」板块
|
||
|
||
PRD 4.4 节明确要求首页同时展示「热门赛事」和「今日赛事」两个板块。当前 HomeView.vue 只渲染了 `hotMatches`,缺少按当天开赛时间筛选的「今日赛事」列表。后端 `/player/home` 接口实际已返回 `todayMatches` 数据,前端未消费。
|
||
|
||
#### 2. 公告详情页
|
||
|
||
PRD 17.2 节将公告定义为"可点击查看详情的完整内容",与走马灯(短文案滚动)是两种不同的内容形态。当前只有 AnnouncementMarquee 走马灯组件,点击后没有跳转到公告详情页查看完整正文。
|
||
|
||
#### 3. 投注规则独立页面
|
||
|
||
PRD 3.3 节要求"投注规则说明必须三语,减少争议"。当前规则内容硬编码在 ProfileView.vue 的 5 段 i18n 翻译文本中(rules_p1 ~ rules_p5),不可由后台动态维护,也没有独立的规则页面。建议做成后台可编辑、前台可独立访问的规则中心页面。
|
||
|
||
---
|
||
|
||
### 二、业务闭环缺失的关键功能
|
||
|
||
#### 4. 提款 / 出金
|
||
|
||
当前已实现充值(Recharge)全流程——银行转账、USDT、截图上传、审核、入账。但完全没有提款/出金功能。玩家赢了钱却无法主动申请提款,这在业务闭环上是最大的缺口。至少需要:提款申请页面、提款方式选择、金额输入、提款记录与状态追踪。
|
||
|
||
#### 5. 注单结算/派彩通知
|
||
|
||
玩家下注后,赛事结算完成时没有任何主动通知机制。玩家只能反复刷"我的投注"才知道结果。需要:注单结算后推送通知(站内消息或 WebSocket 实时推送),至少在下注成功页和注单列表中有明确的"等待开奖"与"已开奖"状态区分。
|
||
|
||
#### 6. 充值/提款状态通知
|
||
|
||
充值订单审核通过或被拒绝后,玩家没有收到即时通知。目前只能在充值历史页面手动查看状态变化。
|
||
|
||
---
|
||
|
||
### 三、体验层面的缺失功能
|
||
|
||
#### 7. 赛事 / 球队搜索
|
||
|
||
当前赛事浏览路径只有:联赛筛选 → 时间筛选 → 列表滚动。当赛事数量多时,玩家无法通过关键词搜索球队名或联赛名快速定位比赛。需要在赛事列表页或首页增加搜索框。
|
||
|
||
#### 8. 投注单清空确认
|
||
|
||
BetSlipDrawer 中清空投注单没有二次确认弹窗,容易误操作导致已选择的投注项丢失。
|
||
|
||
#### 9. 投注单赔率实时更新提示
|
||
|
||
PRD 7.3 节要求"赔率已变化,拒绝下注,提示重新确认"。当前提交时校验赔率版本会报错,但在投注单停留期间没有实时检测赔率变化并主动标记(如高亮变化项、显示新旧赔率对比),玩家只有在点提交时才知道赔率变了。
|
||
|
||
#### 10. 盘口封盘倒计时
|
||
|
||
赛事列表和详情页没有显示距离封盘的倒计时。玩家不知道赛事何时关闭投注,影响下注决策。
|
||
|
||
#### 11. 快捷金额按钮自定义
|
||
|
||
PRD 4.3 节桌面端布局提到"快捷投注金额"。当前 BetSlipDrawer 中有固定的快捷金额按钮(Min/5、+50、+100、Max),但不能由后台配置或让玩家自定义。
|
||
|
||
#### 12. 我的投注 - 按赛事/时间筛选
|
||
|
||
MyBetsView 目前支持按状态筛选(全部/赢/输/待结算/走水),缺少按赛事、按时间范围筛选的能力,注单多了之后查找困难。
|
||
|
||
#### 13. 注单详情页 - 缺少分享/截图功能
|
||
|
||
玩家无法分享或保存注单截图。在社交平台传播场景中,注单截图是常见的拉新素材。
|
||
|
||
---
|
||
|
||
### 四、安全与合规相关缺失
|
||
|
||
#### 14. 负责任博彩 / 自我限额
|
||
|
||
PRD 18.1 节提到玩家每日投注上限和派彩上限由后台配置,但前台没有向玩家展示当前限额使用情况(如"今日已投注 X / 上限 Y"),也没有自我设置存款限额、投注限额、冷静期等负责任博彩工具。对于面向合法市场的平台,这通常是合规要求。
|
||
|
||
#### 15. 登录安全 - 缺少二次验证
|
||
|
||
玩家端登录只有密码 + 人机验证(RobotVerify),没有可选的短信验证码二次验证或 TOTP,安全性偏弱。
|
||
|
||
#### 16. 会话管理
|
||
|
||
玩家无法查看当前活跃会话(哪些设备在登录),也无法远程踢出其他设备的会话。
|
||
|
||
---
|
||
|
||
### 五、运营与增长相关缺失
|
||
|
||
#### 17. 邀请好友入口
|
||
|
||
后端已有完整的邀请码系统(生成邀请码、设置返水比例、邀请列表、撤销),但玩家前台没有"邀请好友"入口页面,无法查看自己的邀请码、邀请链接、邀请记录和奖励。
|
||
|
||
#### 18. 活动 / 优惠专区
|
||
|
||
没有活动页面或优惠专区。运营无法通过前台展示限时活动、新人奖励、充值优惠等信息。目前只能依赖 Banner 和公告,缺乏独立的活动落地页。
|
||
|
||
#### 19. VIP / 等级体系
|
||
|
||
没有玩家等级体系。成熟平台通常根据投注量、充值额等划分 VIP 等级,不同等级享受不同返水比例、专属客服、提款加速等权益。
|
||
|
||
---
|
||
|
||
### 六、数据辅助功能缺失
|
||
|
||
#### 20. 赛事数据 / 历史战绩
|
||
|
||
赛事详情页只展示盘口和赔率,没有历史交锋记录、球队近期战绩、联赛积分榜等辅助数据。这些数据可以帮助玩家做投注决策,也是提升用户粘性的手段。
|
||
|
||
#### 21. 投注统计 / 个人报表
|
||
|
||
虽然有 BetStatsPanel 显示注单数/赢/输/待结算的基础统计,但缺少更丰富的个人投注报表:按时间段统计、按玩法统计、盈亏趋势图、返水收入统计等。
|
||
|
||
---
|
||
|
||
### 七、其他体验优化建议
|
||
|
||
| 编号 | 功能 | 说明 |
|
||
|---|---|---|
|
||
| 22 | 赛事收藏 / 关注 | 玩家可以收藏感兴趣的赛事,快速筛选查看 |
|
||
| 23 | 多赔率格式切换 | PRD 二期提到支持 Decimal/Malay/HK/Indo/American 格式,当前只有十进制 |
|
||
| 24 | PWA / 添加到主屏幕 | 移动端 H5 支持 PWA 安装提示,提升留存 |
|
||
| 25 | 网络状态提示 | 弱网或断网时显示明确提示,避免下注失败无感知 |
|
||
| 26 | 暗色/亮色主题切换 | 当前只有深色主题,没有亮色模式 |
|
||
| 27 | 系统公告弹窗 | 维护、重大赛事等场景的全屏弹窗通知,目前只有走马灯 |
|
||
| 28 | 盘口排序偏好 | 允许玩家调整盘口分组默认排序(如把让球放在独赢前面) |
|
||
|
||
---
|
||
|
||
### 优先级建议
|
||
|
||
**P0 - 必须补齐(影响业务闭环):**
|
||
- 提款功能(#4)
|
||
- 邀请好友入口(#17)— 后端已就绪,只差前端页面
|
||
- 注单结算通知(#5)
|
||
|
||
**P1 - 高优先级(影响核心体验):**
|
||
- 今日赛事板块(#1)— 后端数据已有,前端未消费
|
||
- 赛事搜索(#7)
|
||
- 投注规则独立页面(#3)
|
||
- 公告详情页(#2)
|
||
- 负责任博彩 / 限额展示(#14)
|
||
|
||
**P2 - 中优先级(体验优化):**
|
||
- 盘口封盘倒计时(#10)
|
||
- 赔率变化实时标记(#9)
|
||
- 注单筛选增强(#12)
|
||
- 投注单清空确认(#8)
|
||
- 充值/提款状态通知(#6)
|
||
|
||
**P3 - 低优先级(长期迭代):**
|
||
- VIP 等级体系(#19)
|
||
- 活动专区(#18)
|
||
- 赛事数据/历史战绩(#20)
|
||
- 多赔率格式(#23)
|
||
- PWA(#24)
|