refactor: 重构大厅组件以优化状态管理与数据加载

- 在 HallDrawPanel 组件中引入 useHallDrawLive 自定义 Hook,简化状态管理与数据获取逻辑
- 移除不必要的状态与副作用,提升组件性能
- 在 HallScreen 组件中替换 Card 组件为 HallBettingGrid,优化下注表格展示
- 在 HallWalletStrip 组件中添加事件监听以支持钱包刷新功能
This commit is contained in:
2026-05-11 11:52:58 +08:00
parent ea75120269
commit 09ef46e171
13 changed files with 1145 additions and 128 deletions

View File

@@ -0,0 +1,30 @@
/**
* 下注业务码与玩家可见说明(对齐 Laravel `ErrorCode` 与产品文档 §6.3 / §6.4)。
*/
export function mapTicketBetError(code: number, fallbackMsg: string): string {
switch (code) {
case 4001:
return "该号码本期赔付池不足,已售罄。请更换号码、金额或玩法后重试。";
case 2003:
case 1001:
return "余额不足,请先转入后再下注。";
case 2001:
return "本期已封盘,无法继续下注。";
case 2002:
return "该玩法已关闭,请选择其他玩法。";
case 2004:
return "号码格式或长度不符合该玩法要求。";
case 2005:
return "玩法参数不完整(如单双大小需选择位数与维度)。";
case 2006:
return "当前期号不可下注。";
case 2007:
return "该玩法暂不支持或缺少赔率配置。";
case 2008:
return "赔率或玩法配置已更新,请关闭预览后重新操作。";
case 1003:
return "下注金额超出该玩法允许范围。";
default:
return fallbackMsg || "下注失败,请稍后重试。";
}
}