feat(integration): 新增 site_code 支持并增强玩家与注单管理界面

在后台玩家与注单相关 API 中新增 site_code 参数,支持按站点筛选数据。
更新 PlayersConsole 与 PlayerTicketsConsole UI 组件,新增站点选择筛选功能。
增强国际化支持,在英文与中文语言包中新增站点相关文案。
优化配置中心页面,新增跳转至集成站点管理的入口,提升后台导航体验。
This commit is contained in:
2026-05-27 13:36:44 +08:00
parent e87229c1b7
commit 5eabbcf0ee
17 changed files with 1126 additions and 3 deletions

View File

@@ -29,7 +29,77 @@
"jackpotTitle": "Jackpot",
"jackpotDesc": "Pool parameters and ledger records",
"riskCapTitle": "Risk cap rules",
"riskCapDesc": "Per-number payout caps and occupancy"
"riskCapDesc": "Per-number payout caps and occupancy",
"integrationTitle": "Integration sites",
"integrationDesc": "site_code, JWT secrets, partner wallet URL, iframe allowlist"
},
"integrationSites": {
"title": "Integration sites",
"description": "Maintain partner integration settings in admin. site_code cannot be changed after creation.",
"create": "New site",
"edit": "Edit",
"save": "Save",
"saving": "Saving…",
"cancel": "Cancel",
"copy": "Copy",
"loading": "Loading…",
"empty": "No integration sites",
"loadFailed": "Failed to load integration sites",
"saveFailed": "Save failed",
"createSuccess": "Created site {{code}}",
"updateSuccess": "Updated site {{code}}",
"connectivityTest": "Test connectivity",
"connectivityTitle": "Partner wallet connectivity",
"connectivityDescription": "Call the balance API for site {{code}} using a test player.",
"connectivityPlayerId": "Test site_player_id",
"connectivityRun": "Run test",
"connectivityRunning": "Testing…",
"connectivitySuccess": "Connectivity OK",
"connectivityFailed": "Connectivity failed",
"exportParams": "Export params",
"exportSuccess": "Exported parameter sheet for {{code}}",
"exportFailed": "Export failed",
"rotateSecrets": "Rotate secrets",
"rotateSuccess": "Rotated secrets for {{code}}",
"rotateFailed": "Failed to rotate secrets",
"rotateConfirmTitle": "Rotate secrets?",
"rotateConfirmDescription": "New SSO and wallet keys will be generated for {{code}}. Old keys stop working immediately.",
"rotateConfirm": "Rotate",
"secretsTitle": "Save these secrets now",
"secretsDescription": "Secrets for {{code}} are shown only once.",
"secretsDismiss": "I have saved them",
"copied": "Copied {{field}}",
"copyFailed": "Copy failed",
"noPermission": "No permission to view integration sites",
"codeImmutable": "site_code cannot be changed after creation",
"statusEnabled": "Enabled",
"statusDisabled": "Disabled",
"dialogCreateTitle": "New integration site",
"dialogEditTitle": "Edit integration site",
"dialogDescription": "Default wallet paths are fine unless the partner uses custom URLs.",
"form": {
"required": "Site name is required",
"codeRequired": "site_code is required"
},
"columns": {
"code": "site_code",
"name": "Name",
"status": "Status",
"walletUrl": "Wallet API",
"actions": "Actions"
},
"fields": {
"code": "site_code",
"name": "Site name",
"currency": "Default currency",
"status": "Status",
"walletApiUrl": "Partner wallet base URL",
"lotteryH5BaseUrl": "Lottery H5 base URL (optional)",
"iframeOrigins": "iframe allowlist (one origin per line)",
"notes": "Notes",
"ssoSecret": "SSO secret",
"walletApiKey": "Wallet API key"
}
},
"versionStatus": {
"active": "Active",