<?php

declare(strict_types=1);

return [
    'Channel not found' => 'Channel not found',
    'Settlement number conflict, please retry' => 'Settlement number conflict, please retry',
    'No available admin share ratios under this channel; cannot settle' => 'No available admin share ratios under this channel; cannot settle',
    'This flow pays commissions automatically after super admin settlement; channel admin does not need to settle again' => 'This flow pays commissions automatically after super admin settlement; channel admin does not need to settle again',
    'Invalid channel data' => 'Invalid channel data',
    'Invalid settlement period (start time is not earlier than now)' => 'Invalid settlement period (start time is not earlier than now)',
    'Turnover agent commission rate is not configured' => 'Turnover agent commission rate is not configured',
    'Affiliate agent fee rate is not configured' => 'Affiliate agent fee rate is not configured',
    'Affiliate ladder rules are empty or invalid' => 'Affiliate ladder rules are empty or invalid',
    'Unknown agent mode' => 'Unknown agent mode',

    'Manual create next round is disabled' => 'Manual create next round is disabled',
    'There is an unfinished round; cannot create a new one' => 'There is an unfinished round; cannot create a new one',
    'New round created' => 'New round created',

    'Idempotency key conflict' => 'Idempotency key conflict',
    'Insufficient wallet balance' => 'Insufficient wallet balance',

    'Game record is generated by system; manual creation is not allowed' => 'Game record is generated by system; manual creation is not allowed',
    'Game record cannot be edited' => 'Game record cannot be edited',
    'Game record cannot be deleted' => 'Game record cannot be deleted',

    'Bet order is generated by game API; manual creation is not allowed' => 'Bet order is generated by game API; manual creation is not allowed',
    'Bet order cannot be edited' => 'Bet order cannot be edited',
    'Bet order cannot be deleted' => 'Bet order cannot be deleted',
    'Sorting is not supported' => 'Sorting is not supported',

    'Play record is generated by game API; manual creation is not allowed' => 'Play record is generated by game API; manual creation is not allowed',
    'Play record cannot be edited' => 'Play record cannot be edited',
    'Play record cannot be deleted' => 'Play record cannot be deleted',

    'Wallet records are business-generated; manual creation is not allowed' => 'Wallet records are business-generated; manual creation is not allowed',
    'Wallet record cannot be edited' => 'Wallet record cannot be edited',
    'Wallet record cannot be deleted' => 'Wallet record cannot be deleted',

    'User notice read records are client-generated; manual creation is not allowed' => 'User notice read records are client-generated; manual creation is not allowed',
    'User notice read record cannot be edited' => 'User notice read record cannot be edited',
    'User notice read record cannot be deleted' => 'User notice read record cannot be deleted',

    'Admin wallet does not allow manual creation' => 'Admin wallet does not allow manual creation',
    'Admin wallet does not allow manual editing' => 'Admin wallet does not allow manual editing',
    'Admin wallet does not allow deletion' => 'Admin wallet does not allow deletion',

    'Admin wallet records do not allow manual creation' => 'Admin wallet records do not allow manual creation',
    'Admin wallet records do not allow manual editing' => 'Admin wallet records do not allow manual editing',
    'Admin wallet records do not allow deletion' => 'Admin wallet records do not allow deletion',

    'Invalid parameters' => 'Invalid parameters',
    'This config is locked by another operation, please try again later' => 'This config is locked by another operation, please try again later',
    'Saved successfully' => 'Saved successfully',

    'Please use approve/reject buttons to review' => 'Please use approve/reject buttons to review',
    'This withdraw order has already been reviewed' => 'This withdraw order has already been reviewed',
    'Approved' => 'Approved',
    'Please provide reject reason' => 'Please provide reject reason',
    'Rejected' => 'Rejected',

    'Deposit orders are auto-settled; direct modification is not allowed. Use the dedicated tool for manual adjustment.' => 'Deposit orders are auto-settled; direct modification is not allowed. Use the dedicated tool for manual adjustment.',

    'Missing required parameters' => 'Missing required parameters',
    'Idempotency key is too long' => 'Idempotency key is too long',
    'Withdraw amount must be greater than 0' => 'Withdraw amount must be greater than 0',
    'Invalid receive type; only bank/ewallet/crypto are supported' => 'Invalid receive type; only bank/ewallet/crypto are supported',
    'Withdraw request submitted; pending channel super admin review' => 'Withdraw request submitted; pending channel super admin review',

    'Tier ID already exists' => 'Tier ID already exists',
    'Items must be an array' => 'Items must be an array',
    'Please save all registered channel rows (no missing rows)' => 'Please save all registered channel rows (no missing rows)',

    'Please use approve/reject buttons to complete the review' => 'Please use approve/reject buttons to complete the review',
    'Apply amount must be greater than 0' => 'Apply amount must be greater than 0',
    'Fee cannot be negative' => 'Fee cannot be negative',
    'Fee cannot be greater than apply amount' => 'Fee cannot be greater than apply amount',
    'This order has already been reviewed' => 'This order has already been reviewed',
    'Order is missing user info' => 'Order is missing user info',
    'Related user does not exist' => 'Related user does not exist',
    'User balance is insufficient to cover the adjustment difference' => 'User balance is insufficient to cover the adjustment difference',

    'Please select exactly one role group' => 'Please select exactly one role group',
    'Selected role group is not bound to a channel' => 'Selected role group is not bound to a channel',
    'Selected role group channel does not match current account' => 'Selected role group channel does not match current account',

    'Invalid operation type' => 'Invalid operation type',
    'Invalid amount format' => 'Invalid amount format',
    'Amount must be greater than 0' => 'Amount must be greater than 0',
    'This user is being operated by another admin (wallet/concurrent save); please try again later' => 'This user is being operated by another admin (wallet/concurrent save); please try again later',
    'Insufficient balance; deduction failed' => 'Insufficient balance; deduction failed',
    'Save failed: user balance changed by another request; please refresh and retry' => 'Save failed: user balance changed by another request; please refresh and retry',
    'Wallet adjusted successfully' => 'Wallet adjusted successfully',

    'Please configure at least one share record' => 'Please configure at least one share record',
    'There are no admins under this channel; cannot configure share ratios' => 'There are no admins under this channel; cannot configure share ratios',
    'Share ratio must be between 0 and 100' => 'Share ratio must be between 0 and 100',
    'Please configure at least one valid share record' => 'Please configure at least one valid share record',
    'Sum of enabled share ratios must equal 100' => 'Sum of enabled share ratios must equal 100',
    'Share ratios saved successfully' => 'Share ratios saved successfully',
    'Only super admin can settle; after settlement, commissions will be automatically paid to admin wallets' => 'Only super admin can settle; after settlement, commissions will be automatically paid to admin wallets',
    'Settlement failed' => 'Settlement failed',
    'Super admin settlement completed; paid automatically by share ratios' => 'Super admin settlement completed; paid automatically by share ratios',
    'Batch settlement completed' => 'Batch settlement completed',

    'Invalid settlement cycle' => 'Invalid settlement cycle',
    'Invalid settlement time format (HH:mm:ss)' => 'Invalid settlement time format (HH:mm:ss)',
    'Weekly settlement must select Monday to Sunday' => 'Weekly settlement must select Monday to Sunday',
    'Monthly settlement day must be between 1 and 31' => 'Monthly settlement day must be between 1 and 31',
    'Turnover commission rate must be between 0 and 100' => 'Turnover commission rate must be between 0 and 100',
    'Affiliate share/fee rates are required' => 'Affiliate share/fee rates are required',
    'Affiliate share/fee rates must be between 0 and 1' => 'Affiliate share/fee rates must be between 0 and 1',
    'Affiliate ladder rules are required' => 'Affiliate ladder rules are required',
    'Affiliate ladder rules must be a valid JSON array' => 'Affiliate ladder rules must be a valid JSON array',
    'Affiliate ladder rules must contain at least one row' => 'Affiliate ladder rules must contain at least one row',
    'Affiliate ladder rules row format error' => 'Affiliate ladder rules row format error',
    'Affiliate ladder rules minLoss format error' => 'Affiliate ladder rules minLoss format error',
    'Affiliate ladder rules shareRate format error' => 'Affiliate ladder rules shareRate format error',
    'Affiliate ladder rules minLoss cannot be negative' => 'Affiliate ladder rules minLoss cannot be negative',
    'Affiliate ladder rules shareRate must be between 0 and 1' => 'Affiliate ladder rules shareRate must be between 0 and 1',
    'Affiliate ladder rules must be strictly increasing by minLoss' => 'Affiliate ladder rules must be strictly increasing by minLoss',

    'Withdraw apply failed' => 'Withdraw apply failed',

    'Debit failed: user balance changed by another request; please refresh and retry' => 'Debit failed: user balance changed by another request; please refresh and retry',

    'Deposit' => 'Deposit',
    'Mock payment' => 'Mock payment',
    'Mock third-party cashier' => 'Mock third-party cashier',
    'Order No' => 'Order No',
    'Pay channel' => 'Pay channel',
    'Amount (fiat/pricing)' => 'Amount (fiat/pricing)',
    'Bonus' => 'Bonus',
    'coin' => 'coin',
    'Click the button below to simulate successful third-party payment; the server will callback and settle the deposit.' => 'Click the button below to simulate successful third-party payment; the server will callback and settle the deposit.',
    'Confirm payment (simulate success)' => 'Confirm payment (simulate success)',

    'Order id is invalid' => 'Order id is invalid',
    'Order does not exist' => 'Order does not exist',
    'Order number is empty' => 'Order number is empty',
    'Order status does not allow settlement' => 'Order status does not allow settlement',
    'Order amount is invalid' => 'Order amount is invalid',
    'Order user is invalid' => 'Order user is invalid',
    'User does not exist' => 'User does not exist',
    'Order state changed, please refresh and retry' => 'Order state changed, please refresh and retry',

    'Row format error' => 'Row format error',
    'Channel code is not registered' => 'Channel code is not registered',
    'Duplicate channel code' => 'Duplicate channel code',
    'Invalid channel row data' => 'Invalid channel row data',
    'JSON encode failed' => 'JSON encode failed',

    'Tier id is invalid' => 'Tier id is invalid',
    'Duplicate tier id' => 'Duplicate tier id',
    'Tier title (zh) is required' => 'Tier title (zh) is required',
    'Tier title (zh) is too long' => 'Tier title (zh) is too long',
    'Tier title (en) is too long' => 'Tier title (en) is too long',
    'Currency is required' => 'Currency is required',
    'Pay amount must be greater than 0' => 'Pay amount must be greater than 0',
    'Base credit amount must be greater than 0' => 'Base credit amount must be greater than 0',
    'Bonus amount cannot be negative' => 'Bonus amount cannot be negative',
    'Description (zh) is too long' => 'Description (zh) is too long',
    'Description (en) is too long' => 'Description (en) is too long',

    'platform_coin format error' => 'platform_coin format error',
    'Platform coin labels (zh/en) are required' => 'Platform coin labels (zh/en) are required',
    'At least one currency is required' => 'At least one currency is required',
    'Currency row format error' => 'Currency row format error',
    'Currency code is invalid' => 'Currency code is invalid',
    'Duplicate currency code' => 'Duplicate currency code',
    'Deposit rate must be a number greater than 0' => 'Deposit rate must be a number greater than 0',
    'Withdraw rate must be a number greater than 0' => 'Withdraw rate must be a number greater than 0',
    'Bank row format error' => 'Bank row format error',
    'Bank code is invalid' => 'Bank code is invalid',
    'Duplicate bank code' => 'Duplicate bank code',
    'Withdraw min limit must be a number not less than 0' => 'Withdraw min limit must be a number not less than 0',
    'Please configure deposit channels' => 'Please configure deposit channels',

    'Must be exactly 36 items' => 'Must be exactly 36 items',
    'No must be numeric' => 'No must be numeric',
    'No must be between 1 and 36' => 'No must be between 1 and 36',
    'Duplicate no' => 'Duplicate no',
    'Name is required' => 'Name is required',
    'Category is invalid' => 'Category is invalid',
    'Missing no' => 'Missing no',

    'Failed to generate commission rows' => 'Failed to generate commission rows',
];

