refactor: 完成全站国际化改造,统一多语言支持
此提交完成了全项目的国际化适配: 1. 新增多语言翻译文件与基础配置 2. 替换所有硬编码文本为i18n调用 3. 优化语言切换与文档语言同步逻辑 4. 重构部分业务逻辑以支持动态翻译 5. 移除过时代码与硬编码配置
This commit is contained in:
@@ -1,30 +1,44 @@
|
||||
/**
|
||||
* 下注业务码与玩家可见说明(对齐 Laravel `ErrorCode` 与产品文档 §6.3 / §6.4)。
|
||||
*/
|
||||
export function mapTicketBetError(code: number, fallbackMsg: string): string {
|
||||
export function mapTicketBetError(
|
||||
code: number,
|
||||
fallbackMsg: string,
|
||||
t?: (key: string) => string,
|
||||
): string {
|
||||
const msg = (key: string, fallback: string) => t?.(key) ?? fallback;
|
||||
switch (code) {
|
||||
case 4001:
|
||||
return "该号码本期赔付池不足,已售罄。请更换号码、金额或玩法后重试。";
|
||||
return msg(
|
||||
"hall.ticketError.4001",
|
||||
"该号码本期赔付池不足,已售罄。请更换号码、金额或玩法后重试。",
|
||||
);
|
||||
case 2003:
|
||||
case 1001:
|
||||
return "余额不足,请先转入后再下注。";
|
||||
return msg("hall.ticketError.1001", "余额不足,请先转入后再下注。");
|
||||
case 2001:
|
||||
return "本期已封盘,无法继续下注。";
|
||||
return msg("hall.ticketError.2001", "本期已封盘,无法继续下注。");
|
||||
case 2002:
|
||||
return "该玩法已关闭,请选择其他玩法。";
|
||||
return msg("hall.ticketError.2002", "该玩法已关闭,请选择其他玩法。");
|
||||
case 2004:
|
||||
return "号码格式或长度不符合该玩法要求。";
|
||||
return msg("hall.ticketError.2004", "号码格式或长度不符合该玩法要求。");
|
||||
case 2005:
|
||||
return "玩法参数不完整(如单双大小需选择位数与维度)。";
|
||||
return msg(
|
||||
"hall.ticketError.2005",
|
||||
"玩法参数不完整(如单双大小需选择位数与维度)。",
|
||||
);
|
||||
case 2006:
|
||||
return "当前期号不可下注。";
|
||||
return msg("hall.ticketError.2006", "当前期号不可下注。");
|
||||
case 2007:
|
||||
return "该玩法暂不支持或缺少赔率配置。";
|
||||
return msg("hall.ticketError.2007", "该玩法暂不支持或缺少赔率配置。");
|
||||
case 2008:
|
||||
return "赔率或玩法配置已更新,请关闭预览后重新操作。";
|
||||
return msg(
|
||||
"hall.ticketError.2008",
|
||||
"赔率或玩法配置已更新,请关闭预览后重新操作。",
|
||||
);
|
||||
case 1003:
|
||||
return "下注金额超出该玩法允许范围。";
|
||||
return msg("hall.ticketError.1003", "下注金额超出该玩法允许范围。");
|
||||
default:
|
||||
return fallbackMsg || "下注失败,请稍后重试。";
|
||||
return fallbackMsg || msg("hall.ticketError.fallback", "下注失败,请稍后重试。");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user