feat(settlement, admin): introduce new types and functions for downline share and settlement period hints

Added new types for downline share breakdown and settlement period open hints to enhance the agent settlement API. Updated the admin console components to support these new features, improving the user experience with better data presentation and interaction. Additionally, refined the date range field to accommodate new calendar markers and hints, ensuring a more intuitive interface for managing settlement periods.
This commit is contained in:
2026-06-12 16:01:42 +08:00
parent 1eb6702c51
commit 24fd7c10bd
50 changed files with 1821 additions and 618 deletions

View File

@@ -164,6 +164,13 @@
"presetThisWeek": "This week",
"presetLastWeek": "Last week",
"presetThisMonth": "This month",
"openHint": "Local dates ({{tz}})",
"startDate": "Start date",
"endDate": "End date",
"open": "Open period",
"openFailed": "Failed to open period",
"datesRequired": "Enter start and end dates",
"invalidRange": "End date cannot be before start date",
"statusOpen": "Open",
"statusClosed": "Closed"
},

View File

@@ -25,6 +25,8 @@
"summaryBet": "Period bet",
"summaryPayout": "Period payout",
"summaryProfit": "Period profit",
"summaryShareProfit": "Own share profit",
"shareProfitHint": "Your share after split — not platform or full team gross P/L",
"dailyTrend": "Period trend",
"granularityDay": "By day",
"playBreakdown": "Play breakdown",
@@ -177,15 +179,18 @@
"todayBet": "Today's bet",
"todayPayout": "Today's payout",
"todayProfit": "Today's profit",
"todayShareProfit": "Today's share profit",
"sevenDayTitle": "Last 7 days",
"sevenDayPayout": "Payout {{amount}}",
"sevenDayProfit": "Profit {{amount}}",
"sevenDayShareProfit": "Share profit {{amount}}",
"pendingBills": "Open agent bills",
"pendingUnpaid": "Unpaid total {{amount}}",
"latestBetAt": "Latest bet {{time}}",
"noBetToday": "No bets yet today",
"topMomentum": "Today's bet focus",
"topMomentumHint": "Profit {{profit}}",
"topMomentumPayout": "Payout {{amount}}",
"managementFocus": "Management focus",
"focusBet": "Watch today's bet volume",
"focusPlayers": "Today's active players",

View File

@@ -5,11 +5,11 @@
"generating": "Generating…",
"generateSuccess": "Generated {{created}} draws, buffer {{upcoming}}/{{target}}",
"generateFailed": "Generation failed",
"scheduleTimezoneHint": "Times in server timezone {{tz}} (GMT, per UI spec); draw interval {{interval}} min (LOTTERY_DRAW_INTERVAL_MINUTES).",
"scheduleTimezoneHint": "List times shown in your local timezone {{tz}}; server schedule is stored in UTC. Draw interval {{interval}} min.",
"createDraw": {
"open": "New draw",
"title": "Create draw manually",
"description": "Enter date and time in {{tz}} (not your browser local zone). If only draw time is set, start/close are derived from server config.",
"description": "Enter date and time in your local timezone {{tz}}. If only draw time is set, start/close are derived from server config.",
"hint": "Start < close < draw. Draw number optional; sequence auto-assigned by UTC business date.",
"drawNoPlaceholder": "Enter draw number, for example 20260526-008",
"drawTimeRequired": "Draw time is required",
@@ -34,7 +34,7 @@
"editDraw": {
"action": "Edit draw",
"title": "Edit draw",
"description": "Draw {{drawNo}} · edit times in {{tz}}",
"description": "Draw {{drawNo}} · edit times in local timezone {{tz}}",
"drawNoPlaceholder": "Enter draw number, for example 20260526-008",
"submit": "Save",
"saving": "Saving…",

View File

@@ -63,6 +63,7 @@
"nav": {
"periods": "Periods",
"bills": "Bills",
"operations": "Payments & adjustments",
"ledger": "Account ledger",
"creditLedger": "Credit ledger",
"playerBills": "Player bills",
@@ -74,6 +75,16 @@
"badDebt": "Bad debt",
"reports": "Period reports"
},
"operations": {
"hint": "Payment registration, bad-debt write-offs, and adjustments. Player credit movements are under Account ledger.",
"adjustmentsTitle": "Adjustments / reversals / bad debt",
"loadFailed": "Failed to load payment and adjustment records",
"operationType": "Operation type",
"filterAllTypes": "All types",
"typePayment": "Payment",
"keyword": "Keyword",
"keywordPh": "Method, reason, proof, payer/payee"
},
"filters": {
"period": "Period",
"statusAll": "All",
@@ -160,6 +171,8 @@
"amount": "Amount",
"method": "Method",
"time": "Time",
"summary": "Summary",
"detail": "Detail",
"adjustmentType": "Type",
"originalBill": "Original bill",
"reason": "Reason",
@@ -183,6 +196,10 @@
"reversal": "Reversal",
"bad_debt": "Bad debt"
},
"paymentStatus": {
"pending": "Pending",
"confirmed": "Confirmed"
},
"actions": {
"detail": "Detail",
"viewBill": "View bill",
@@ -193,9 +210,11 @@
"settlementAmount": "Settlement amount",
"pays": "Pays",
"paysShort": "Pays",
"howAmountWorks": "How the amount is calculated",
"howAmountWorks": "Breakdown",
"payerLabel": "Payer",
"payeeLabel": "Payee",
"playerBreakdownIntro": "Players settle only with their direct agent: net = win/loss rebate.",
"agentBreakdownIntro": "Agents settle only with their upline: net = team net own share profit.",
"agentBreakdownIntro": "Agents settle only with their upline: net = team net downline share own share.",
"playerGross": "Game win/loss",
"playerLostHint": "Player lost; owes agent",
"playerWonHint": "Player won; agent owes player",
@@ -208,15 +227,19 @@
"teamRebate": "Team rebate",
"teamNet": "Team net",
"rebate": "Rebate",
"agentShareKeep": "{{agent}} share kept",
"agentShareKeep": "Share kept at this tier",
"agentShareKeepHint": "Profit retained at this tier by share ratio",
"agentNet": "{{agent}} pays upline",
"agentNetReceive": "Upline pays {{agent}}",
"agentDownlineShare": "Downline share",
"agentDownlineShareHint": "Profit retained by downline agents (see breakdown below)",
"agentDownlineShareItem": "{{agent}} kept",
"agentNet": "Pay {{counterparty}}",
"agentNetReceive": "{{counterparty}} pays this tier",
"billOwner": "Bill owner",
"billCounterparty": "Counterparty",
"unpaidPendingConfirm": "Confirm the bill before recording payment",
"unpaidAwaitingPayment": "Record offline payment",
"fullySettled": "Fully settled this period",
"confirmHint": "Confirm the bill before recording payment.",
"recordReceiptFrom": "Record receipt ({{payer}} → {{payee}})",
"recordPayoutTo": "Record payout ({{payer}} → {{payee}})",
"rebateAllocationsHint": "How rebate is allocated across agent tiers.",

View File

@@ -24,6 +24,11 @@
"transferIn": "Main site transfer in",
"transferOut": "Main site transfer out",
"transferOutRefund": "Transfer-out refund",
"bizBetDeduct": "Bet debit",
"bizBetReverse": "Bet reversal",
"bizSettlePayout": "Settlement payout",
"bizJackpotPayout": "Jackpot payout",
"bizSettlementAdjustment": "Settlement adjustment",
"transferOrders": "Transfer orders",
"walletTransactions": "Wallet transactions",
"playerWalletQuery": "Player wallet query",