Files
thebet365/apps/admin/src/i18n/pages/zh.ts
Mars 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

1018 lines
54 KiB
TypeScript
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.
/** 列表页 / 弹窗文案(并入 admin-messages */
const adminPages: Record<string, string> = {
'common.detail': '详情',
'common.create': '创建',
'common.create_btn': '+ 新建',
'common.save': '保存',
'common.close': '关闭',
'common.import': '导入',
'common.publish': '发布',
'common.topup': '上分',
'common.adjust_credit': '调额',
'common.freeze': '冻结',
'common.unfreeze': '解冻',
'common.settle': '结算',
'common.resettle': '重新结算',
'common.close_betting': '封盘',
'common.reopen_betting': '解除封盘',
'common.never_login': '从未登录',
'common.optional': '选填',
'common.to': '止',
'common.module': '模块',
'common.col_id': 'ID',
'common.times': '次',
'common.bets_count_unit': '笔',
'user.create_btn': '+ 新建玩家',
'user.filter.username_ph': '用户名',
'user.filter.agent': '所属代理',
'user.filter.agent_ph': '全部',
'user.col.username': '用户名',
'user.col.agent': '所属代理',
'user.col.agent_cashback': '代理返水率',
'user.col.player_cashback': '玩家返水率',
'user.col.invite_code': '邀请码',
'user.col.balance': '可用 / 冻结',
'user.col.bets': '注单',
'user.col.stake_payout': '投注 / 派彩',
'user.col.last_login': '最后登录',
'user.col.created': '注册时间',
'user.status.ACTIVE': '正常',
'user.status.SUSPENDED': '停用',
'user.dialog.create': '新建玩家',
'user.dialog.edit': '编辑玩家',
'user.dialog.deposit': '玩家上分',
'user.dialog.detail': '玩家详情',
'user.field.password': '登录密码',
'user.field.confirm_password': '确认密码',
'user.field.initial_balance': '初始余额',
'user.field.deposit_remark': '上分备注',
'user.field.initial_deposit_kind': '流水说明',
'user.initial_deposit_kind.daily': '日常充值',
'user.initial_deposit_kind.opening_bonus': '开户赠金',
'user.initial_deposit_kind.custom': '自定义',
'user.ph.initial_deposit_custom': '请输入流水说明(至少 2 个字符)',
'user.field.amount': '金额',
'user.field.remark': '备注',
'user.field.account_status': '账号状态',
'user.field.available': '可用余额',
'user.field.frozen_balance': '冻结余额',
'user.field.bets_summary': '注单 / 投注',
'user.field.total_payout': '累计派彩',
'user.field.login_fail': '登录失败',
'user.field.phone': '手机',
'user.field.email': '邮箱',
'user.field.allow_password_change': '允许玩家改密码',
'user.field.allow_username_change': '允许玩家改账号名',
'user.field.view_password': '登录密码',
'user.field.reset_password': '重置密码',
'user.password_not_stored': '未记录(玩家已自行修改或未保存)',
'user.btn.show_password': '查看',
'user.btn.hide_password': '隐藏',
'user.ph.reset_password': '留空则不修改;填写后将更新并可查看',
'user.ph.reset_password_short': '留空不修改',
'user.page_settings': '全局设置',
'user.global_settings': '密码与账号管理(全局)',
'user.global_settings_hint': '控制所有玩家是否可在 App 内改密码、改账号名',
'user.reset_database': '重置数据库',
'user.reset_database_hint': '清空全部业务数据并恢复为初始演示数据(用户、赛事、注单、账变等)。此操作不可撤销。',
'user.reset_database_confirm_label': '请输入 RESET 以确认',
'user.reset_database_confirm_ph': '输入 RESET',
'user.reset_database_btn': '重置为初始数据',
'user.reset_database_disabled_prod': '生产环境已禁用;需服务端设置 ALLOW_DB_RESET=true',
'user.reset_database_success': '数据库已重置,请使用初始账号重新登录',
'user.reset_database_accounts': '演示账号',
'user.section.basic_info': '基本信息',
'user.section.affiliation': '归属设置',
'user.section.contact': '联系方式',
'user.section.account_overview': '账户概览',
'user.section.password_mgmt': '密码管理',
'user.field.current_password': '当前密码',
'user.msg.created_with_password': '玩家已创建,登录密码:{password}',
'user.msg.password_saved': '密码已更新,当前可查密码:{password}',
'user.hint.password_reset_to_view': '旧账号暂无记录。请在下方「重置密码」填写新密码并保存,即可在此查看。',
'user.ph.username_unique': '登录用户名,唯一',
'user.ph.username_player': '字母与数字332 位',
'user.hint.username_player': '仅允许英文字母和数字,不可含中文或特殊符号',
'user.ph.no_agent': '不设置(平台直属玩家)',
'user.hint.no_agent': '留空表示不挂靠代理,由平台直接管理',
'user.hint.platform_direct_player': '该玩家隶属于平台(管理员直属)',
'user.hint.initial_balance': '创建后自动上分0 表示不开户上分',
'user.hint.deposit_remark': '有初始余额时写入流水备注',
'user.hint.freeze_in_list': '冻结/解冻请在列表操作列进行',
'user.hint.agent_change': '留空表示平台直属;变更后会重算相关代理已用授信',
'user.hint.agent_readonly': '所属代理创建后不可修改',
'user.hint.allow_password_change': '关闭后所有玩家均不可在客户端修改密码',
'user.hint.allow_username_change': '开启后所有玩家均可在资料页修改登录账号名',
'user.hint.view_password': '仅保存后台创建或重置时的密码;玩家自行改密后会清除',
'user.hint.reset_password': '重置后立即生效,并更新上方可查密码',
'user.btn.create': '创建',
'user.btn.save_profile': '保存资料',
'user.btn.confirm_deposit': '确认上分',
'user.deposit_remark_default': '管理员上分',
'user.withdraw_remark_default': '管理员下分',
'user.field.account_type': '账号类型',
'user.type.player': '玩家',
'user.type.tier1_agent': '一级代理',
'user.type.sub_agent': '二级代理',
'user.hint.account_type': '代理使用授信额度;玩家可挂靠代理并上分',
'agent.create_btn': '+ 新建一级代理',
'agent.create_sub_btn': '+ 新建二级代理',
'agent.create_sub': '创建二级代理',
'agent.create_child_btn': '+ 新建下级代理',
'agent.dialog.create_child_agent': '新建下级代理',
'agent.create_level_agent': '创建{level}级代理',
'agent.create_level_agent_btn': '+ 新建{level}级代理',
'agent.level_name': '{level}级代理',
'agent.level_tab': '{level}级代理',
'agent.dialog.create_level_agent': '新建{level}级代理',
'agent.hint.select_parent_for_level': '请选择 {level} 级代理作为上级',
'agent.err.parent_level_mismatch': '上级代理层级不正确,无法创建 {level} 级代理',
'agent.hint.creating_under_agent': '在此代理下创建账号',
'agent.filter.username_ph': '用户名',
'agent_mgr.tab.players': '玩家',
'agent_mgr.tab.agents': '代理',
'agent.col.level': '层级',
'agent.col.credit': '授信/已用/可用',
'agent.col.direct_players': '直属玩家',
'agent.direct_players_title': '直属玩家 · {name}',
'agent.platform_row_name': '平台',
'agent.col.sub_agents': '下级代理',
'agent.col.cashback': '返水率',
'agent.col.phone': '手机',
'agent.col.created': '创建时间',
'agent.dialog.create': '新建一级代理',
'agent.dialog.edit': '编辑代理',
'agent.dialog.credit': '调整授信额度',
'agent.field.agent_id': '代理 ID',
'agent.dialog.detail': '代理详情',
'agent.field.credit_limit': '授信额度',
'agent.field.cashback_rate': '返水比例',
'agent.field.adjust_amount': '调整金额',
'agent.field.used_credit': '已用额度',
'agent.field.available_credit': '可用授信',
'agent.field.player_liability': '玩家负债',
'agent.field.sub_agent_exposure': '下级代理敞口',
'agent.hint.credit_limit': '代理可向直属玩家上分的总额度上限',
'agent.hint.cashback_example': '例如填写 1 表示 1%',
'agent.field.max_single_deposit': '单笔上分限额',
'agent.field.max_daily_deposit': '日上分限额',
'agent.hint.deposit_limit_empty': '0 表示不限;下级代理不能超过上级设置',
'agent.hint.credit_adjust': '正数为增加授信,负数为减少',
'agent.hint.credit_remark': '选填,写入额度流水',
'agent.section.credit_log': '最近额度变动',
'agent.credit.increase': '增加',
'agent.credit.decrease': '减少',
'agent.col.credit_type': '类型',
'agent.col.credit_change': '变动',
'agent.col.credit_before': '变动前',
'agent.col.credit_after': '变动后',
'agent.credit_tx.filter_agent_ph': '代理用户名',
'agent.credit_tx.filter_agent_id': '代理 ID',
'agent.credit_tx.filter_agent_id_ph': '用户 ID',
'agent.credit_tx.col.operator': '操作人',
'agent.credit_tx.view_all': '查看全部额度流水',
'finance.tab.credit': '额度流水',
'finance.tab.transfer': '上下分流水',
'finance.tab.wallet': '钱包流水',
'finance.filter.type_category': '流水类型',
'finance.filter.type_category_all': '全部',
'finance.filter.type_category_deposit': '上下分',
'finance.filter.type_category_bet': '投注',
'finance.filter.type_category_cashback': '返水',
'finance.col.frozen_before': '变动前冻结',
'finance.col.frozen_after': '变动后冻结',
'finance.col.reference': '关联注单',
'finance.tx.adjust': '余额调整',
'finance.tx.bet_freeze': '投注冻结',
'finance.tx.bet_deduct': '投注扣款',
'finance.tx.bet_win': '投注派彩',
'finance.tx.bet_lose': '投注结算',
'finance.tx.bet_push': '走水返还',
'finance.tx.bet_refund': '投注退款',
'finance.tx.bet_void': '注单作废',
'finance.tx.cashback': '返水',
'finance.tx.resettle': '重结算调整',
'user.action.view_wallet_ledger': '查看资金流水',
'user.action.ledger_short': '流水',
'user.wallet_ledger_dialog_title': '{name} 的资金流水',
'agent.hierarchy.settings_title': '代理层级设置',
'agent.hierarchy.settings_hint': '0 表示不限制代理层级;达到上限的代理将无法创建下级。',
'agent.hierarchy.max_level': '最大代理层级',
'agent.hierarchy.default_sub_credit_ratio': '下级默认授信比例',
'agent.hierarchy.default_sub_credit_ratio_hint': '创建下级代理时,授信额度默认预填为上级可用授信 × 此比例',
'agent.hierarchy.create_credit_default_hint': '默认 {ratio}%{amount}),不超过上级可用授信,可手动调整',
'agent.hierarchy.create_credit_quick_hint': '上级可用授信 {amount},点击比例快速填入',
'agent.hierarchy.create_level_hint': '将创建为 {n} 级代理',
'agent.field.parent_agent': '上级代理',
'agent.col.parent_chain': '上级链路',
'role.agent_level': '{n}级代理',
'finance.filter.date_range': '时间范围',
'finance.filter.player_ph': '玩家用户名',
'finance.filter.parent_agent_ph': '上级代理用户名或 ID',
'finance.filter.operator_ph': '操作人用户名',
'finance.col.player': '玩家',
'finance.col.parent_agent': '上级代理',
'finance.col.tx_id': '流水号',
'finance.col.balance_change': '余额变动',
'finance.col.balance_before': '变动前余额',
'finance.col.balance_after': '变动后余额',
'finance.col.tx_type': '类型',
'finance.col.deposit_method': '充值方式',
'finance.deposit_method.manual_admin': '管理员人工充值',
'finance.deposit_method.manual_agent': '代理人工充值',
'finance.deposit_method.manual': '人工充值',
'finance.tx.deposit': '充值',
'finance.tx.admin_deposit': '管理员上分',
'finance.tx.agent_deposit': '代理上分',
'finance.tx.player_deposit': '自助充值',
'finance.tx.withdraw': '下分',
'finance.tx.admin_withdraw': '管理员下分',
'finance.tx.agent_withdraw': '代理下分',
'finance.tx.request_id': '请求 ID',
'finance.remark.agent_deposit': '代理上分',
'finance.remark.agent_withdraw': '代理下分',
'finance.remark.admin_deposit': '管理员上分',
'finance.remark.admin_withdraw': '管理员下分',
'finance.remark.initial_balance': '开户初始余额',
'agent.col.no_records': '暂无记录',
'agent.btn.confirm_adjust': '确认调整',
'agent.field.select_user': '选择用户',
'agent.ph.select_user': '搜索玩家用户名',
'agent.hint.select_user': '从已有玩家账号中选择,将其设为一级代理(不新建登录账号)',
'agent.freeze.confirm_freeze_title': '确认停用代理',
'agent.freeze.confirm_freeze_body': '确定停用代理「{name}」?停用后该代理无法登录代理端。',
'agent.freeze.confirm_unfreeze_body': '确定恢复代理「{name}」为正常状态?',
'agent.freeze.opt_freeze_direct_players': '同时冻结直属玩家',
'agent.freeze.opt_block_player_login': '禁止直属玩家登录',
'agent.unfreeze.confirm_title': '确认恢复代理',
'agent.unfreeze.opt_unfreeze_direct_players': '同时解冻直属玩家',
'agent.msg.cascade_freeze_done': '已停用代理并冻结其直属玩家',
'agent.msg.cascade_unfreeze_done': '已恢复代理并解冻其直属玩家',
'agent.msg.freeze_done': '已{action}',
'match.create_btn': '+ 新增联赛',
'match.create_fixture_btn': '+ 新增本场赛事',
'match.btn.markets': '盘口',
'match.filter.keyword_ph': '赛事名 / 球队代码',
'match.filter.status_hint': '仅筛选展开后的单场列表与「单场」列计数,不会隐藏新建的空联赛',
'match.col.league': '赛事',
'match.col.league_en': '联赛(英文)',
'match.col.fixture_count': '单场',
'match.col.bet_count': '注单数',
'match.col.total_stake': '总投注额',
'match.col.pending_bets': '待结算',
'match.col.league_code': '代码',
'match.col.matchup': '对阵',
'match.col.kickoff': '开赛时间',
'match.dialog.create_league': '新增赛事',
'match.dialog.edit_league': '编辑赛事',
'match.dialog.create_fixture': '新增单场',
'match.dialog.create': '新增单场',
'match.dialog.edit': '编辑单场',
'match.dialog.import': '导入赛事',
'match.field.league_en': '联赛(英)',
'match.field.league_zh': '联赛(中)',
'match.field.league_ms': '联赛(马来)',
'match.field.league_logo': '赛事 Logo',
'match.field.lang_zh': '中',
'match.field.lang_en': 'EN',
'match.field.lang_ms': 'MS',
'match.field.kickoff': '开赛时间',
'match.field.home_team': '主队',
'match.field.away_team': '客队',
'match.field.home_en': '主队(英)',
'match.field.home_zh': '主队(中)',
'match.field.home_ms': '主队(马来)',
'match.field.away_en': '客队(英)',
'match.field.away_zh': '客队(中)',
'match.field.away_ms': '客队(马来)',
'match.field.featured': '热门',
'match.hint.create_draft': '创建后为草稿,请展开赛事后在单场行点击「发布」并生成盘口。',
'match.hint.create_league': '新建联赛默认为未发布,请在列表点击「发布」后玩家端可见;展开该行可添加单场。',
'league.status.PUBLISHED': '已发布',
'league.status.UNPUBLISHED': '未发布',
'league.btn.unpublish': '下架',
'league.confirm_unpublish': '下架后玩家端将不再展示该联赛,管理端仍可编辑与重新发布。是否继续?',
'msg.league_published': '联赛已发布',
'msg.league_unpublished': '联赛已下架',
'match.btn.unpublish': '下架',
'match.confirm_unpublish': '下架后赛事将回到草稿,玩家端不可见且无法新下注,已有未结注单保留。是否继续?',
'msg.match_unpublished': '赛事已下架',
'match.hint.edit_published': '已发布:可修改开赛时间、热门及显示名称;封盘/已结算后不可编辑。',
'match.expand_league_hint': '展开联赛可管理单场赛事;优胜冠军盘口请到「优胜赛配置」。',
'match.expand_outright_hint': '展开联赛可编辑夺冠赔率;单场球队会自动同步,也可手动补充尚未赛程的球队。',
'outright.odds_only_hint': '单场赛程中的球队会自动加入;可手动添加尚未参赛的球队,并在此调整赔率。冠军盘随联赛发布,无需单独发布。',
'outright.league_unpublished_hint': '联赛尚未发布,请在本页编辑联赛并设为「已发布」后,冠军盘将自动开放投注。',
'outright.unsettled_fixtures_hint': '该联赛仍有 {n} 场单场未结算,请先完成单场结算后再结算冠军盘。',
'outright.btn.reopen': '解盘',
'outright.confirm_reopen': '解盘后将重新接受优胜冠军投注,是否继续?',
'outright.fixture_sync_added': '已从单场自动同步 {n} 支球队',
'outright.col.teams_from_fixtures': '参赛球队(来自单场)',
'outright.col.teams_total': '冠军盘球队',
'outright.empty_no_teams': '暂无球队,请先在「赛事配置」添加单场或点击「添加队伍」。',
'match.outright.setup': '配置',
'match.outright.section_hint': '按联赛配置冠军盘,与下方单场列表同属本联赛',
'match.expand_markets_hint': '在单场列表点击「盘口」进入单独页面设置盘口与赔率。',
'match.no_fixtures': '该赛事下暂无单场。',
'match.ph.league_ms': '2027 世界杯',
'bet.filter.keyword_ph': '流水编号 / 玩家用户名',
'bet.filter.date_from': '投注日起',
'bet.filter.date_start_ph': '开始',
'bet.filter.date_end_ph': '结束',
'bet.col.serial': '单号',
'bet.col.bet_no': '流水编号',
'bet.col.player': '玩家',
'bet.col.agent': '所属代理',
'bet.col.selection': '选项',
'bet.col.content': '投注内容',
'bet.content.bet_counts': '{singles}单 · {parlays}串',
'bet.col.match': '赛事',
'bet.legs_more': '还有 {n} 项…',
'bet.col.selection_count': '投注项数',
'bet.col.stake': '投注额',
'bet.col.odds': '赔率',
'bet.col.payout': '派彩',
'bet.col.placed_at': '投注时间',
'bet.col.cashbacked': '已回水',
'bet.dialog.detail': '注单详情',
'bet.field.total_odds': '总赔率',
'bet.field.currency': '币种',
'bet.field.potential_win': '可赢额',
'bet.field.actual_payout': '实际派彩',
'bet.field.bet_status': '注单状态',
'bet.field.settlement_status': '结算状态',
'bet.field.settled_at': '结算时间',
'bet.field.request_id': '请求 ID',
'bet.selections_title': '投注项({n}',
'bet.col.market': '玩法',
'bet.col.period': '时段',
'bet.col.line': '盘口',
'bet.col.result': '赛果',
'audit.module_ph': '如 USERS、AGENTS',
'audit.col.action': '操作',
'audit.col.module': '模块',
'audit.col.target_id': '目标 ID',
'audit.col.time': '时间',
'audit.action.CREATE_PLAYER': '新建玩家',
'audit.action.UPDATE_PLAYER': '更新玩家',
'audit.action.RESET_DATABASE': '重置数据库',
'audit.action.CREATE_AGENT': '新建代理',
'audit.action.UPDATE_AGENT': '更新代理',
'audit.action.UPDATE_PLAYER_ACCOUNT_SETTINGS': '更新玩家账号设置',
'audit.action.UPDATE_AGENT_SUSPEND_SETTINGS': '更新代理停押设置',
'audit.action.UPDATE_BETTING_LIMITS': '更新投注限额',
'audit.action.CONFIRM_SETTLEMENT': '确认结算',
'audit.action.CONFIRM_RESETTLE': '确认重结算',
'audit.action.CONFIRM_CASHBACK': '确认发放返水',
'audit.action.CANCEL_CASHBACK': '作废返水批次',
'audit.module.USERS': '玩家',
'audit.module.AGENTS': '代理',
'audit.module.SYSTEM': '系统',
'audit.module.SETTINGS': '系统设置',
'audit.module.SETTLEMENT': '结算',
'audit.module.CASHBACK': '返水',
'cashback.start_date': '开始日期',
'cashback.end_date': '结束日期',
'cashback.preview_btn': '生成预览',
'cashback.preview_title': '返水预览',
'cashback.stat.players': '涉及玩家数',
'cashback.stat.total': '返水总金额',
'cashback.stat.lines': '明细条数',
'cashback.stat.effective_stake': '有效投注总额',
'cashback.stat.bet_count': '计入注单数',
'cashback.stat.avg_rate': '平均返水比例',
'cashback.batch_no': '批次号',
'cashback.history_title': '返水记录',
'cashback.history_empty': '暂无返水批次记录',
'cashback.filter_status': '批次状态',
'cashback.status.PREVIEW': '待发放',
'cashback.status.CONFIRMED': '已发放',
'cashback.col.period': '统计周期',
'cashback.col.status': '状态',
'cashback.col.bet_count': '注单数',
'cashback.col.created_at': '生成时间',
'cashback.col.confirmed_at': '发放时间',
'cashback.col.operator': '操作人',
'cashback.view_detail': '查看明细',
'cashback.detail_title': '返水批次明细',
'cashback.detail_summary': '批次汇总',
'cashback.table_title': '玩家返水明细',
'cashback.table_total': '合计',
'cashback.empty_items': '本周期内无符合条件的返水记录',
'cashback.col.index': '#',
'cashback.col.player': '玩家',
'cashback.col.agent': '所属代理',
'cashback.col.balance': '当前余额',
'cashback.col.effective_stake': '有效投注',
'cashback.col.rate': '返水比例',
'cashback.col.amount': '返水金额',
'cashback.confirm_issue': '确认发放',
'cashback.cancel_issue': '作废',
'cashback.confirm_prompt': '确认向玩家钱包发放本批次返水?返水由平台直接入账,不从代理扣款。此操作不可撤销。',
'cashback.cancel_prompt': '确认作废该待发放批次?作废后不会入账,可重新生成预览。',
'cashback.status.CANCELLED': '已作废',
'cashback.rules_title': '返水规则说明',
'cashback.rule_period': '选择开始/结束日期,统计该周期内、按注单结算时间落在区间内的有效投注。',
'cashback.rule_eligible': '计入:已结算且结果为「赢」或「输」的注单(单关按本金,串关按整单本金计一次)。不计入:未结算、已取消、作废、走水,以及返水比例为 0 的注单;已返水过的注单不会重复计入。',
'cashback.rule_formula': '单笔返水 = 投注本金 × 适用返水比例;同一玩家多笔注单汇总后生成一条返水明细。',
'cashback.rule_rate': '返水比例优先级:玩家专属规则 > 代理线规则 > 全局规则 > 默认返水率(代理邀请用代理返水;管理员邀请用「管理员邀请返水」;无邀请码用「平台直属默认返水」;可在玩家管理中单独覆盖)。以百分比填写,如 1 表示 1%。',
'cashback.rule_flow': '操作流程:生成预览(同周期仅保留一条待发放)→ 核对明细 → 确认发放;不需要的可作废。已发放周期不可重复预览。',
'cashback.rule_platform': '发放方式:返水由平台直接打入玩家现金余额,不从代理信用或余额中扣除。',
'cashback.rule_note_zero': '预览为 0 时,请检查:周期内是否有已结算输赢注单、返水比例是否大于 0含全局设置中的平台直属默认比例与玩家/代理单独设置)。',
'cashback.use_custom_rate': '单独设置返水比例',
'cashback.use_default_rate': '使用默认比例 {rate}',
'cashback.settings_title': '返水设置',
'cashback.platform_direct_default_rate': '平台直属默认返水比例',
'cashback.platform_direct_default_hint': '无邀请码自助注册的玩家在未单独设置时使用此比例。',
'cashback.admin_invite_default_rate': '管理员邀请返水比例',
'cashback.admin_invite_default_hint': '玩家通过管理员邀请码注册时使用;默认与平台直属相同,可单独调整。代理邀请玩家使用管理员在代理管理中为该代理设置的返水比例。',
'user.field.player_id': '玩家 ID',
'user.field.bet_count': '注单数',
'user.field.total_stake': '累计投注',
'user.field.registered_at': '注册时间',
'user.ph.remark_initial': '有初始余额时写入流水备注',
'user.bets_edit_value': '{n} 笔 / {stake}',
'user.login_fail_value': '{n} 次',
'match.import_hint': '粘贴含 matches 的 JSON导入后为草稿需在列表发布。',
'match.import_start': '开始导入',
'match.import_json_ph': '{"matches":[...]}',
'match.delete_confirm_title': '删除确认',
'match.delete_confirm_body': '确定删除赛事「{title}」?仅草稿且无注单时可删除。',
'archive.match_title': '删除赛事',
'archive.league_title': '删除联赛',
'archive.target': '赛事:{title}',
'archive.league_target': '联赛:{name}',
'archive.soft_delete_hint': '此为软删除:数据保留,前后台列表不再展示。',
'archive.pending_summary': '未结注单 {count} 笔,涉及金额 {stake}',
'archive.refund_pending': '退还未结注单金额',
'archive.parlay_void_hint': '含串关注单时将整单作废并全额退还。',
'archive.force_delete': '强制删除',
'archive.msg_done': '已删除',
'archive.msg_done_refund': '已删除,已退还 {n} 笔注单',
'archive.league_hint': '仅当下属单场与优胜赛均已结算且无未结注单时可删除联赛。',
'archive.league_blocked': '仍有未结算赛事或未结注单,请先处理下属赛事。',
'archive.league_ready': '可以删除该联赛,将同时隐藏下属全部赛事。',
'archive.league_confirm': '确认删除联赛',
'archive.league_done': '联赛已删除',
'archive.warning.PENDING_BETS': '存在未结注单',
'archive.warning.UNSETTLED_MATCH': '赛事尚未进入终态(未结算/未取消)',
'archive.warning.PREVIEW_BATCH': '存在待确认的结算预览批次',
'match.ph.league_en': 'FIFA World Cup 2026',
'match.ph.league_zh': '2026 世界杯',
'match.ph.kickoff': '2026-06-11T19:00:00Z',
'match.ph.home_en': 'Mexico',
'match.ph.home_zh': '墨西哥',
'match.ph.home_ms': 'Mexico',
'match.ph.away_en': 'South Africa',
'match.ph.away_zh': '南非',
'match.ph.away_ms': 'Afrika Selatan',
'matchEditor.manage_btn': '基本信息',
'matchEditor.back': '返回列表',
'matchEditor.title': '编辑基本信息',
'matchEditor.section_info': '基本信息',
'matchEditor.section_markets': '盘口与赔率',
'matchEditor.field.league_logo': 'Logo',
'matchEditor.field.home_logo': 'Logo',
'matchEditor.field.away_logo': 'Logo',
'matchEditor.field.pick_flag': '选择国旗',
'matchEditor.field.custom_logo_url': '自定义图片 URL',
'matchEditor.ph.logo_url': 'https://...',
'matchEditor.field.match_name': '赛事显示名',
'matchEditor.field.stage': '阶段',
'matchEditor.field.group': '小组',
'matchEditor.field.display_order': '排序',
'matchEditor.field.correct_score_enabled': '波胆玩法',
'matchEditor.field.promo_label': '促销标签',
'matchEditor.field.promo_label_optional': '促销标签(可选)',
'matchEditor.field.line_value': '盘口线',
'matchEditor.ph.kickoff': '选择开赛日期与时间',
'matchEditor.group.league': '联赛信息',
'matchEditor.hint.league_readonly': '联赛名称与 Logo 请在赛事管理列表中点击「编辑」维护,此处仅展示。',
'matchEditor.group.home': '主队',
'matchEditor.group.away': '客队',
'matchEditor.group.schedule': '赛程与展示',
'matchEditor.save_info': '保存基本信息',
'matchEditor.save_market': '保存盘口设置',
'matchEditor.save_odds': '保存赔率',
'matchEditor.generate_templates': '生成默认盘口',
'matchEditor.templates_generated': '盘口模板已生成',
'matchEditor.no_markets': '暂无盘口,请先发布赛事或点击「生成默认盘口」。',
'matchEditor.market.FT_1X2': '全场 1X2',
'matchEditor.market.FT_HANDICAP': '全场让球',
'matchEditor.market.FT_OVER_UNDER': '全场大小',
'matchEditor.market.FT_ODD_EVEN': '全场单双',
'matchEditor.market.HT_1X2': '半场 1X2',
'matchEditor.market.HT_HANDICAP': '半场让球',
'matchEditor.market.HT_OVER_UNDER': '半场大小',
'matchEditor.market.FT_CORRECT_SCORE': '全场波胆',
'matchEditor.market.HT_CORRECT_SCORE': '半场波胆',
'matchEditor.market.SH_CORRECT_SCORE': '下半场波胆',
'matchEditor.period.FT': '全场',
'matchEditor.period.HT': '半场',
'matchEditor.period.SH': '下半场',
'matchEditor.period.OUTRIGHT': '冠军',
'matchEditor.selection.HOME': '主',
'matchEditor.selection.DRAW': '和',
'matchEditor.selection.AWAY': '客',
'matchEditor.selection.OVER': '大',
'matchEditor.selection.UNDER': '小',
'matchEditor.selection.ODD': '单',
'matchEditor.selection.EVEN': '双',
'matchEditor.selection.OTHER_DRAW': '和局其它比分',
'matchEditor.selection.OTHER_HOME': '主胜其它比分',
'matchEditor.selection.OTHER_AWAY': '客胜其它比分',
'matchEditor.col.selection_code': '选项',
'matchEditor.col.selection_name': '显示名',
'matchEditor.col.odds': '赔率',
'matchEditor.ph.selection_name': '玩家端显示名称',
'err.username_required': '请填写用户名',
'err.username_player_invalid': '玩家用户名仅可使用英文字母和数字332 位),不可含中文或特殊符号',
'err.password_min': '密码至少 8 位',
'err.password_mismatch': '两次密码不一致',
'err.credit_negative': '授信额度不能为负',
'err.insufficient_credit': '可用授信不足,请减少上分金额或联系上级调额',
'err.kickoff_required': '请填写开赛时间',
'err.team_country_required': '请选择主客队',
'err.teams_required': '请填写主客队名称(中文、英文或马来文至少一项)',
'err.teams_same': '主客队不能相同,请填写不同的队名',
'err.league_required': '请填写联赛名称(中文、英文或马来文至少一项)',
'err.user_required': '请选择用户',
'err.agent_no_parent': '一级代理不可设置上级玩家',
'err.agent_no_initial_deposit': '设为代理时请勿填写玩家初始余额',
'err.initial_deposit_kind_required': '有初始余额时请选择上分流水说明',
'err.initial_deposit_custom_required': '自定义流水说明至少 2 个字符',
'settlement.back': '返回赛事列表',
'settlement.kickoff': '开赛时间',
'settlement.stats_title': '下注统计',
'settlement.stats_total_bets': '注单数',
'settlement.stats_single': '单关',
'settlement.stats_parlay': '串关',
'settlement.stats_total_stake': '总投注额',
'settlement.stats_potential': '最大可赢',
'settlement.chart.bet_type': '单关 / 串关占比',
'settlement.chart.status': '注单状态分布',
'settlement.chart.stake_by_selection': '选项单关投注额 TOP6',
'settlement.stats_by_market': '按玩法 / 选项汇总',
'settlement.bet_list': '相关注单',
'settlement.bet_list_hint': '按注单聚合;同场串关含多腿时显示 ×腿数',
'settlement.no_bets': '本场暂无注单',
'settlement.col.market': '玩法',
'settlement.col.selection': '选项',
'settlement.col.legs': '腿数',
'settlement.col.single_stake': '单关投注额',
'settlement.col.parlay_legs': '串关腿数',
'settlement.ht_score': '半场比分',
'settlement.ft_score': '全场比分',
'settlement.record_score': '录入比分',
'settlement.preview_hint': '填写比分后点击生成预览,赛事将进入待结算并计算派彩(正式比分在确认结算后保存;未确认前仍可解除封盘)',
'settlement.preview_btn': '生成结算预览',
'settlement.preview_failed': '生成结算预览失败',
'settlement.err_score_not_recorded': '请先填写半场与全场比分后再生成预览',
'settlement.must_close_first': '请先封盘后再结算',
'settlement.outright.page_title': '优胜冠军结算',
'settlement.outright.title': '优胜冠军',
'settlement.outright.winner': '冠军队伍',
'settlement.outright.winner_ph': '选择夺冠队伍',
'settlement.outright.preview_hint': '选择冠军后生成预览,确认后将派彩给中奖注单',
'settlement.outright.winner_required': '请先选择冠军队伍',
'settlement.preview_title': '结算预览',
'settlement.single_count': '单关注单数',
'settlement.preview_pending_bets': '待结算注单',
'settlement.preview_bet_mix': '单关 / 串关',
'settlement.preview_items_title': '逐笔预览({n} 笔)',
'settlement.preview_items_scroll_hint': '笔数较多时可滚动查看',
'settlement.preview_col.result': '本场结果',
'settlement.preview_zero_parlay_hint':
'预计派彩为 0本场虽有 {legs} 条赢腿,但均在跨场串关内({pending} 笔待其他场次),须等其他比赛结算后才派彩。',
'settlement.preview_zero_lost_hint':
'预计派彩为 0{count} 笔串关在本场已有输腿,整单作废;其余单关/串关本场亦未中奖。',
'settlement.preview_zero_default_hint': '预计派彩为 0本场相关注单均未中奖或暂不满足派彩条件。',
'settlement.preview.result.WIN': '赢',
'settlement.preview.result.LOSE': '输',
'settlement.preview.result.LOST': '整单输',
'settlement.preview.result.WON': '整单赢',
'settlement.preview.result.PUSH': '走盘',
'settlement.preview.result.PENDING_OTHER_MATCHES': '待其他场次',
'settlement.est_payout': '预计派彩',
'settlement.refund_amount': '退款金额',
'settlement.confirm_btn': '确认结算',
'settlement.resettle_reason': '重结算原因',
'settlement.resettle_preview': '重结算预览',
'settlement.resettle_preview_title': '重结算预览',
'settlement.resettle_affected': '影响注单数',
'settlement.resettle_topup': '需补发金额',
'settlement.resettle_clawback': '需扣回金额',
'settlement.resettle_confirm': '确认重结算',
'user.betting_limits': '投注限额',
'user.betting_limits_hint': '全局下注校验:最小/最大投注、最高派彩、每日投注上限',
'user.limit.min_stake': '最小投注',
'user.limit.max_stake_single': '单关最大投注',
'user.limit.max_stake_parlay': '串关最大投注',
'user.limit.max_payout_single': '单关最高派彩',
'user.limit.max_payout_parlay': '串关最高派彩',
'user.limit.daily_stake': '每日投注上限',
'settlement.smart.btn': '智能比分',
'settlement.smart.title': '智能推荐比分',
'settlement.smart.hint': '根据本场待结算单关注单,在合理比分范围内穷举并计算派彩;串关仅统计不参与推荐。点击方案可填入录分框。',
'settlement.smart.target_hold': '目标平台留存',
'settlement.smart.recalc': '重新计算',
'settlement.smart.apply': '采用此比分',
'settlement.smart.applied': '已填入推荐比分',
'settlement.smart.no_bets': '本场无待结算单关注单',
'settlement.smart.empty': '未找到可用方案',
'settlement.smart.meta': '单关 {singles} 笔,串关 {parlays} 笔未参与,已比对 {n} 组比分',
'settlement.smart.hold': '留存',
'settlement.smart.payout': '派彩',
'settlement.smart.win_stake': '玩家赢注占比',
'settlement.smart.wl': '赢/输单',
'settlement.smart.strategy.MIN_PAYOUT': '平台最大留存(最低派彩)',
'settlement.smart.strategy.MAX_PAYOUT': '玩家最大派彩',
'settlement.smart.strategy.BALANCED': '投注均衡约50%赢注额)',
'settlement.smart.strategy.TARGET_HOLD': '目标留存率',
'msg.score_recorded': '比分已录入',
'msg.settlement_confirmed': '结算已确认',
'msg.resettle_confirmed': '重结算已确认',
'agent_portal.create_player_section': '创建玩家',
'agent_portal.deposit_section': '上分操作',
'agent_portal.create_player_btn': '+ 创建玩家',
'agent_portal.create_tier2_btn': '+ 创建二级代理',
'agent_portal.username_ph': '输入用户名',
'agent_portal.agent_username_ph': '代理用户名',
'agent_portal.player_id_ph': '玩家 ID',
'agent_portal.withdraw_btn': '下分 {amount}',
'agent_portal.withdraw_btn_label': '下分',
'agent_portal.transfer_title_deposit': '给 {name} 上分',
'agent_portal.transfer_title_withdraw': '从 {name} 下分',
'transfer.context.player_section': '玩家余额',
'transfer.context.agent_section': '授信代理 · {name}L{level}',
'transfer.context.withdrawable': '可下分金额',
'transfer.context.deposit_cap': '本次最多可上分',
'transfer.context.daily_used': '今日已上分',
'transfer.context.unlimited': '不限',
'transfer.context.no_agent': '平台直属玩家,上分不受代理授信约束',
'transfer.context.admin_credit_only': '管理员上分仅受上级可用授信约束,不受单笔/日限',
'transfer.context.withdraw_exceed': '下分金额不能超过玩家可用余额',
'credit.context.target_section': '目标代理授信',
'credit.context.parent_section': '上级代理 · {name}',
'credit.context.max_increase': '最多可增加授信',
'credit.context.no_parent': '一级代理由平台直管,增信不受上级约束',
'credit.context.after_adjust': '调整后授信额度',
'credit.context.direct_liability': '直属玩家占用',
'credit.context.child_exposure': '下级代理占用',
'credit.context.acting_agent': '当前代理',
'agent_portal.create_player_dialog': '新建直属玩家',
'agent_portal.edit_player_dialog': '编辑直属玩家',
'agent_portal.my_cashback_rate': '反水比例',
'agent_portal.credit_available_hint': '当前可用授信:{amount}(上分将从授信中扣除)',
'agent_portal.sub_agent_players_readonly': '以下为该二级代理直属玩家,仅可查看;开户、上分等操作由二级代理自行处理。',
'agent_portal.sub_agent_downline_readonly': '以下为该二级代理下级所有代理与玩家,仅可查看;您只能操作直属二级代理,开户、上分等由各级代理自行处理。',
'agent_portal.sub_agent_downline_readonly_level': '以下为该{level}级代理下级所有代理与玩家,仅可查看;您只能操作直属下级代理,开户、上分等由各级代理自行处理。',
'agent_portal.downline_agents_title': '下级代理',
'agent_portal.downline_players_title': '下级玩家',
'agent_portal.no_downline_agents': '暂无下级代理',
'agent_portal.no_downline_players': '暂无下级玩家',
'agent_portal.initial_deposit_hint': '可选。开户时从您的授信中给玩家上分,不能超过可用授信',
'agent_portal.search_player_ph': '用户名或 ID',
'agent_portal.no_players': '暂无直属玩家,点击右上角创建',
'invite.title': '邀请码与注册链接',
'invite.menu_btn': '邀请',
'invite.dialog_title': '邀请管理',
'invite.tab_generate': '生成邀请',
'invite.tab_history': '邀请历史',
'invite.hint': '点击生成邀请码与注册链接;玩家填邀请码注册,不填则为平台直属玩家',
'invite.generate_btn': '生成邀请码/链接',
'invite.regenerate_btn': '重新生成',
'invite.generate_ok': '邀请码已生成',
'invite.generate_failed': '生成失败,请重试',
'invite.not_generated': '尚未生成邀请码',
'invite.code': '邀请码',
'invite.cashback_rate': '返水比例',
'invite.cashback_rate_hint': '该邀请码注册的玩家将使用此返水比例;默认读取全局「管理员邀请返水比例」。',
'invite.link': '注册链接',
'invite.copy_code': '复制邀请码',
'invite.copy_code_short': '复制码',
'invite.copy_link_short': '复制链接',
'invite.copy_link': '复制注册链接',
'invite.copy_code_ok': '邀请码已复制',
'invite.copy_link_ok': '注册链接已复制',
'invite.copy_failed': '复制失败,请手动复制',
'invite.unavailable': '邀请码暂不可用',
'invite.history_title': '邀请历史',
'invite.view_history': '查看历史',
'invite.history_hint': '管理员可查看全部邀请码;代理仅可查看自己及下级代理的邀请码',
'invite.page_desc': '查看全部邀请码历史与状态,生成或作废邀请码',
'invite.history_load_failed': '加载邀请历史失败',
'invite.filter_status': '状态',
'invite.filter_sponsor': '邀请人',
'invite.filter_code': '邀请码',
'invite.filter_code_ph': '输入邀请码',
'invite.col_status': '状态',
'invite.col_sponsor': '邀请人',
'invite.col_registrant': '注册人',
'invite.not_registered': '未注册',
'invite.col_cashback_rate': '返水比例',
'invite.col_created': '创建时间',
'invite.col_revoked': '作废时间',
'invite.status.ACTIVE': '有效',
'invite.status.USED': '已使用',
'invite.status.REVOKED': '已作废',
'invite.revoke_btn': '作废',
'invite.revoke_title': '作废邀请码',
'invite.revoke_confirm': '确定作废邀请码 {code}?作废后该码将无法用于注册。',
'invite.revoke_ok': '邀请码已作废',
'invite.revoke_failed': '作废失败,请重试',
'invite.delete_title': '删除邀请记录',
'invite.delete_confirm': '确定删除邀请码 {code} 的历史记录?删除后不可恢复。',
'invite.delete_ok': '邀请记录已删除',
'invite.delete_failed': '删除失败,请重试',
'agent_portal.search_sub_agent_ph': '用户名或 ID',
'agent_portal.no_sub_agents': '暂无二级代理,点击右上角创建',
'agent_portal.no_sub_agents_level': '暂无{level}级代理,点击右上角创建',
'agent_portal.sub_agent_players_readonly_level': '以下为该{level}级代理直属玩家,仅可查看;开户、上分等操作由该代理自行处理。',
'agent_portal.create_sub_agent_dialog': '新建二级代理',
'agent_portal.sub_agent_credit_hint': '初始授信从您的可用额度中划拨,不能超过可用授信',
'agent_portal.adjust_credit_dialog': '调整 {name} 授信',
'agent_portal.credit_adjust_hint': '正数为增加授信,负数为减少授信',
'msg.agent_sub_created': '下级代理已创建',
'msg.withdraw_ok': '下分成功',
'msg.form_invalid': '请检查表单',
'msg.player_created': '玩家已创建',
'msg.agent_created': '一级代理已创建',
'msg.create_failed': '创建失败',
'msg.saved': '已保存',
'msg.save_failed': '保存失败',
'msg.deleted': '已删除',
'msg.delete_failed': '删除失败',
'msg.league_created': '赛事已创建',
'msg.league_updated': '赛事已更新',
'msg.match_created_draft': '单场已创建(草稿)',
'msg.published': '已发布并生成盘口',
'msg.closed': '已封盘',
'msg.reopened': '已解除封盘',
'match.reopen_kickoff_title': '设置新的开赛时间',
'match.reopen_kickoff_hint': '开赛时间已过,请选择新的未来开赛时间后再解除封盘。',
'match.reopen_kickoff_invalid': '请选择未来的开赛时间',
'msg.invalid_json': 'JSON 格式无效',
'msg.import_failed': '导入失败',
'msg.import_done': '导入完成:成功 {imported},跳过 {skipped},失败 {failed} / 共 {total}',
'msg.topup_ok': '上分成功',
'msg.topup_failed': '上分失败',
'msg.transfer_failed': '操作失败',
'msg.amount_gt_zero': '金额须大于 0',
'msg.credit_zero': '调整金额不能为 0',
'msg.credit_adjusted': '授信已调整',
'msg.credit_adjust_failed': '调整失败',
'msg.outright_no_edit': '冠军盘不支持在此编辑',
'msg.outright_odds_saved': '夺冠赔率已保存',
'msg.load_failed': '加载失败',
'content.btn.create': '新建内容',
'content.btn.enable': '启用',
'content.btn.disable': '停用',
'content.dialog.create': '新建公共内容',
'content.dialog.edit': '编辑公共内容',
'content.confirm_delete': '确定删除「{title}」?',
'content.type.BANNER': '首页轮播',
'content.type.ANNOUNCEMENT': '公告滚动',
'content.hint.announcement': '显示在玩家端顶部跑马灯;标题与正文填一项即可,建议正文为主',
'content.status.DRAFT': '草稿',
'content.status.ACTIVE': '已启用',
'content.status.INACTIVE': '已停用',
'content.col.sort': '排序',
'content.col.preview': '预览',
'content.col.title': '标题/摘要',
'content.col.player_visible': '玩家可见',
'content.col.schedule': '展示时段',
'content.col.link': '跳转',
'content.field.link_type': '链接类型',
'content.field.link_target': '链接目标',
'content.field.start_time': '开始时间',
'content.field.end_time': '结束时间',
'content.field.title': '标题',
'content.field.title_ph': '选填,可与正文相同',
'content.field.body': '正文',
'content.field.announce_text': '滚动文案',
'content.field.image_url': '图片地址',
'content.upload.upload_btn': '上传图片',
'content.upload.uploading': '上传中…',
'content.upload.success': '图片上传成功',
'content.upload.failed': '图片上传失败',
'content.upload.size_error': '图片大小不能超过 5MB',
'content.upload.remove': '移除图片',
'content.upload.pick_media': '从媒体库选择',
'content.upload.pick_media_title': '选择 Banner 图片',
'content.upload.no_media': '媒体库中暂无 Banner 图片,请先上传',
'content.upload.url_placeholder': '或手动粘贴图片 URL',
'content.link.none': '无跳转',
'content.locale.zh-CN': '简体中文',
'content.locale.en-US': 'English',
'content.locale.ms-MY': 'Bahasa Melayu',
'content.hidden_reason.NOT_ACTIVE': '未启用或草稿',
'content.hidden_reason.NOT_STARTED': '未到开始时间',
'content.hidden_reason.EXPIRED': '已过结束时间',
'content.hidden_reason.INCOMPLETE': '多语言内容不完整',
'content.batch.selected': '已选 {n} 项',
'content.batch.enable': '批量启用',
'content.batch.disable': '批量停用',
'content.batch.delete': '批量删除',
'content.confirm_batch_enable': '确定启用选中的 {n} 项?',
'content.confirm_batch_disable': '确定停用选中的 {n} 项?',
'content.confirm_batch_delete': '确定删除选中的 {n} 项?',
'content.batch.all_ok': '已成功处理 {n} 项',
'content.batch.partial': '成功 {ok} 项,失败 {fail} 项',
'page.outrights.title': '优胜冠军',
'page.outrights.desc': '可新建任意联赛冠军盘、编辑队伍与赔率;世界杯 48 强提供一键导入基准数据',
'outright.col.rank': '排名',
'outright.col.team_zh': '队伍(中文)',
'outright.col.team_en': '队伍(英文)',
'outright.col.code': '代码',
'outright.col.country': '国家/地区',
'outright.col.odds': '夺冠赔率',
'outright.country_ph': '搜索或选择国家',
'teamLogo.kind.flag': '国旗',
'teamLogo.kind.crest': '队徽',
'outright.err_country': '请选择国家',
'outright.btn.save_odds': '保存全部赔率',
'outright.btn.close': '封盘',
'outright.btn.settle': '去结算',
'outright.confirm_close': '封盘后将停止接受新的优胜冠军投注,是否继续?',
'outright.btn.save_meta': '保存赛事信息',
'outright.btn.publish': '发布',
'outright.btn.unpublish': '撤回发布',
'outright.back_list': '返回列表',
'outright.section.edit': '编辑冠军赛事',
'outright.col.teams': '队伍数',
'outright.col.player_visible': '玩家端',
'outright.col.league_en': '联赛(英文)',
'outright.expand_no_teams': '暂无队伍,请进入编辑页添加',
'outright.fixtures_sync_hint': '参赛队伍来自本联赛单场赛程,仅可调整赔率与发布状态。',
'outright.empty_no_fixtures': '该联赛暂无单场,请先在「赛事配置」中添加比赛。',
'outright.btn.add_team': '添加队伍',
'outright.add.filter_fixture': '已有队伍',
'outright.add.filter_all': '全部内置',
'outright.add.filter_custom': '自定义',
'outright.add.custom_hint': '手动填写球队代码与中/英文名称Logo 可上传或填写 URL。',
'outright.add.field_code': '球队代码',
'outright.add.field_logo': 'Logo',
'outright.add.ph_code': '如 TEAM01',
'outright.add.ph_name_zh': '中文队名',
'outright.add.ph_name_en': '英文队名',
'outright.add.err_code_required': '请填写球队代码',
'outright.add.err_name_required': '请至少填写中文或英文队名',
'outright.add.err_duplicate': '该球队代码已在冠军盘中',
'outright.add.select_all': '全选',
'outright.add.clear_selection': '取消全选',
'outright.add.selected_count': '已选 {n} 支',
'outright.add.empty_fixture': '暂无待添加的参赛球队(单场中已有且未在冠军盘的球队会显示在此)',
'outright.add.empty_all': '所有内置球队均已加入冠军盘',
'outright.add.default_odds': '默认赔率',
'outright.add.search_ph': '搜索队名或代码',
'outright.add.err_none': '请至少选择一支球队',
'outright.batch.mode': '批量管理',
'outright.batch.exit': '退出批量',
'outright.batch.apply_odds': '应用赔率',
'outright.batch.remove': '批量移除',
'outright.batch.confirm_remove': '确定移除选中的 {n} 支队伍?',
'outright.batch.err_none': '请先选择队伍',
'outright.batch.apply_ok': '已更新 {n} 支队伍的赔率,请点击「保存全部赔率」',
'outright.batch.remove_ok': '已移除 {n} 支队伍',
'outright.batch.remove_partial': '成功 {ok} 支,失败 {fail} 支',
'outright.sort.label': '排序',
'outright.sort.rank': '排名',
'outright.sort.name': '队名',
'outright.sort.code': '代码',
'outright.sort.odds': '赔率(当前)',
'outright.sort.saved_odds': '赔率(已保存)',
'outright.sort.asc': '升序',
'outright.sort.desc': '降序',
'msg.outright_teams_added': '已添加 {n} 支球队(跳过 {skipped} 支)',
'outright.btn.create_event': '新建冠军赛事',
'outright.btn.import_wc2026': '导入世界杯 48 强',
'outright.btn.apply_canonical': '应用世界杯基准表',
'outright.field.league': '所属联赛',
'outright.section.settings': '赛事设置',
'outright.section.teams': '队伍与赔率',
'outright.field.title': '赛事标题',
'outright.field.title_placeholder': '玩家端展示的冠军赛事名称',
'outright.field.title_zh': '标题(中文)',
'outright.field.title_en': '标题(英文)',
'outright.field.title_ms': '标题(马来)',
'outright.field.status': '发布状态',
'outright.status.draft': '草稿',
'outright.status.published': '已发布',
'msg.outright_canonical_applied': '已按基准表写入 48 强夺冠赔率',
'outright.team_count': '已配置 {n} / {total} 队',
'outright.team_count_open': '共 {n} 支队伍',
'outright.empty_events': '暂无冠军赛事',
'outright.empty_hint': '点击「新建冠军赛事」或「导入世界杯 48 强」开始配置',
'outright.err_odds_min': '赔率须大于 1.00',
'outright.err_team_code': '请填写队伍代码',
'outright.err_league': '请选择联赛',
'outright.confirm_remove': '确定移除「{name}」?(关闭该投注项)',
'outright.not_on_player': '玩家端不可见',
'outright.player_hidden_title': '此赛事尚未在玩家端展示',
'outright.hidden_reason.NOT_PUBLISHED': '请将发布状态设为「已发布」并保存赛事信息。',
'outright.hidden_reason.NO_SELECTIONS': '请至少添加 1 支开放状态的队伍。',
'outright.hidden_reason.MARKET_CLOSED': '冠军盘口未开放,请联系技术检查盘口状态。',
'msg.load_matches_failed': '加载赛事失败',
'msg.cashback_issued': '返水已发放',
'msg.cashback_cancelled': '返水批次已作废',
'msg.cashback_preview_ready': '预览已生成,请核对后确认发放',
'msg.cashback_preview_replaced': '已替换同周期 {n} 条旧预览',
'msg.freeze_confirm_title': '{action}账号',
'msg.freeze_confirm_body': '确定要{action}玩家「{name}」吗?{extra}',
'msg.freeze_extra': '冻结后该账号将无法登录。',
'msg.freeze_done': '已{action}',
'msg.freeze_failed': '{action}失败',
'msg.delete_player_title': '删除玩家',
'msg.delete_player_body': '确定要删除玩家「{name}」吗?删除后该玩家将无法登录,此操作不可撤销。',
'msg.delete_player_confirm_title': '二次确认',
'msg.delete_player_confirm_hint': '请输入玩家用户名「{name}」以确认删除:',
'msg.delete_player_mismatch': '用户名输入不正确,请重新输入',
'msg.delete_player_done': '玩家已删除',
'msg.delete_player_failed': '删除失败',
'smoke.intro': '在后台一键运行自动化冒烟测试,覆盖结算引擎、下注规则、代理额度逻辑、返水规则、数据库探针,以及下注→结算→钱包全链路集成用例。',
'smoke.intro_rule': '规则类用例与 Jest 单元测试同源逻辑,不写入业务数据。',
'smoke.intro_db': '「数据库」套件仅做连接与配置探针(只读)。',
'smoke.intro_bet_flow': '「下注结算链路」套件会创建临时赛事/玩家并自动清理,验证冻结、派彩与代理额度。',
'smoke.intro_note': '可替代大部分 UAT 手工回归;发返水等仍建议抽样人工确认。',
'smoke.field.suites': '测试套件',
'smoke.ph.suites': '选择要运行的套件',
'smoke.btn.run': '运行测试',
'smoke.last_run': '最近一次运行',
'smoke.results_title': '用例结果',
'smoke.empty': '尚未运行测试,请点击「运行测试」。',
'smoke.stat.pass': '通过',
'smoke.stat.fail': '失败',
'smoke.stat.total': '合计',
'smoke.col.id': '编号',
'smoke.col.suite': '套件',
'smoke.col.name': '用例',
'smoke.col.uat': 'UAT',
'smoke.col.duration': '耗时',
'smoke.col.steps': '步骤',
'smoke.col.message': '说明',
'smoke.no_steps': '无步骤明细',
'smoke.status.PASS': '通过',
'smoke.status.FAIL': '失败',
'smoke.status.SKIP': '跳过',
'smoke.msg.all_passed': '全部通过({n} 项)',
'smoke.msg.has_failures': '有 {n} 项失败,请查看明细',
'smoke.msg.run_failed': '测试运行失败',
'smoke.log_title': '详细日志',
'smoke.btn.copy_all': '复制全部日志',
'smoke.btn.copy_one': '复制',
'smoke.msg.copy_ok': '已复制到剪贴板',
'smoke.msg.copy_failed': '复制失败,请手动选中日志复制',
'audit.action.RUN_SMOKE_TESTS': '运行自动化测试',
'media.title': '媒体库',
'media.upload_btn': '上传文件',
'media.category.all': '全部',
'media.category.banners': 'Banner',
'media.category.teams': '赛事 Logo',
'media.category.contents': '内容图片',
'media.col.preview': '预览',
'media.col.filename': '文件名',
'media.col.category': '分类',
'media.col.size': '大小',
'media.col.status': '使用状态',
'media.col.uploaded': '上传时间',
'media.col.actions': '操作',
'media.status.used': '使用中',
'media.status.unused': '未使用',
'media.purge_btn': '清除未使用',
'media.purge_confirm': '确认删除 {n} 个未使用的文件?此操作不可撤销。',
'media.purge_none': '暂无未使用的文件',
'media.purge_success': '已清除 {n} 个文件',
'media.delete_confirm': '确认删除此文件?',
'media.delete_success': '已删除',
'media.upload_success': '上传成功',
'media.upload_failed': '上传失败',
'media.copy_url': '复制链接',
'media.url_copied': '链接已复制',
'media.upload_dialog': '上传文件',
'media.upload_hint': '支持 PNG、JPG、WEBP、GIF、SVG最大 5MB',
'media.upload_category': '分类',
'media.drop_hint': '拖拽文件至此,或点击选择',
'media.no_files': '暂无文件',
'media.refresh': '刷新',
'media.unused_count': '{n} 个未使用',
};
export default adminPages;