89 Commits

Author SHA1 Message Date
mars
3c7dd165bc 更新登录页抠边背景图 2026-07-24 11:41:40 +08:00
mars
52529384e3 Revert "恢复登录页抠边背景资源"
This reverts commit 41dc92a0de.
2026-07-24 11:39:50 +08:00
mars
41dc92a0de 恢复登录页抠边背景资源 2026-07-24 11:37:27 +08:00
mars
1fb41fc18e 优化桌面登录表单焦点状态 2026-07-24 11:10:51 +08:00
mars
394c28f08f 优化玩家端暗金主题资源并清理未引用图片 2026-07-24 10:26:11 +08:00
mars
b02e79785e feat(player): refresh dark gold betting theme
- add generated dark-gold WebP assets for PC/mobile backgrounds, cards, dialogs, tabs, mailbox, VS and bet buttons
- apply the new assets across player home, match detail, outright cards, modals, wallet/profile/detail screens and bet slip controls
- simplify confirm dialogs and reuse bet button resources for normal/pressed states
- hide mobile announcement center, tighten mobile bet list layout, and remove extra dark page backgrounds/scrollbar styling
- cache and deduplicate outright market loading to speed up repeated tab/detail navigation
- document player image-generation constraints in AGENTS.md
2026-07-23 17:34:40 +08:00
mars
375d352df2 样式优化 2026-07-13 09:34:24 +08:00
mars
091dc5c15c feat(player): ui-ux-pro-max design system upgrade for desktop 2026-07-10 18:03:18 +08:00
mars
7ea7deeb52 feat(player): PC端投注/资金详情弹窗化 + 详情页布局优化 - 新增 DesktopBetDetailModal / DesktopTxDetailModal 弹窗组件,列表点击弹窗展示详情 - 优化 PC 端注单详情、钱包交易详情、个人资料页的布局(双列网格、加宽 max-width) - 添加相关 i18n 三语翻译 key - DesktopMyBetsView / DesktopWalletView 列表项点击改为打开弹窗而非跳转页面 2026-07-10 15:01:40 +08:00
mars
cca74310ed feat(player): 重构 PC 端登录注册布局并优化注单栏与加载态
- 新增 DesktopAuthLayout 与 MouseRippleGrid,登录/注册/忘记密码采用管理端左右卡片布局(左侧大 Logo)

- 登录页补齐 GoldSpinner 全表单加载遮罩与三语 logging_in 文案

- 注单栏与 Hub 侧栏使用 cebian.webp 背景,左侧联赛栏保持纯色
2026-07-07 14:09:54 +08:00
ebcfaad264 fix(player): 未登录悬停赔率仅展示快算弹层,下注时再提示登录 2026-07-06 10:26:38 +08:00
fa42529977 fix(player): 修复桌面充值详情页备注字段 TS 编译错误 2026-07-06 09:43:30 +08:00
3bb4dd9b23 fix(player): 修复顶部语言/余额/头像下拉 hover 间隙导致菜单提前关闭
新增 useHoverDropdown,为下拉菜单增加延迟关闭与透明桥接层,鼠标可从触发按钮顺利移入下拉卡片。
2026-07-02 11:49:16 +08:00
8000c23418 fix(player): 优化桌面快速下注 hover 并修复充值 API 重复方法
删除 deposit.service 中重复的 getPlayerDepositOrder,避免 API 编译失败引发 500;快速下注弹层按卡片实例激活,同场赛事不再多处联动,移入快速下注区域时保持 VS 动画;记录列表改为整行可点,编号统一中性色样式。
2026-07-02 11:12:36 +08:00
66ac69c7a7 feat(player): 充值订单详情与审核记录,优化桌面端交互与记录列表样式
新增充值详情页及单条订单 API,修复桌面充值提交路径;充值/注单记录编号改为中性色,并包含桌面首页与投注相关 UI 改进。
2026-07-02 10:47:46 +08:00
49eb3cb7e0 feat(player-desktop): 优化桌面端首页布局与交互,支持悬停快速下注与优胜冠军侧栏 2026-07-01 17:34:09 +08:00
05fb1b46ab fix(player-desktop): 切换单注/串关/历史选项卡时关闭卡片列表切换动画,使其加载瞬时生效 2026-06-30 18:01:34 +08:00
5ec5f858a5 feat(player-desktop): 改变注单添加顺序,使最新添加的投注项始终在列表最上方 2026-06-30 17:59:36 +08:00
f8501873dd feat(player-desktop): 为右侧投注单卡片列表添加平滑切入和移除动画 2026-06-30 17:58:34 +08:00
544013c25b fix(player-desktop): 恢复优胜赛详情页面的侧边栏为联赛列表组件 2026-06-30 17:56:54 +08:00
e906831103 fix(player-desktop): 修复桌面端注单详情页时间 Invalid Date 及投注选项不显示的 Schema 绑定 bug 2026-06-30 17:55:15 +08:00
c589d97191 fix(player-desktop): 为赔率按钮添加 hover 状态、使首页快速下注激活时按钮高亮 2026-06-30 17:52:27 +08:00
3df0dd8c2c fix(player-desktop): 移除分类及标签的表情符号、修复首页快速下注缺少赔率数据及缺失翻译键的问题 2026-06-30 17:50:38 +08:00
178787e89a feat(player-desktop): 优化注单侧栏面板折叠、隐藏首页滚动条、默认选中联赛、主页添加近期热门快速下注 2026-06-30 17:42:50 +08:00
8a1ba0fd95 feat(player): 新增桌面端 UI 与响应式双端路由架构
- 将原移动端页面重命名为 Mobile*,新增 22 个 Desktop* 视图与 DesktopShell 布局体系
- 路由入口改为 Wrapper 视图,通过 useViewport(≥1024px)自动切换移动/桌面端
- 新增投注单面板、盘口弹层、联赛侧栏、数据表格等桌面组件及独立样式令牌
- 扩展 betSlip store、串关筛选、冠军盘、Toast/悬浮信箱等交互与三语 i18n
- 公告/消息 Hub 拆分移动与桌面实现;API 投注/钱包/充值记录支持 pageSize 分页
2026-06-29 18:01:39 +08:00
5359c9baad fix: add missing formatMoneyCompact import in WalletStatsPanel; fix bat cwd drift in all-themes builder 2026-06-24 11:25:41 +08:00
71203c66bb fix(player): 修复主题分支网站图标不显示
favicon.svg 原外链 /logo.png 浏览器无法加载;改为内嵌 base64

