feat(agents, config, dashboard, i18n): add agent line provision wizard, site deletion, and site dashboard with multi-language support

Added agent line provision wizard page with permission gating, replacing redirect placeholder. Introduced site deletion API and UI with confirmation dialog in integration sites management. Added new site-scoped dashboard panel showing bet metrics, P/L trends, active players, and quick links. Enhanced chart tooltip to support custom formatters and fix indicator color
This commit is contained in:
2026-06-12 20:47:53 +08:00
parent 24fd7c10bd
commit 6ea0a6feec
48 changed files with 1573 additions and 629 deletions

View File

@@ -15,7 +15,8 @@
"closeDialogShare": "{{count}} ledger entries",
"closeDialogUnsettled": "{{count}} tickets still unsettled",
"closeDialogIrreversible": "Cannot undo. Use adjustments or reversals to fix errors.",
"closeDialogConfirm": "Close period"
"closeDialogConfirm": "Close period",
"closeDialogEmpty": "No share ledger this period; closing will not generate bills."
},
"periodDetail": {
"back": "Back to periods",
@@ -152,7 +153,8 @@
"adjustment": "Adjustment",
"reversal": "Reversal",
"bad_debt": "Bad debt",
"share_ledger": "Share ledger"
"share_ledger": "Share ledger",
"freezeAmount": "Hold {{amount}}"
}
},
"columns": {
@@ -176,7 +178,13 @@
"adjustmentType": "Type",
"originalBill": "Original bill",
"reason": "Reason",
"badDebtAmount": "Write-off"
"badDebtAmount": "Write-off",
"playerAccount": "Player account",
"playerId": "Player ID",
"directAgent": "Direct agent",
"superiorAgent": "Upline agent",
"play": "Play",
"drawNo": "Draw no."
},
"billStatus": {
"pending_confirm": "Pending confirm",
@@ -302,21 +310,72 @@
"agent": "Agent bills",
"pendingConfirm": "Pending confirm",
"awaitingPayment": "Awaiting payment"
},
"billId": "Bill ID",
"ownerKeyword": "Owner / counterparty",
"ownerKeywordPh": "Player account or agent name",
"status": "Bill status",
"billType": "Bill type",
"filterAll": "All statuses",
"filterAllTypes": "All types",
"filterAdjustment": "Adjust / reverse",
"optional": "Optional",
"searchBtn": "Search",
"reset": "Reset",
"refresh": "Refresh",
"clientFilterHint": "Owner filter: showing {{shown}} / {{total}}",
"emptyFiltered": "No bills match the filter. Try All statuses or reset.",
"emptyClosed": "Period closed but no bills. Often no settled credit tickets in range.",
"rowHint": {
"playerOwner": "Player owner",
"agentOwner": "Agent owner",
"adjustmentOwner": "Adjustment owner",
"badDebtOwner": "Bad debt owner",
"reversalOwner": "Reversal owner",
"playerUpline": "Player's upline agent",
"agentUpline": "Settlement upline"
}
},
"panels": {
"overview": { "title": "Overview" },
"ledger": { "title": "Account ledger" },
"bills": { "title": "Bills" },
"creditLedger": { "title": "Credit ledger" },
"playerBills": { "title": "Player bills" },
"agentBills": { "title": "Agent bills" },
"pendingConfirm": { "title": "Pending confirm" },
"awaiting": { "title": "Awaiting payment" },
"payments": { "title": "Payment log" },
"adjustments": { "title": "Adjust / reverse" },
"reports": { "title": "Period reports" },
"badDebt": { "title": "Bad debt" }
"overview": {
"title": "Overview"
},
"ledger": {
"title": "Account ledger"
},
"bills": {
"title": "Bills"
},
"creditLedger": {
"title": "Credit ledger"
},
"playerBills": {
"title": "Player bills"
},
"agentBills": {
"title": "Agent bills"
},
"pendingConfirm": {
"title": "Pending confirm"
},
"awaiting": {
"title": "Awaiting payment"
},
"payments": {
"title": "Payment log"
},
"adjustments": {
"title": "Adjust / reverse"
},
"reports": {
"title": "Period reports"
},
"badDebt": {
"title": "Bad debt"
},
"workbench": {
"title": "Workbench"
}
},
"empty": {
"noSite": "Select a site.",