index.html 增加 logo.png 作为 favicon 回退;theme-3 theme-color 对齐 #0F2027
2026-06-23 16:31:38 +08:00
d3c211411b feat(admin+api+player): 优胜赛结算态、禁止新增单场与钱包流水展示优化
- API/管理端:优胜赛 SETTLED 后禁止新增单场,列表与子页展示结算状态
- 玩家端:已结算 outright 只读展示并高亮冠军
- 管理端:结算后 stale 标记驱动列表刷新;财务流水时间与备注 i18n 优化
- shared:txDisplayAmount 与 LEAGUE_OUTRIGHT_SETTLED 错误码
2026-06-23 12:20:40 +08:00
ce84226219 feat(admin+api): 代理停用默认、结算加固与冒烟配置探针
- 代理层级默认授信比例与停用冻结/禁登全局默认

- 结算预览去重、比分校验、串关当场判负与市场类型校验

- 站内信 Banner/公告自动通知开关;开发环境动态 API 端口

- 扩充 RBAC/结算/认证/返现单元测试与 agent skills
2026-06-23 11:08:41 +08:00
fa06fee64c fix(player+admin): 移动端 PWA 安全区、防缩放与局域网调试
玩家端适配主屏幕 safe-area、底部导航滚动隐藏与全屏布局;双端禁止页面缩放并开放 Vite host 供手机联调。
2026-06-22 17:58:51 +08:00
f20243fa8a refactor(player): 重构注单详情页为票据式布局并突出净赢 2026-06-22 15:27:58 +08:00
1210142a33 feat(admin+api+player): 站内信手动发送、媒体库选择与发送记录详情
新增管理员手动发送站内信(三语富文本),支持发送记录查看与删除;修复全站「从媒体库选择」因分类过滤导致列表为空的问题;玩家端支持渲染管理员自定义消息;并优化后台列表页双层卡片布局。
2026-06-22 14:01:31 +08:00
648c314e23 feat(admin+api): 列表页子路由重构、结算历史与充值截图清理
赛事/代理管理从表格展开改为子路由详情页;结算页增加预览弹窗与历史记录;媒体库支持截图存储统计与自动/手动清理;Player 端充值截图压缩为 WebP 300KB。
2026-06-22 12:28:25 +08:00
7288ef3f57 style: separate header back-bar and tabs in InboxHubView on main 2026-06-18 17:37:46 +08:00
4de320f143 fix(player): 冠军盘弹窗支持赔率变更轮询与确认下注
- 打开弹窗后定时拉取最新赔率并展示变更提示
- 赔率变动时按钮切换为「接受变更并下注」,提交前自动锁定新版本
- 接口返回 ODDS_CHANGED 时刷新赔率并引导用户重新确认
2026-06-18 13:46:44 +08:00
f9343b00af feat(player/admin/api): 站内邮箱、在线状态、员工菜单权限与内容管理增强
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>
2026-06-17 17:51:10 +08:00
e9a23de935 fix(admin/player/api): 同步单关串关持久化、仅串关可选与盘口状态展示
1. 后台/API:赛事详情返回 allowSingle/allowParlay,管理端 mapMarkets 正确回读
2. 玩家端:仅关单关时仍可点选加入串关;投注抽屉禁用单关提交并提示
3. 玩家端:盘口暂停/已关闭状态标签;MarketTypeTile 展示 statusLabel

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-17 11:08:43 +08:00
f34fe54489 fix(player): ????????????????
?????????????????+??+?????????????????????????????????/???????????????

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-16 16:25:27 +08:00
06d85953ba feat(player): 新增长页面一键回到顶部按钮
- 在 MainLayout 主滚动区挂载浮动回顶按钮,投注列表与赛事详情等长页通用

- 滚动超过阈值后显示,支持平滑回顶与底部导航避让

- 补充中/英/马来语文案 common.back_to_top

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-16 10:07:09 +08:00
567ec9ec8a feat: 管理端 RBAC 权限体系与员工管理
新增多角色权限控制(赛事/财务/客服管理员),支持员工 CRUD、路由菜单按权限显隐、审计日志范围过滤;登录返回角色与权限列表。玩家端赛事列表增加静默刷新避免图片闪烁。Seed 补充演示员工账号与充值相关权限。附带 RBAC/审计范围单元测试及 UAT 文档更新。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-15 17:52:39 +08:00
afb5c5437e feat: 充值订单审计与重新申请,优化赛事展示和余额刷新
- 新增 deposit_order_audit_logs 表,记录提交/审批/拒绝/撤销/重提全链路
- 管理端充值单页增加审计历史;玩家端充值历史支持时间线与重新申请
- 已拒绝订单可原单号重提;撤销入账使用 PLAYER_DEPOSIT_REVERSAL 并加强幂等
- 结算后清除热门标记,允许归档已结算赛事,完善今日赛事时区窗口
- 足球页今日/早盘独立折叠;资料与余额在进入钱包/个人页及下注后自动刷新
- 补充投注玩法、结算返水规则文档;新增 smoke/settlement CLI 脚本

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-15 14:52:05 +08:00
wchino
73a94e6be3 部署优化 2026-06-13 22:16:14 +08:00
wchino
21dd9957f0 refactor: update match time utilities and improve local match window logic
- Introduced new functions `isInLocalTodayMatchWindow` and `isAfterLocalTodayMatchWindow` to enhance match time checks.
- Replaced the deprecated `dayKeyInTimeZone` function with `isInLocalTodayMatchWindow` in the PlayerController.
- Updated related tests and utility exports to reflect the new naming conventions.
- Improved handling of local match windows in various components for better accuracy.
2026-06-13 18:20:26 +08:00
wchino
7b33d9f9fa 重构 2026-06-13 17:38:25 +08:00
e7e938f261 feat: WC2026 赛事 seed、生产上线初始化脚本与目录归档
重构 seed 为 WC2026 72 场小组赛与 48 强优胜盘;新增 production 模式仅保留 admin 与赛事示例;提供 prod-init-db 全量重置脚本;管理端 i18n 分包与赛事归档能力。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 18:17:00 +08:00
8f14e85ebd fix(player): 走马灯滚动周期调整为 18 秒
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 14:12:43 +08:00
cb9a1e8708 feat: 短信调试日志、Tawk 客服、手机号校验放宽与 Docker 文档
API
- 短信发码/验码/创蓝全链路结构化日志(手机号脱敏)
- 新增 SMS_DEBUG_LOG_CODE,联调时可输出验证码与 sessionId(对应创蓝批次号)
- 注册成功、短信找回密码成功写入审计相关日志
- 放宽手机号归一化:移除区号白名单与 10~15 位长度限制

Player
- 公告走马灯滚动周期调整为 35 秒
- 在线客服接入 Tawk.to(tawk.html),登录用户透传昵称/头像/ID
- 三语补充 support.connecting 文案

部署与文档
- docker-compose 与 .env.docker.example 增加 SMS_DEBUG_LOG_CODE
- 新增 docs/短信调试与日志说明.md、docs/docker 镜像构建导出脚本与说明
- Docker 部署指南补充镜像构建文档链接
- .gitignore 忽略 thebet365-images.tar 与 docker-build.log

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 14:08:00 +08:00
ff89c31b51 feat(player): 玩家端短信找回密码
支持手机号验证码重置密码,重置成功后跳转登录页;SMS 增加 reset_password 场景与 purpose 隔离。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 13:12:00 +08:00
e140861a2b fix(player): 移除钱包与充值页银行卡芯片装饰
去掉 ProfileView、RechargeView 中的 bank-card-chip 元素及样式。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 11:31:14 +08:00
bc5b8e0950 perf(assets): Player/Admin 静态图改用 WebP,vs 保留 PNG
Player 端 banner/bg/card/h5bg 等改为 webp 并移除旧 png;Admin 登录背景改 webp;vs 对阵图仍用 png。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-12 11:16:51 +08:00