front/src/locale/en-US.ts
2026-05-05 18:14:43 +08:00

2557 lines
142 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.

import localeMessageBox from '@/components/message-box/locale/en-US';
import localeLogin from '@/views/login/locale/en-US';
import localeWorkplace from '@/views/home/workplace/locale/en-US';
import localeMonitor from '@/views/home/monitor/locale/en-US';
import localeSearchTable from '@/views/list/search-table/locale/en-US';
import localeCardList from '@/views/list/card/locale/en-US';
import localeStepForm from '@/views/form/step/locale/en-US';
import localeGroupForm from '@/views/form/group/locale/en-US';
import localeSuccess from '@/views/result/success/locale/en-US';
import localeError from '@/views/result/error/locale/en-US';
import locale403 from '@/views/exception/403/locale/en-US';
import locale404 from '@/views/exception/404/locale/en-US';
import locale500 from '@/views/exception/500/locale/en-US';
import localeSettings from './en-US/settings';
export default {
// Common
'app.language': 'Language',
'common.all': 'All',
'common.actions': 'Actions',
'common.viewDetail': 'View Detail',
'common.selectPlaceholder': 'Please select...',
'common.search': 'Search',
'common.reset': 'Reset',
'common.add': 'Add',
'common.editSuccess': 'Edit successful',
'common.addSuccess': 'Add successful',
'common.inputProviderName': 'Please enter provider name',
'common.inputValidTime': 'Please enter valid time',
'common.selected': 'Selected ({count})',
'common.clear': 'Clear',
'common.delete': 'Delete',
'common.saveSuccess': 'Save successful',
'common.importFailed': 'Import failed',
'common.operationFailed': 'Operation failed',
'pagination.pageExceeded': 'Page number exceeds maximum limit, automatically jumped to page {max}',
'common.pagination.total': 'Total {count} records',
'common.pagination.prev': 'Previous',
'common.pagination.next': 'Next',
'common.pagination.perPage': 'per page',
'common.pagination.goTo': 'Go to',
'common.pagination.page': 'page',
// Menus (keep existing demo keys)
'menu.home': 'Home',
'menu.server.home': 'Home-Server',
'menu.server.workplace': 'Workplace-Server',
'menu.server.monitor': 'Monitor-Server',
'menu.list': 'List',
'menu.result': 'Result',
'menu.exception': 'Exception',
'menu.form': 'Form',
'menu.user': 'User Center',
'menu.user.customer': 'Customer Management',
'menu.user.profile': 'Personal Center',
'menu.user.recharge': 'Recharge',
'menu.user.rechargeRecord': 'Recharge Records',
'menu.arcoWebsite': 'Arco Design',
'menu.faq': 'FAQ',
'menu.example': 'Example',
'menu.example.proTable': 'Pro Table',
'menu.demo': 'Demo',
'menu.demo.index': 'Data Table',
'navbar.docs': 'Docs',
'navbar.action.locale': 'Switch to English',
'menu.order': 'Order',
'menu.order.priceCheck': 'Price Check',
'menu.order.placeOrder': 'Place Order',
'menu.order.myOrders': 'My Orders',
'menu.channel': 'Channel',
'menu.channel.salesProducts': 'Sales Products',
'menu.channel.serviceChannels': 'Service Channels',
'menu.channel.priceArea': 'Price Area',
'menu.channel.blacklist': 'Blacklist',
'menu.channel.remoteZones': 'Remote Zones',
'menu.channel.weightRules': 'Weight Rules',
'menu.channel.weightRounding': 'Weight Rounding',
'menu.channel.autoTrigger': 'Auto Trigger',
'menu.channel.labelDesign': 'Label Design',
'menu.track': 'Track',
'menu.track.trackOrder': 'Track Order',
'menu.track.warningOrder': 'Warning Order',
'menu.track.trackState': 'Track State',
'menu.track.trackFlag': 'Track Flag',
'menu.track.trackContent': 'Track Content',
'menu.track.trackPull': 'Track Pull',
'menu.track.trackPush': 'Track Push',
'menu.track.kpiRegion': 'KPI Region',
'menu.track.kpiEarlyWarningConfig': 'KPI Early Warning Config',
'menu.operation': 'Operation',
'menu.operation.inboundScan': 'Inbound Scan',
'menu.operation.outboundScan': 'Outbound Scan',
'menu.operation.printLabel': 'Print Label',
'menu.api': 'API',
'menu.api.upstreamInterface': 'Upstream Interface',
'menu.api.downstreamInterface': 'Downstream Interface',
'menu.api.createInterface': 'Create Interface',
'menu.api.editInterface': 'Edit Interface',
'menu.api.appList': 'App List',
'menu.api.requestLog': 'Request Log',
'menu.api.callStatistics': 'Call Statistics',
'menu.api.createApplication': 'Create Application',
'menu.api.apiDebugger': 'API Debugger',
'menu.api.apiLike': 'API LIKE',
'menu.api.apiTest': 'API Test',
// API - Call Statistics
'api.callStatistics.name.app': 'Application Name',
'api.callStatistics.name.provider': 'Service Provider Name',
'api.callStatistics.table.date': 'Date',
'api.callStatistics.table.interfaceName': 'Interface Name',
'api.callStatistics.table.total': 'Total Calls',
'api.callStatistics.table.succeedCount': 'Successful Calls',
'api.callStatistics.table.failCount': 'Failed Calls',
'api.callStatistics.table.successRate': 'Success Rate',
'menu.system': 'System',
'menu.system.org': 'Organization',
'menu.system.organization': 'Organization',
'menu.system.user': 'User',
'menu.system.position': 'Position',
'menu.system.role': 'Role',
'menu.system.module': 'Module',
'menu.system.menu': 'Menu',
'menu.system.dict': 'Dictionary',
'menu.system.config': 'Config',
'menu.system.announcement': 'Announcement',
'menu.system.vislog': 'Visit Log',
'menu.system.oplog': 'Operation Log',
'menu.noPermission': 'No menu permission',
'menu.system.interface': 'System Interface',
'menu.system.interface.config': 'Interface Config',
'menu.system.warehouseAddress': 'Warehouse Address',
// Top nav - contact & balance
'nav.contactService.title': 'Q&A & Support',
'nav.contactService.selectWarehouse': 'Select warehouse',
'nav.contactService.whseName': 'Warehouse name',
'nav.contactService.serviceWechat': 'Customer WeChat',
'nav.contactService.wechatQrcode': 'WeChat QR code',
'nav.contactService.phone': 'Contact phone',
'nav.contactService.workingTime': 'Service hours: Mon-Sun 9:00-22:00',
'nav.contactService.contactUs': 'Contact support',
'nav.balance.label': 'Balance',
'nav.balance.recharge': 'Recharge',
'nav.balance.rechargeRecord': 'Recharge records',
// Order - My Orders
'order.myOrders.tabs.all': 'All',
'order.myOrders.tabs.draft': 'Draft',
'order.myOrders.tabs.predeclared': 'Pre-declared',
'order.myOrders.tabs.received': 'Received',
'order.myOrders.tabs.pendingPayment': 'Pending Payment',
'order.myOrders.tabs.pendingShip': 'Pending Ship',
'order.myOrders.tabs.pendingOnline': 'Pending Online',
'order.myOrders.tabs.shipping': 'Shipping',
'order.myOrders.tabs.deliverySuccess': 'Delivery Success',
'order.myOrders.tabs.deliveryFailed': 'Delivery Failed',
'order.myOrders.tabs.inbound': 'Inbound',
'order.myOrders.tabs.outbound': 'Outbound',
'order.myOrders.tabs.completed': 'Completed',
'order.myOrders.tabs.problematic': 'Problematic',
'order.myOrders.tabs.deleted': 'Deleted',
'order.myOrders.tabs.claimed': 'Claimed',
'order.myOrders.actions.pay': 'Pay',
'order.myOrders.actions.predeclare': 'Pre-declare',
'order.myOrders.actions.intercept': 'Intercept',
'order.myOrders.actions.cancelIntercept': 'Cancel intercept',
'order.myOrders.actions.delete': 'Delete',
'order.myOrders.actions.print': 'Print',
'order.myOrders.actions.export': 'Export',
'order.myOrders.actions.modifyOrder': 'Edit order',
'order.myOrders.pagination.totalRecords': 'Total {count} records',
'order.myOrders.pagination.perPage': 'per page',
'order.myOrders.pagination.goto': 'Go to',
'order.myOrders.pagination.page': 'page',
'order.myOrders.table.actions': 'Actions',
'order.myOrders.table.serialNo': 'No.',
'order.myOrders.table.waybillNo': 'Waybill No.',
'order.myOrders.table.customerOrderNo': 'Customer Order No.',
'order.myOrders.table.trackingNo': 'Tracking No.',
'order.myOrders.table.customerName': 'Customer Name',
'order.myOrders.table.customerCode': 'Customer Code',
'order.myOrders.table.shippingMethod': 'Shipping Method',
'order.myOrders.table.consignee': 'Consignee',
'order.myOrders.table.consigneeCountry': 'Consignee Country',
'order.myOrders.table.consigneePhone': 'Consignee Phone',
'order.myOrders.table.consigneeCity': 'Consignee City',
'order.myOrders.table.consigneeAddress': 'Consignee Address',
'order.myOrders.table.chargeableWeight': 'Chargeable Weight',
'order.myOrders.table.receivableAmount': 'Receivable Amount',
'order.myOrders.table.consigneePostcode': 'Consignee Postcode',
'order.myOrders.table.consigneeState': 'Consignee State',
'order.myOrders.table.ioss': 'IOSS',
'order.myOrders.table.eori': 'EORI',
'order.myOrders.table.orderStatus': 'Order Status',
'order.myOrders.table.createTime': 'Create Time',
'order.myOrders.table.receiveTime': 'Receive Time',
'order.myOrders.table.shipTime': 'Ship Time',
'order.myOrders.table.payTime': 'Pay Time',
'order.myOrders.table.signTime': 'Sign Time',
'order.myOrders.table.warehouse': 'Warehouse',
'order.myOrders.table.inboundTime': 'Inbound Time',
'order.myOrders.table.outboundTime': 'Outbound Time',
'order.myOrders.status.pendingPayment': 'Pending Payment',
'order.myOrders.status.draft': 'Draft',
'order.myOrders.status.predeclared': 'Pre-declared',
'order.myOrders.status.received': 'Received',
'order.myOrders.status.pendingShip': 'Pending Ship',
'order.myOrders.status.pendingOnline': 'Pending Online',
'order.myOrders.status.shipping': 'Shipping',
'order.myOrders.status.deliverySuccess': 'Delivery Success',
'order.myOrders.status.deliveryFailed': 'Delivery Failed',
'order.myOrders.status.problematic': 'Problematic',
'order.myOrders.status.deleted': 'Deleted',
'order.myOrders.status.claimed': 'Claimed',
'order.myOrders.selectedCount': 'Selected {count} items',
'order.myOrders.drawer.title': 'Order Detail',
'order.myOrders.drawer.tabs.basic': 'Order Detail',
'order.myOrders.drawer.tabs.weight': 'Weight/Dimensions',
'order.myOrders.drawer.tabs.fee': 'Receivables/Payables',
'order.myOrders.drawer.tabs.track': 'Tracking',
'order.myOrders.drawer.orderBasic': 'Basic Info',
'order.myOrders.drawer.serviceNo': 'Waybill No.',
'order.myOrders.drawer.clientNo': 'Client Order No.',
'order.myOrders.drawer.trackNo': 'Tracking No.',
'order.myOrders.drawer.productCode': 'Product Code',
'order.myOrders.drawer.channelCode': 'Channel Code',
'order.myOrders.drawer.consigneeCountry': 'Country Code',
'order.myOrders.drawer.cargoAttribute': 'Cargo Attribute',
'order.myOrders.drawer.cargoAttribute.general': 'General',
'order.myOrders.drawer.cargoAttribute.electronics': '3C & Electronics',
'order.myOrders.drawer.cargoAttribute.sensitive': 'Sensitive',
'order.myOrders.table.cargoAttribute': 'Cargo Attribute',
'order.myOrders.drawer.orderStatus': 'Order Status',
'order.myOrders.drawer.warehouse': 'Warehouse',
'order.myOrders.drawer.receiveTime': 'Receive Time',
'order.myOrders.drawer.shipTime': 'Ship Time',
'order.myOrders.drawer.payTime': 'Pay Time',
'order.myOrders.drawer.signTime': 'Sign Time',
'order.myOrders.drawer.isCod': 'Is COD',
'order.myOrders.drawer.codCurrency': 'COD Currency',
'order.myOrders.drawer.codSum': 'COD Amount',
'order.myOrders.drawer.isIntercept': 'Is Intercept',
'order.myOrders.drawer.isRemote': 'Is Remote',
'order.myOrders.drawer.createTime': 'Create Time',
'order.myOrders.drawer.createBy': 'Created By',
'order.myOrders.drawer.updateTime': 'Update Time',
'order.myOrders.drawer.updateBy': 'Updated By',
'order.myOrders.drawer.sender': 'Sender',
'order.myOrders.drawer.recipient': 'Recipient',
'order.myOrders.drawer.declaration': 'Declaration',
'order.myOrders.drawer.senderName': 'Sender Name',
'order.myOrders.drawer.company': 'Company',
'order.myOrders.drawer.country': 'Country',
'order.myOrders.drawer.province': 'Province',
'order.myOrders.drawer.city': 'City',
'order.myOrders.drawer.zipCode': 'Zip Code',
'order.myOrders.drawer.streetAddress1': 'Address 1',
'order.myOrders.drawer.streetAddress2': 'Address 2',
'order.myOrders.drawer.streetAddress3': 'Address 3',
'order.myOrders.drawer.houseNumber': 'House No.',
'order.myOrders.drawer.phone': 'Phone',
'order.myOrders.drawer.telePhone': 'Telephone',
'order.myOrders.drawer.email': 'Email',
'order.myOrders.drawer.isDefault': 'Is Default',
'order.myOrders.drawer.recipientsName': 'Recipient Name',
'order.myOrders.drawer.companyName': 'Company Name',
'order.myOrders.drawer.recipientCountry': 'Country',
'order.myOrders.drawer.recipientPhone': 'Phone',
'order.myOrders.drawer.recipientZipCode': 'Zip Code',
'order.myOrders.drawer.recipientTelePhone': 'Telephone',
'order.myOrders.drawer.streetNumber': 'Street No.',
'order.myOrders.drawer.taxType': 'Tax Type',
'order.myOrders.drawer.taxNo': 'Tax No.',
'order.myOrders.drawer.certificateType': 'Certificate Type',
'order.myOrders.drawer.certificateNo': 'Certificate No.',
'order.myOrders.drawer.eori': 'EORI',
'order.myOrders.drawer.vat': 'Vat',
'order.myOrders.drawer.declarationCnName': 'Name(CN)',
'order.myOrders.drawer.declarationEnName': 'Name(EN)',
'order.myOrders.drawer.declarationSku': 'SKU',
'order.myOrders.drawer.declarationUnit': 'Unit',
'order.myOrders.drawer.declarationUnitPrice': 'Unit Price',
'order.myOrders.drawer.declarationUnitWeight': 'Unit Weight',
'order.myOrders.drawer.declarationQuantity': 'Quantity',
'order.myOrders.drawer.declarationAmount': 'Amount',
'order.myOrders.drawer.declarationWeight': 'Weight',
'order.myOrders.drawer.declarationHsCode': 'HsCode',
'order.myOrders.drawer.declarationSkuImage': 'Image',
'order.myOrders.drawer.declarationCategory': 'Category',
'order.myOrders.drawer.declarationBrand': 'Brand',
'order.myOrders.drawer.declarationBrandType': 'Brand Type',
'order.myOrders.drawer.declarationIsMagnetic': 'Magnetic/Electric',
'order.myOrders.drawer.declarationDistribution': 'Distribution',
'order.myOrders.drawer.declarationMaterial': 'Material',
'order.myOrders.drawer.declarationEnMaterial': 'Material(EN)',
'order.myOrders.drawer.declarationPurpose': 'Purpose',
'order.myOrders.drawer.declarationAttributes': 'Attributes',
'order.myOrders.drawer.declarationOriginCountry': 'Origin Country',
'order.myOrders.drawer.declarationSalesLink': 'Sales Link',
'order.myOrders.drawer.declarationModel': 'Model',
'order.myOrders.drawer.declarationSpecifications': 'Specifications',
'order.myOrders.drawer.declarationComment': 'Comment',
'order.myOrders.drawer.yes': 'Yes',
'order.myOrders.drawer.no': 'No',
'order.myOrders.drawer.weightType': 'Type',
'order.myOrders.drawer.weightLength': 'Length(cm)',
'order.myOrders.drawer.weightWidth': 'Width(cm)',
'order.myOrders.drawer.weightHeight': 'Height(cm)',
'order.myOrders.drawer.actualWeight': 'Actual(kg)',
'order.myOrders.drawer.volumetricWeight': 'Volumetric(kg)',
'order.myOrders.drawer.chargeableWeight': 'Chargeable(kg)',
'order.myOrders.drawer.cubic': 'Cubic(m³)',
'order.myOrders.drawer.feeType': 'Type',
'order.myOrders.drawer.costItem': 'Cost Item',
'order.myOrders.drawer.amount': 'Amount',
'order.myOrders.drawer.currency': 'Currency',
'order.myOrders.drawer.downstreamProvider': 'Downstream Provider',
'order.myOrders.drawer.priceNo': 'Price No',
'order.myOrders.drawer.priceEffectiveTime': 'Price Effective Time',
// Order - Price Check
'order.priceCheck.form.destinationCountry': 'Destination country',
'order.priceCheck.form.destinationCountry.placeholder': 'Please select',
'order.priceCheck.form.shippingMethod': 'Shipping method',
'order.priceCheck.form.shippingMethod.placeholder': 'Please select',
'order.priceCheck.form.cargoWeight': 'Cargo weight',
'order.priceCheck.form.cargoWeight.placeholder': 'Please enter weight (KG)',
'order.priceCheck.form.dimensions': 'Dimensions',
'order.priceCheck.form.dimensions.length': 'Length/cm',
'order.priceCheck.form.dimensions.width': 'Width/cm',
'order.priceCheck.form.dimensions.height': 'Height/cm',
'order.priceCheck.form.cargoType': 'Cargo attribute',
'order.priceCheck.form.destinationProvince': 'State / Province',
'order.priceCheck.form.destinationProvince.placeholder': 'Please select',
'order.priceCheck.form.postalCode': 'Postal code',
'order.priceCheck.form.postalCode.placeholder': 'Please enter',
'order.priceCheck.actions.query': 'Search',
'order.priceCheck.actions.reset': 'Reset',
'order.priceCheck.shortcuts.countryAria': 'Common destination countries',
'order.priceCheck.shortcut.US': 'United States',
'order.priceCheck.shortcut.CA': 'Canada',
'order.priceCheck.shortcut.MX': 'Mexico',
'order.priceCheck.shortcut.BR': 'Brazil',
'order.priceCheck.shortcut.NZ': 'New Zealand',
'order.priceCheck.shortcut.GB': 'United Kingdom',
'order.priceCheck.shortcut.DE': 'Germany',
'order.priceCheck.shortcut.IT': 'Italy',
'order.priceCheck.shortcut.FR': 'France',
'order.priceCheck.shortcut.NL': 'Netherlands',
'order.priceCheck.country.US': 'United States',
'order.priceCheck.country.UK': 'United Kingdom',
'order.priceCheck.country.DE': 'Germany',
'order.priceCheck.country.FR': 'France',
'order.priceCheck.shippingMethod.air': 'Air',
'order.priceCheck.shippingMethod.sea': 'Sea',
'order.priceCheck.shippingMethod.land': 'Land',
'order.priceCheck.cargoType.general': 'General cargo',
'order.priceCheck.cargoType.sensitive': 'Sensitive cargo',
'order.priceCheck.cargoType.dangerous': 'Dangerous goods',
'order.priceCheck.province.CA': 'California',
'order.priceCheck.province.NY': 'New York',
'order.priceCheck.province.TX': 'Texas',
'order.priceCheck.search.placeholder': 'Search table...',
'order.priceCheck.search.search': 'Search',
'order.priceCheck.search.clear': 'Clear',
'order.priceCheck.search.resetFilters': 'Reset filters',
'order.priceCheck.table.serialNo': 'No.',
'order.priceCheck.table.shippingMethod': 'Shipping Method',
'order.priceCheck.table.warehouse': 'Warehouse',
'order.priceCheck.table.deliveryTime': 'Transit time (days)',
'order.priceCheck.table.volumetricWeight': 'Volumetric Weight (KG)',
'order.priceCheck.table.chargeableWeight': 'Chargeable Weight (KG)',
'order.priceCheck.table.costFormula': 'Cost Formula',
'order.priceCheck.table.freight': 'Freight (CNY)',
'order.priceCheck.table.otherFees': 'Other Fees (CNY)',
'order.priceCheck.table.totalCost': 'Total Cost (CNY)',
'order.priceCheck.table.operation': 'Action',
'order.priceCheck.table.orderNow': 'Place order now',
'order.priceCheck.pagination.total': 'Total {count} records',
'order.priceCheck.pagination.prev': 'Prev',
'order.priceCheck.pagination.next': 'Next',
'order.priceCheck.pagination.perPage': '/page',
'order.priceCheck.pagination.goTo': 'Go to',
'order.priceCheck.pagination.page': 'page',
'order.priceCheck.pagination.invalidPage': 'Please enter a valid page number',
// Order - Place Order
'order.placeOrder.template.label': 'Standard template',
'order.placeOrder.template.download': 'Download',
'order.placeOrder.template.standard1': 'Standard template 1',
'order.placeOrder.template.standard2': 'Standard template 2',
'order.placeOrder.template.custom1': 'Custom template 1',
'order.placeOrder.template.updatedAt': 'Updated: {time}',
'order.placeOrder.upload.dropText': 'Drag file here, or click to upload',
'order.placeOrder.upload.tip1': 'Please upload an Excel file and fill in required data according to the template.',
'order.placeOrder.upload.tip2': 'Maximum 2000 orders per upload.',
'order.placeOrder.batchOrder': 'Batch order',
'order.placeOrder.standardTemplates': 'Standard templates',
'order.placeOrder.customTemplates': 'Custom templates',
'order.placeOrder.customTemplates.add': 'Add custom template',
'order.placeOrder.progress.title': 'Processing progress',
'order.placeOrder.progress.header.serialNo': 'No.',
'order.placeOrder.progress.header.taskName': 'Task name',
'order.placeOrder.progress.header.quantity': 'Quantity',
'order.placeOrder.progress.header.status': 'Status',
'order.placeOrder.progress.header.createTime': 'Created at',
'order.placeOrder.progress.header.actions': 'Action',
'order.placeOrder.progress.view': 'View',
'order.placeOrder.status.processing': 'Processing',
'order.placeOrder.status.completed': 'Completed',
'order.placeOrder.status.pending': 'Pending',
// System - Downstream service providers & interfaces
'system.serviceProviders.search.placeholder': 'Enter provider name',
'system.serviceProviders.search.refresh': 'Refresh list',
'system.serviceProviders.search.addProvider': 'Add provider',
'system.serviceProviders.dropdown.edit': 'Edit',
'system.serviceProviders.dropdown.copy': 'Create copy',
'system.serviceProviders.dropdown.authConfig': 'Auth config',
'system.serviceProviders.dropdown.accountManage': 'Account management',
'system.serviceProviders.dropdown.export': 'Export',
'system.serviceProviders.dropdown.fixedParams': 'Common parameters',
'system.serviceProviders.dropdown.delete': 'Delete',
'system.serviceProviders.list.deleteTip': 'Please delete via the action button in each provider item',
'system.serviceProviders.list.invalid': 'Invalid provider data',
'system.serviceProviders.list.deleteConfirmTitle': 'Reminder',
'system.serviceProviders.list.deleteConfirmContent':
'Are you sure you want to delete provider “{name}”? All interfaces under this provider will also be deleted.',
'system.serviceProviders.list.deleteSuccess': 'Deleted successfully',
'system.serviceProviders.list.deleteFail': 'Delete failed',
'system.serviceProviders.list.loadFail': 'Failed to load provider list',
'system.serviceProviders.interfaceList.title': 'Interface list',
'system.serviceProviders.interfaceList.refresh': 'Refresh interfaces',
'system.serviceProviders.interfaceList.add': 'Add interface',
'system.serviceProviders.interfaceList.loading': 'Loading interface list...',
'system.serviceProviders.interfaceList.empty': 'No interface data',
'system.serviceProviders.interfaceList.selectProvider': 'Please select a provider to view its interfaces',
'system.serviceProviders.interfaceList.loadFail': 'Failed to load interface list',
'system.serviceProviders.interface.needProvider': 'Please select a provider first',
'system.serviceProviders.interface.deleteTip': 'Please delete via the delete button in the interface list',
'system.serviceProviders.interface.invalid': 'Invalid interface data',
'system.serviceProviders.interface.deleteConfirmTitle': 'Reminder',
'system.serviceProviders.interface.deleteConfirmContent':
'Are you sure you want to delete interface “{name}”?',
'system.serviceProviders.interface.deleteSuccess': 'Deleted successfully',
'system.serviceProviders.interface.deleteFail': 'Delete failed',
'system.serviceProviders.detail.tab.detail': 'Interface detail',
'system.serviceProviders.detail.tab.debug': 'API Debugger',
'system.serviceProviders.detail.actions.cancel': 'Cancel',
'system.serviceProviders.detail.actions.save': 'Save',
'system.serviceProviders.interfaceDetail.saveSuccess': 'Saved successfully',
// System - Service provider interface modal
'system.serviceProviders.modal.params.required': 'Required',
'system.serviceProviders.modal.form.name.placeholder': '* Please enter interface name (Chinese)',
'system.serviceProviders.modal.form.code.placeholder': 'Interface code (read only)',
'system.serviceProviders.modal.form.requestProtocol.placeholder': '* Please select protocol',
'system.serviceProviders.modal.form.requestMethod.placeholder': '* Please select method',
'system.serviceProviders.modal.form.requestAddress.placeholder': '* Example: http://xx/api/CreateOrder',
'system.serviceProviders.modal.form.contentType.placeholder': '* Please select Content-Type',
'system.serviceProviders.modal.form.responseContentType.placeholder': 'Please select Response-Content-Type',
'system.serviceProviders.modal.form.isDisableAuth.yes': 'Yes',
'system.serviceProviders.modal.form.isDisableAuth.no': 'No',
'system.serviceProviders.modal.form.mappedParamType.placeholder': 'Please select root node',
'system.serviceProviders.modal.form.description.placeholder': 'Please enter remarks',
'system.serviceProviders.modal.rules.requiredInput': 'Input cannot be empty',
'system.serviceProviders.modal.rules.requestProtocol': 'Please select protocol',
'system.serviceProviders.modal.rules.requestMethod': 'Please select method',
'system.serviceProviders.modal.rules.contentType': 'Please select Content-Type',
'system.serviceProviders.modal.rules.descriptionMax': 'Please keep within 200 characters',
'system.serviceProviders.modal.load.error': 'Failed to load interface data',
'system.serviceProviders.modal.load.notFound': 'Interface does not exist or has been deleted',
'system.serviceProviders.modal.load.noPermission': 'No permission to access this interface',
'system.serviceProviders.modal.load.serverError': 'Server error, please try again later',
'system.serviceProviders.modal.load.networkError': 'Network error, please check API endpoint',
'system.serviceProviders.modal.load.fallbackName': 'Failed to load interface data, please fill in manually',
'system.serviceProviders.modal.save.fillAll': 'Please complete all required fields',
'system.serviceProviders.modal.save.success': 'Saved successfully',
'system.serviceProviders.modal.save.fail': 'Save failed',
'system.serviceProviders.modal.params.addFail': 'Failed to add parameter, please try again',
'system.serviceProviders.modal.params.typeNotAllow': 'This parameter type cannot add child item',
'system.serviceProviders.modal.params.parse.needInput': 'Please enter content before parsing',
'system.serviceProviders.modal.params.parse.success': 'Parsed successfully',
'system.serviceProviders.modal.params.parse.fail': 'Parse failed',
'system.serviceProviders.modal.params.import.needParse': 'Import failed, please parse first',
'system.serviceProviders.modal.params.import.success': 'Imported successfully',
'system.serviceProviders.modal.params.import.fail': 'Import failed',
'system.serviceProviders.modal.params.second.addFail': 'Failed to add secondary request parameter, please try again',
'system.serviceProviders.modal.secondParams.columns.name': 'Name',
'system.serviceProviders.modal.secondParams.columns.value': 'Value',
'system.serviceProviders.modal.secondParams.columns.description': 'Description',
'system.serviceProviders.modal.secondParams.columns.action': 'Action',
'system.serviceProviders.modal.table.requestBody': 'Request body',
'system.serviceProviders.modal.table.responseBody': 'Response body',
'system.serviceProviders.modal.table.secondParams': 'Secondary request params',
'system.serviceProviders.modal.table.action.add': 'Add',
'system.serviceProviders.modal.table.button.parse': 'Parse',
'system.serviceProviders.modal.table.placeholder.paramName': 'Please enter parameter name',
'system.serviceProviders.modal.table.placeholder.cnName': 'Please enter Chinese name',
'system.serviceProviders.modal.table.placeholder.type': 'Please select type',
'system.serviceProviders.modal.table.placeholder.description': 'Please enter description',
'system.serviceProviders.modal.table.placeholder.paramValue': 'Please enter parameter value',
'system.serviceProviders.modal.drawer.title': 'Parameter parsing',
'system.serviceProviders.modal.drawer.placeholder.json': 'Please enter JSON content',
'system.serviceProviders.modal.drawer.placeholder.xml': 'Please enter XML content',
'system.serviceProviders.modal.drawer.actions.cancel': 'Cancel',
'system.serviceProviders.modal.drawer.actions.parse': 'Parse',
'system.serviceProviders.modal.drawer.actions.import': 'Import',
// System - Upstream interface base form (new-port.vue)
'system.interface.form.requestAddress': 'Request URL',
'system.interface.form.requestProtocol': 'Request protocol',
'system.interface.form.requestMethod': 'Request method',
'system.interface.form.limit': 'Batch processing',
'system.interface.form.flowCode': 'Flow Code',
'system.interface.form.isDisableAuth': 'Disable auth',
'system.interface.form.rules.name.required': 'This field is required',
'system.interface.form.rules.name.max50': 'Please keep within 50 characters',
'system.interface.form.rules.limit.number': 'Only numbers are allowed',
'system.interface.form.rules.requestAddress.required': 'This field is required',
'system.interface.form.rules.requestAddress.max500': 'Please keep within 500 characters',
'system.interface.form.rules.description.max200': 'Please keep within 200 characters',
'system.interface.form.rules.category.required': 'Please select interface',
'system.interface.form.rules.requestProtocol.required': 'Please select protocol',
'system.interface.form.rules.requestMethod.required': 'Please select method',
'system.interface.form.rules.isBatch.required': 'Please select',
'system.interface.form.rules.contentType.required': 'Please select Content-Type',
'system.interface.form.rules.responseContentType.required': 'Please select Response-Content-Type',
'system.interface.params.name.required': 'Parameter name is required',
'system.interface.params.name.noChinese': 'Spaces and Chinese characters are not allowed',
'system.interface.params.description.max200': 'Please keep within 200 characters',
'system.interface.params.parameterId.required': 'Status parameter is required',
'system.interface.params.statusCode.required': 'Success value is required',
'system.interface.params.statusCode.alphaNum': 'Only letters and numbers are allowed',
'system.interface.sort.onlySameLevel': 'Only reordering within the same level is supported',
'system.interface.sort.saveSuccess': 'Sorted successfully',
'system.interface.saveFail': 'Save failed',
'system.interface.changeLevel': 'Cross-level dragging is not allowed',
// System - Interface Management Page
'system.interface.search.placeholder.nameOrCode': 'Interface name/code',
'system.interface.search.placeholder.interfaceName': 'Enter interface name',
'system.interface.search.placeholder.providerName': 'Enter provider name',
'system.interface.search.placeholder.selectProviderAndInterface': 'Please select provider and interface',
'system.interface.search.button.query': 'Query',
'system.interface.actions.refresh': 'Refresh list',
'system.interface.actions.addInterface': 'Add interface',
'system.interface.actions.addMapping': 'Add mapping',
'system.interface.actions.delete': 'Delete',
'system.interface.actions.cancel': 'Cancel',
'system.interface.actions.confirm': 'Confirm',
'system.interface.table.actions': 'Action',
'system.interface.modal.add': 'Add',
'system.interface.modal.edit': 'Edit',
'system.interface.modal.addMapping': 'Add mapping',
'system.interface.modal.addUpstreamInterface': 'Add upstream interface',
'system.interface.modal.editUpstreamInterface': 'Edit upstream interface',
'system.interface.modal.confirmTitle': 'Confirm',
'system.interface.modal.deleteConfirm': 'Are you sure to delete this record?',
'system.interface.modal.deleteInterfaceConfirm': 'Are you sure to delete interface "{name}"?',
'system.interface.modal.warningTitle': 'Warning',
'system.interface.modal.ok': 'OK',
'system.interface.modal.cancel': 'Cancel',
'system.interface.modal.publishConfirm': 'Do you want to publish?',
'system.interface.message.deleteSuccess': 'Deleted successfully',
'system.interface.message.deleteFailed': 'Delete failed',
'system.interface.message.saveSuccess': 'Saved successfully',
'system.interface.message.cannotDeleteWithMapping': 'Cannot delete interface with existing mappings',
'system.interface.message.canOnlyDeleteInterface': 'Can only delete interface nodes',
'system.interface.message.selectProviderForDebug': 'Please select a provider for debugging',
'system.interface.message.selectLeftInterface': 'Please select an interface from the left',
'system.interface.message.selectProviderInterface': 'Please select provider interface',
'system.interface.message.selectInterfaceFirst': 'Please select an interface first',
'system.interface.mappingList.title': 'Mapping list',
'system.interface.mapping.outputMapping': 'Output mapping',
'system.interface.tabs.mappingDetail': 'Mapping detail',
'system.interface.tabs.apiDebugger': 'API Debugger',
'system.interface.tabs.interfaceDetail': 'Interface detail',
'system.interface.empty.selectLeftInterfaceForMapping': 'Please select an interface from the left to view mapping provider list',
'system.interface.empty.selectLeftInterfaceForDetail': 'Please select an interface from the left to view interface detail',
'system.interface.empty.selectInterfaceForDetail': 'Please select an interface to view details',
'system.interface.loading.interfaceList': 'Loading interface list...',
'system.interface.mapping.inputMapping': 'Input mapping',
'system.interface.mapping.outputMappingLabel': 'Output mapping',
'system.interface.mapping.table.systemParamName': 'System parameter name',
'system.interface.mapping.table.systemParamNameCn': 'System parameter description',
'system.interface.mapping.table.paramType': 'Parameter type',
'system.interface.mapping.table.providerParamName': 'Provider parameter name',
'system.interface.mapping.table.providerParamNameCn': 'Provider parameter description',
'system.interface.mapping.table.paramValue': 'Parameter value',
'system.interface.mapping.table.inputParam': 'Input parameter',
'system.interface.mapping.table.inputParamCn': 'Input parameter description',
'system.interface.mapping.actions.prefixScript': 'Prefix script',
'system.interface.mapping.actions.postfixScript': 'Postfix script',
'system.interface.mapping.actions.allowUnequalMapping': 'Allow unequal structure mapping:',
'system.interface.mapping.message.noContentToPublish': 'No content to publish',
'system.interface.mapping.message.publishCacheSuccess': 'Updated {providerName}-{interfaceName}*{count} cache successfully',
'system.interface.mapping.message.getPublishCompareFailed': 'Failed to get publish compare data',
'system.interface.mapping.modal.publishTitle': 'Publish',
'system.interface.mapping.modal.onlineCache': 'Online cache',
'system.interface.mapping.modal.updateCache': 'Update cache ({count})',
'system.interface.mapping.modal.publishWarning': 'Publishing will affect normal data forecasting, continue?',
'system.interface.mapping.modal.versionRemark': 'Please enter version remark',
'system.interface.mapping.modal.deleteConfirm': 'Are you sure to delete this record?',
'system.interface.mapping.empty.noProvider': 'No mapping provider',
'system.interface.mapping.actions.actions': 'Actions',
'system.interface.mapping.actions.delete': 'Delete',
'system.interface.mapping.actions.publish': 'Publish',
'system.interface.mapping.actions.rollback': 'Rollback',
'common.yes': 'Yes',
'common.no': 'No',
// System - Interface Config Page
'system.interface.config.message.addParamFailed': 'Failed to add parameter, please try again',
'system.interface.config.message.addRequestParamFailed': 'Failed to add request parameter, please try again',
'system.interface.config.message.addResponseParamFailed': 'Failed to add response parameter, please try again',
'system.interface.config.message.typeNotAllow': 'This parameter type cannot add child item',
'system.interface.config.message.saveSuccess': 'Saved successfully',
'system.interface.config.message.saveFailed': 'Save failed, please check data',
'system.interface.config.message.cancelEditFailed': 'Failed to cancel edit',
'system.interface.config.message.editFailed': 'Edit failed, please try again',
'system.interface.config.message.addSuccess': 'Added successfully',
'system.interface.config.message.updateSuccess': 'Updated successfully',
'system.interface.config.message.parseSuccess': 'Parsed successfully',
'system.interface.config.message.importSuccess': 'Imported successfully',
'system.interface.config.message.importFailedNeedFormat': 'Import failed, please import text format first',
'system.interface.config.message.importFailedNeedParse': 'Import failed, please import text format or parse first',
'system.interface.config.modal.warningTitle': 'Warning',
'system.interface.config.modal.publishConfirm': 'Do you want to publish?',
'system.interface.config.table.requestBody': 'Request body',
'system.interface.config.table.responseBody': 'Response body',
'system.interface.config.actions.add': 'Add',
'system.interface.config.actions.parse': 'Parse',
'system.interface.config.actions.import': 'Import',
'system.interface.config.actions.cancel': 'Cancel',
'system.interface.config.placeholder.paramName': 'Enter parameter name',
'system.interface.config.placeholder.cnName': 'Enter Chinese name',
'system.interface.config.placeholder.type': 'Select type',
'system.interface.config.placeholder.description': 'Enter description',
'system.interface.config.drawer.title': 'Parameter parsing',
'system.interface.config.drawer.placeholder.import': 'Please import',
'system.interface.config.drawer.placeholder.parse': 'Please parse',
// System - User Management
'system.user.search.placeholder.orgName': 'Enter organization name',
'system.user.search.placeholder.accountOrName': 'Enter account or name',
'system.user.actions.refresh': 'Refresh list',
'system.user.actions.add': 'Add',
'system.user.actions.edit': 'Edit',
'system.user.actions.delete': 'Delete',
'system.user.actions.more': 'More',
'system.user.actions.grantRole': 'Grant role',
'system.user.actions.grantResource': 'Grant resource',
'system.user.actions.resetPassword': 'Reset password',
'system.user.status.enabled': 'Enabled',
'system.user.status.disabled': 'Disabled',
'system.user.table.avatar': 'Avatar',
'system.user.table.account': 'Account',
'system.user.table.realName': 'Name',
'system.user.table.phone': 'Phone',
'system.user.table.email': 'Email',
'system.user.table.orgName': 'Organization',
'system.user.table.positionName': 'Position',
'system.user.table.roles': 'Roles',
'system.user.table.status': 'Status',
'system.user.table.createTime': 'Create time',
'system.user.table.actions': 'Action',
'system.user.message.selectUsersToDelete': 'Please select users to delete',
'system.user.message.selectUsersToGrant': 'Please select users to grant',
'system.user.message.batchGrantRolePending': 'Batch grant role feature pending',
'system.user.message.batchGrantResourcePending': 'Batch grant resource feature pending',
'system.user.message.exportPending': 'Export feature pending',
'system.user.message.importPending': 'Import feature pending',
'system.user.message.resetPasswordSuccess': 'Password reset successfully',
'system.user.message.resetPasswordFailed': 'Password reset failed',
'system.user.message.selectUsersToResetPassword': 'Please select users to reset password',
'system.user.message.deleteSuccess': 'Delete successful',
'system.user.message.updateSuccess': 'Update successful',
'system.user.message.createSuccess': 'Create successful',
'system.user.message.assignRolesSuccess': 'Roles assigned successfully',
'system.user.modal.deleteConfirmTitle': 'Delete confirmation',
'system.user.modal.deleteConfirmContent': 'Are you sure to delete {count} selected users? This action cannot be undone!',
'system.user.modal.okDelete': 'Confirm delete',
'system.user.modal.cancel': 'Cancel',
'system.user.modal.resetPasswordTitle': 'Reset password confirmation',
'system.user.modal.resetPasswordContentSingle': 'Are you sure to reset password for user "{account}"?',
'system.user.modal.resetPasswordContentBatch': 'Are you sure to reset password for {count} selected users?',
// System - Role Management
'system.role.search.placeholder.orgName': 'Enter organization name',
'system.role.search.placeholder.roleNameOrCode': 'Enter role name or code',
'system.role.actions.refresh': 'Refresh list',
'system.role.actions.add': 'Add',
'system.role.actions.edit': 'Edit',
'system.role.actions.delete': 'Delete',
'system.role.status.enabled': 'Enabled',
'system.role.status.disabled': 'Disabled',
'system.role.category.business': 'Business role',
'system.role.category.system': 'System role',
'system.role.table.name': 'Role name',
'system.role.table.code': 'Role code',
'system.role.table.boundWarehouse': 'Bound Warehouse',
'system.role.table.category': 'Category',
'system.role.table.status': 'Status',
'system.role.table.sortCode': 'Sort',
'system.role.table.remark': 'Remark',
'system.role.table.createTime': 'Create time',
'system.role.table.actions': 'Action',
'system.role.message.selectRolesToDelete': 'Please select roles to delete',
'system.role.modal.deleteConfirmTitle': 'Delete confirmation',
'system.role.modal.deleteConfirmContent': 'Are you sure to delete {count} selected roles? This action cannot be undone!',
'system.role.modal.okDelete': 'Confirm delete',
'system.role.modal.cancel': 'Cancel',
// System - Menu Management
'system.menu.search.placeholder.menuNameOrCode': 'Enter menu name or code',
'system.menu.actions.add': 'Add',
'system.menu.actions.batchImport': 'Batch import',
'system.menu.actions.delete': 'Delete',
'system.menu.actions.edit': 'Edit',
'system.menu.actions.more': 'More',
'system.menu.actions.manageButton': 'Manage button',
'system.menu.status.enabled': 'Enabled',
'system.menu.status.disabled': 'Disabled',
'system.menu.table.title': 'Menu name',
'system.menu.table.code': 'Menu code',
'system.menu.table.menuType': 'Menu type',
'system.menu.table.path': 'Route path',
'system.menu.table.component': 'Component path',
'system.menu.table.icon': 'Icon',
'system.menu.table.sortCode': 'Sort',
'system.menu.table.status': 'Status',
'system.menu.table.createTime': 'Create time',
'system.menu.table.actions': 'Action',
'system.menu.message.selectMenusToDelete': 'Please select menus to delete',
'system.menu.message.selectModuleFirst': 'Please select a module first',
'system.menu.modal.deleteConfirmTitle': 'Delete confirmation',
'system.menu.modal.deleteConfirmContent': 'Are you sure to delete {count} selected menus? This action cannot be undone!',
'system.menu.modal.okDelete': 'Confirm delete',
'system.menu.modal.cancel': 'Cancel',
'system.menu.modal.batchImportTitle': 'Batch import menus',
'system.menu.modal.batchImportContent': 'Are you sure to import all menus? Existing menus will be skipped.',
'system.menu.modal.okImport': 'Confirm import',
// System - Organization Management
'system.organization.actions.add': 'Add Organization',
'system.organization.actions.addChild': 'Add Child Organization',
'system.organization.actions.edit': 'Edit',
'system.organization.actions.delete': 'Delete',
'system.organization.modal.add': 'Add Organization',
'system.organization.modal.edit': 'Edit Organization',
'system.organization.modal.deleteConfirm': 'Are you sure to delete?',
'system.organization.form.parentOrg': 'Parent Organization',
'system.organization.form.parentOrgPlaceholder': 'Select parent organization (leave empty for top level)',
'system.organization.form.name': 'Organization Name',
'system.organization.form.namePlaceholder': 'Enter organization name',
'system.organization.form.code': 'Organization Code',
'system.organization.form.codePlaceholder': 'Enter organization code',
'system.organization.form.type': 'Organization Type',
'system.organization.form.typePlaceholder': 'Select organization type',
'system.organization.form.type.company': 'Company',
'system.organization.form.type.department': 'Department',
'system.organization.form.type.group': 'Group',
'system.organization.form.type.position': 'Position',
'system.organization.form.leader': 'Leader',
'system.organization.form.leaderPlaceholder': 'Enter leader ID (optional)',
'system.organization.form.order': 'Order',
'system.organization.form.description': 'Description',
'system.organization.form.descriptionPlaceholder': 'Enter description',
'system.organization.form.isEnabled': 'Enabled',
'system.organization.table.name': 'Organization Name',
'system.organization.table.code': 'Organization Code',
'system.organization.table.type': 'Type',
'system.organization.table.order': 'Order',
'system.organization.table.status': 'Status',
'system.organization.table.actions': 'Actions',
'system.organization.status.enabled': 'Enabled',
'system.organization.status.disabled': 'Disabled',
'system.organization.type.unknown': 'Unknown',
'system.organization.rules.name.required': 'Please enter organization name',
'system.organization.rules.code.required': 'Please enter organization code',
'system.organization.rules.type.required': 'Please select organization type',
// System - User Management (Additional)
'system.user.actions.batchDelete': 'Batch Delete',
'system.user.actions.assignRoles': 'Assign Roles',
'system.user.modal.add': 'Add User',
'system.user.modal.edit': 'Edit User',
'system.user.modal.assignRoles': 'Assign Roles',
'system.user.form.name': 'User Name',
'system.user.form.namePlaceholder': 'Enter user name',
'system.user.form.account': 'Account',
'system.user.form.accountPlaceholder': 'Enter account',
'system.user.form.password': 'Password',
'system.user.form.passwordPlaceholder': 'Enter password',
'system.user.form.email': 'Email',
'system.user.form.emailPlaceholder': 'Enter email',
'system.user.form.organization': 'Organization',
'system.user.form.organizationPlaceholder': 'Select organization',
'system.user.form.avatar': 'Avatar',
'system.user.form.avatarPlaceholder': 'Enter avatar URL',
'system.user.form.roles': 'Roles',
'system.user.form.rolesPlaceholder': 'Select roles',
'system.user.search.organizationPlaceholder': 'Filter by organization',
'system.user.search.accountOrNamePlaceholder': 'Search username or account',
'system.user.rules.name.required': 'Please enter user name',
'system.user.rules.account.required': 'Please enter account',
'system.user.rules.password.required': 'Please enter password',
'system.user.rules.password.minLength': 'Password must be at least 6 characters',
'system.user.rules.email.format': 'Please enter a valid email format',
// System - Role Management (Additional)
'system.role.modal.add': 'Add Role',
'system.role.modal.edit': 'Edit Role',
'system.role.modal.assignPermissions': 'Assign Permissions',
'system.role.form.name': 'Role Name',
'system.role.form.namePlaceholder': 'Enter role name',
'system.role.form.code': 'Role Code',
'system.role.form.codePlaceholder': 'Enter role code',
'system.role.form.boundWarehouse': 'Bound Warehouse',
'system.role.form.boundWarehousePlaceholder': 'Please select warehouse address',
'system.role.rules.name.required': 'Please enter role name',
'system.role.rules.code.required': 'Please enter role code',
// System - Menu Management (Additional)
'system.menu.actions.addChild': 'Add Child Menu',
'system.menu.modal.add': 'Add Menu',
'system.menu.modal.edit': 'Edit Menu',
'system.menu.type.menu': 'Menu',
'system.menu.type.button': 'Button',
'system.menu.status.show': 'Show',
'system.menu.status.hide': 'Hide',
// System - Role Management (Permission Assignment)
'system.role.permission.expandAll': 'Expand All',
'system.role.permission.collapseAll': 'Collapse All',
'system.role.permission.checkAll': 'Check All',
'system.role.permission.uncheckAll': 'Uncheck All',
'system.role.permission.loading': 'Loading permission data...',
'system.role.permission.assignSuccess': 'Permission assigned successfully',
'system.role.message.deleteSuccess': 'Delete successful',
'system.role.message.updateSuccess': 'Update successful',
'system.role.message.createSuccess': 'Create successful',
// System - Organization Management
'system.org.search.placeholder.orgName': 'Enter organization name',
'system.org.search.placeholder.orgNameOrCode': 'Enter organization name or code',
'system.org.actions.refresh': 'Refresh list',
'system.org.actions.add': 'Add',
'system.org.actions.addOrg': 'Add organization',
'system.org.actions.edit': 'Edit',
'system.org.actions.delete': 'Delete',
'system.org.actions.copy': 'Copy',
'system.org.actions.select': 'Select',
'system.org.actions.cancel': 'Cancel',
'system.org.actions.confirm': 'Confirm',
'system.org.status.enabled': 'Enabled',
'system.org.status.disabled': 'Disabled',
'system.org.category.company': 'Company',
'system.org.category.dept': 'Department',
'system.org.common.yes': 'Yes',
'system.org.common.no': 'No',
'system.org.table.orgName': 'Organization name',
'system.org.table.orgFullName': 'Organization full name',
'system.org.table.category': 'Category',
'system.org.table.code': 'Code',
'system.org.table.status': 'Status',
'system.org.table.sortCode': 'Sort',
'system.org.table.createTime': 'Create time',
'system.org.table.actions': 'Action',
'system.org.form.parentOrg': 'Parent organization',
'system.org.form.orgName': 'Organization name',
'system.org.form.orgCode': 'Organization code',
'system.org.form.category': 'Organization category',
'system.org.form.status': 'Status',
'system.org.form.director': 'Director',
'system.org.form.sortCode': 'Sort',
'system.org.form.targetOrg': 'Target organization',
'system.org.form.containsChild': 'Include children',
'system.org.form.containsPosition': 'Include positions',
'system.org.form.placeholder.selectParentOrg': 'Select parent organization',
'system.org.form.placeholder.orgName': 'Enter organization name',
'system.org.form.placeholder.orgCode': 'Enter organization code, leave blank for random value',
'system.org.form.placeholder.selectCategory': 'Select category',
'system.org.form.placeholder.selectStatus': 'Select status',
'system.org.form.placeholder.selectTargetOrg': 'Select target organization',
'system.org.form.rules.orgNameRequired': 'Please enter organization name',
'system.org.form.rules.parentOrgRequired': 'Please select parent organization',
'system.org.form.rules.categoryRequired': 'Please select organization category',
'system.org.form.rules.statusRequired': 'Please select status',
'system.org.form.rules.targetOrgRequired': 'Please select target organization',
'system.org.form.rules.containsChildRequired': 'Please select whether to include children',
'system.org.form.rules.containsPositionRequired': 'Please select whether to include positions',
'system.org.modal.addOrgTitle': 'Add organization',
'system.org.modal.editOrgTitle': 'Edit organization',
'system.org.modal.copyOrgTitle': 'Copy organization',
'system.org.modal.deleteConfirmTitle': 'Delete confirmation',
'system.org.modal.deleteConfirmContentSingle': 'Are you sure to delete organization 【{name}】? This action cannot be undone!',
'system.org.modal.deleteConfirmContentBatch': 'Are you sure to delete {count} selected organizations? This action cannot be undone!',
'system.org.modal.okDelete': 'Confirm delete',
'system.org.modal.cancel': 'Cancel',
'system.org.message.selectOrgsToDelete': 'Please select organizations to delete',
'system.org.message.deleteSuccess': 'Delete successfully',
'system.org.message.deleteFailed': 'Delete failed',
'system.org.message.copySuccess': 'Copy successfully',
'system.org.message.copyFailed': 'Copy failed',
'system.org.message.editSuccess': 'Edit successfully',
'system.org.message.editFailed': 'Edit failed',
'system.org.message.addSuccess': 'Add successfully',
'system.org.message.addFailed': 'Add failed',
'system.org.message.getDetailFailed': 'Failed to get organization details',
// System - Position Management
'system.position.search.placeholder.orgName': 'Enter organization name',
'system.position.search.placeholder.positionNameOrCode': 'Enter position name or code',
'system.position.actions.refresh': 'Refresh list',
'system.position.actions.add': 'Add',
'system.position.actions.edit': 'Edit',
'system.position.actions.delete': 'Delete',
'system.position.table.name': 'Position name',
'system.position.table.code': 'Position code',
'system.position.table.sortCode': 'Sort',
'system.position.table.remark': 'Remark',
'system.position.table.createTime': 'Create time',
'system.position.table.actions': 'Action',
'system.position.message.selectPositionsToDelete': 'Please select positions to delete',
'system.position.modal.deleteConfirmTitle': 'Delete confirmation',
'system.position.modal.deleteConfirmContent': 'Are you sure to delete {count} selected positions? This action cannot be undone!',
'system.position.modal.okDelete': 'Confirm delete',
'system.position.modal.cancel': 'Cancel',
// System - Module Management
'system.module.search.placeholder.moduleNameOrCode': 'Enter module name or code',
'system.module.actions.add': 'Add',
'system.module.actions.edit': 'Edit',
'system.module.actions.delete': 'Delete',
'system.module.status.enabled': 'Enabled',
'system.module.status.disabled': 'Disabled',
'system.module.table.title': 'Module name',
'system.module.table.name': 'Module alias',
'system.module.table.code': 'Module code',
'system.module.table.icon': 'Icon',
'system.module.table.status': 'Status',
'system.module.table.sortCode': 'Sort',
'system.module.table.description': 'Description',
'system.module.table.createTime': 'Create time',
'system.module.table.actions': 'Action',
'system.module.message.selectModulesToDelete': 'Please select modules to delete',
'system.module.modal.deleteConfirmTitle': 'Delete confirmation',
'system.module.modal.deleteConfirmContent': 'Are you sure to delete {count} selected modules? This action cannot be undone!',
'system.module.modal.okDelete': 'Confirm delete',
'system.module.modal.cancel': 'Cancel',
// System - Dictionary Management
'system.dict.tabs.system': 'System',
'system.dict.tabs.business': 'Business',
'system.dict.search.placeholder.dictNameOrValue': 'Enter dictionary name or value',
'system.dict.search.placeholder': 'Enter dictionary code or name',
'system.dict.filter.dictType': 'Dictionary Type',
'system.dict.actions.add': 'Add',
'system.dict.actions.edit': 'Edit',
'system.dict.actions.delete': 'Delete',
'system.dict.actions.batchImport': 'Batch import',
'system.dict.batchImport.confirmTitle': 'Batch import dictionaries',
'system.dict.batchImport.confirmContent':
'Predefined dictionary rows from the OMS design spec will be created; existing rows with the same dictType and dictCode are skipped. Import order: dict types in alphabetical order; each type is fully written before the next. Rules: many rows may share one dictType; dictCode must be unique within that dictType (the same code may appear under another dictType, e.g. 0/1). Use yes_no for yes/no; use enable_status for disabled/enabled. Continue?',
'system.dict.batchImport.ok': 'Import',
'system.dict.batchImport.resultDetail': 'Done: created {created}, skipped {skipped}, failed {failed}.',
'system.dict.batchImport.failed': 'Batch import failed: {error}',
'system.dict.status.enabled': 'Enabled',
'system.dict.status.disabled': 'Disabled',
'system.dict.table.dictLabel': 'Dictionary name',
'system.dict.table.dictValue': 'Dictionary value',
'system.dict.table.status': 'Status',
'system.dict.table.sortCode': 'Sort',
'system.dict.table.createTime': 'Create time',
'system.dict.table.actions': 'Action',
'system.dict.table.dictType': 'Dictionary Type',
'system.dict.table.dictSort': 'Sort',
'system.dict.table.dictCode': 'Dictionary Code',
'system.dict.table.dictName': 'Dictionary Name',
'system.dict.form.dictType': 'Dictionary Type',
'system.dict.form.dictSort': 'Sort',
'system.dict.form.dictCode': 'Dictionary Code',
'system.dict.form.dictName': 'Dictionary Name',
'system.dict.placeholder.input': 'Please enter',
'system.dict.modal.addTitle': 'Add Dictionary',
'system.dict.modal.editTitle': 'Edit Dictionary',
'system.dict.modal.deleteConfirmContentSingle': 'Are you sure to delete dictionary [{dictName}]?',
'system.dict.rule.dictTypeRequired': 'Please enter dictionary type',
'system.dict.rule.dictSortRequired': 'Please enter dictionary sort',
'system.dict.rule.dictCodeRequired': 'Please enter dictionary code',
'system.dict.rule.dictNameRequired': 'Please enter dictionary name',
'system.dict.message.addSuccess': 'Added successfully',
'system.dict.message.editSuccess': 'Updated successfully',
'system.dict.message.deleteSuccess': 'Deleted successfully',
'system.dict.message.selectDictsToDelete': 'Please select dictionaries to delete',
'system.dict.message.loadDataFailed': 'Failed to load dictionary data: {error}',
'system.dict.message.unknownError': 'Unknown error',
'system.dict.modal.deleteConfirmTitle': 'Delete confirmation',
'system.dict.modal.deleteConfirmContent': 'Are you sure to delete {count} selected dictionaries? This action cannot be undone!',
'system.dict.modal.okDelete': 'Confirm delete',
'system.dict.modal.cancel': 'Cancel',
// System - Button Management
'system.button.actions.add': 'Add button',
'system.button.actions.batchDelete': 'Batch delete',
'system.button.actions.edit': 'Edit',
'system.button.actions.delete': 'Delete',
'system.button.form.title': 'Button name',
'system.button.form.code': 'Button code',
'system.button.form.parentMenu': 'Parent menu',
'system.button.form.sortCode': 'Sort',
'system.button.form.description': 'Remark',
'system.button.form.placeholder.title': 'Enter button name',
'system.button.form.placeholder.code': 'Enter button code',
'system.button.form.placeholder.parentMenu': 'Select parent menu',
'system.button.form.placeholder.sortCode': 'Enter sort',
'system.button.form.placeholder.description': 'Enter remark',
'system.button.form.rules.titleRequired': 'Please enter button name',
'system.button.form.rules.codeRequired': 'Please enter button code',
'system.button.table.title': 'Button name',
'system.button.table.code': 'Button code',
'system.button.table.parentId': 'Parent menu ID',
'system.button.table.sortCode': 'Sort',
'system.button.table.description': 'Remark',
'system.button.table.createTime': 'Create time',
'system.button.table.actions': 'Action',
'system.button.modal.addTitle': 'Add button',
'system.button.modal.editTitle': 'Edit button',
'system.button.modal.deleteConfirmTitle': 'Confirm delete',
'system.button.modal.deleteConfirmContentSingle': 'Are you sure to delete button "{title}"?',
'system.button.modal.deleteConfirmContentBatch': 'Are you sure to delete {count} selected buttons?',
'system.button.message.selectButtonsToDelete': 'Please select buttons to delete',
'system.button.message.deleteSuccess': 'Delete successfully',
'system.button.message.deleteFailed': 'Delete failed',
'system.button.message.editSuccess': 'Edit successfully',
'system.button.message.editFailed': 'Edit failed',
'system.button.message.addSuccess': 'Add successfully',
'system.button.message.addFailed': 'Add failed',
'system.button.message.getDetailFailed': 'Failed to get button details',
// Operation Module - Inbound Scan
'operation.inbound.pageTitle': 'Waybill Information',
'operation.inbound.broadcastSettings': 'Broadcast Settings',
'operation.inbound.form.scanNumber': 'Scan Number:',
'operation.inbound.form.receivedWeight': 'Received Weight:',
'operation.inbound.form.dimensions': 'Length × Width × Height:',
'operation.inbound.form.salesProduct': 'Sales Product:',
'operation.inbound.form.destinationCountry': 'Destination Country:',
'operation.inbound.form.remarks': 'Remarks:',
'operation.inbound.form.placeholder.scanOrInput': 'Scan or enter number',
'operation.inbound.form.placeholder.input': 'Please enter',
'operation.inbound.form.placeholder.length': 'Length/CM',
'operation.inbound.form.placeholder.width': 'Width/CM',
'operation.inbound.form.placeholder.height': 'Height/CM',
'operation.inbound.form.placeholder.select': 'Please select',
'operation.inbound.form.hint.supportedTypes': 'Supported: Waybill number, Service provider number, Channel transfer number, Platform order number',
'operation.inbound.actions.reset': 'Reset',
'operation.inbound.actions.inbound': 'Inbound',
'operation.inbound.recentOrders.title': 'Recent Orders',
'operation.inbound.recentOrders.subtitle': 'Maximum 50 recent orders displayed here',
'operation.inbound.recentOrders.empty': 'No data',
'operation.inbound.table.index': 'Index',
'operation.inbound.table.waybillNumber': 'Waybill Number',
'operation.inbound.table.weight': 'Weight',
'operation.inbound.table.dimensions': 'Dimensions',
'operation.inbound.table.product': 'Product',
'operation.inbound.table.country': 'Destination Country',
'operation.inbound.table.warehouse': 'Warehouse',
'operation.inbound.table.operateTime': 'Operate Time',
'operation.inbound.table.operator': 'Operator',
'operation.inbound.message.waybillNumberRequired': 'Please enter or scan waybill number',
'operation.inbound.message.inboundSuccess': 'Inbound successful',
// Operation Module - Outbound Scan
'operation.outbound.pageTitle': 'Waybill Information',
'operation.outbound.broadcastSettings': 'Broadcast Settings',
'operation.outbound.form.scanNumber': 'Scan Number:',
'operation.outbound.form.placeholder.scanOrInput': 'Scan or enter number',
'operation.outbound.form.hint.supportedTypes': 'Supported: Waybill number only',
'operation.outbound.actions.reset': 'Reset',
'operation.outbound.actions.outbound': 'Outbound',
'operation.outbound.recentOrders.subtitle': 'Maximum 50 recent orders displayed here',
'operation.outbound.recentOrders.empty': 'No data',
'operation.outbound.table.index': 'Index',
'operation.outbound.table.waybillNumber': 'Waybill Number',
'operation.outbound.table.warehouse': 'Warehouse',
'operation.outbound.table.operateTime': 'Operate Time',
'operation.outbound.table.operator': 'Operator',
'operation.outbound.message.waybillNumberRequired': 'Please enter or scan waybill number',
'operation.outbound.message.outboundSuccess': 'Outbound successful',
// Operation Module - Print Label
'operation.printLabel.pageTitle': 'Print Label',
'operation.printLabel.broadcastSettings': 'Broadcast Settings',
'operation.printLabel.form.scanNumber': 'Number:',
'operation.printLabel.form.placeholder.scanOrInput': 'Scan or enter number',
'operation.printLabel.form.placeholder.numberType': 'Select number type',
'operation.printLabel.form.placeholder.labelTemplate': 'Select label template',
'operation.printLabel.form.hint.supportedTypes': 'Supported: Waybill, Customer order, Tracking, Other',
'operation.printLabel.actions.reset': 'Reset',
'operation.printLabel.actions.print': 'Print',
'operation.printLabel.recentOrders.subtitle': 'Maximum 50 recent records displayed here',
'operation.printLabel.recentOrders.empty': 'No data',
'operation.printLabel.numberType.waybill': 'Waybill Number',
'operation.printLabel.numberType.customerOrder': 'Customer Order Number',
'operation.printLabel.numberType.tracking': 'Tracking Number',
'operation.printLabel.numberType.other': 'Other Number',
'operation.printLabel.labelTemplate.lastMile': 'Last Mile Label',
'operation.printLabel.labelTemplate.customer': 'Customer Label',
'operation.printLabel.labelTemplate.inbound': 'Inbound Label',
'operation.printLabel.labelTemplate.outbound': 'Outbound Label',
'operation.printLabel.labelTemplate.sku': 'SKU Label',
'operation.printLabel.table.index': 'Index',
'operation.printLabel.table.waybillNumber': 'Waybill Number',
'operation.printLabel.table.customerOrderNumber': 'Customer Order Number',
'operation.printLabel.table.trackingNumber': 'Tracking Number',
'operation.printLabel.table.otherNumber': 'Other Number',
'operation.printLabel.table.labelTemplate': 'Label Template',
'operation.printLabel.table.printSuccess': 'Print Success',
'operation.printLabel.table.warehouse': 'Warehouse',
'operation.printLabel.table.operateTime': 'Operate Time',
'operation.printLabel.table.operator': 'Operator',
'operation.printLabel.message.waybillNumberRequired': 'Please enter or scan number',
'operation.printLabel.message.printSuccess': 'Print successful',
'operation.printLabel.printSuccess.yes': 'Yes',
'operation.printLabel.printSuccess.no': 'No',
'operation.printLabel.pagination.invalidPage': 'Please enter a valid page number',
// System - Warehouse Address
'system.warehouseAddress.pageTitle': 'Warehouse Address',
'system.warehouseAddress.fields.warehouseName': 'Warehouse Name',
'system.warehouseAddress.fields.warehouseType': 'Warehouse Type',
'system.warehouseAddress.fields.recipient': 'Recipient',
'system.warehouseAddress.fields.contactPhone': 'Contact Phone',
'system.warehouseAddress.fields.shippingAddress': 'Shipping Address',
'system.warehouseAddress.fields.servicePhone': 'Service Phone',
'system.warehouseAddress.fields.serviceWechat': 'Service WeChat',
'system.warehouseAddress.actions.add': 'Add',
'system.warehouseAddress.actions.edit': 'Edit',
'system.warehouseAddress.actions.copy': 'Copy',
'system.warehouseAddress.actions.delete': 'Delete',
'system.warehouseAddress.actions.refresh': 'Refresh',
'system.warehouseAddress.uploadWechat': 'Upload Image',
'system.warehouseAddress.hint.wechatBase64': 'Images are stored as Base64 (data URL). Max 2MB recommended.',
'system.warehouseAddress.placeholder.input': 'Please enter',
'system.warehouseAddress.placeholder.select': 'Please select',
'system.warehouseAddress.modal.addTitle': 'Add Warehouse Address',
'system.warehouseAddress.modal.editTitle': 'Edit Warehouse Address',
'system.warehouseAddress.message.nameRequired': 'Please enter warehouse name',
'system.warehouseAddress.message.addSuccess': 'Added successfully',
'system.warehouseAddress.message.editSuccess': 'Updated successfully',
'system.warehouseAddress.message.deleteConfirm': 'Delete this warehouse?',
'system.warehouseAddress.message.deleteSuccess': 'Deleted successfully',
'system.warehouseAddress.message.deleteFailed': 'Delete failed',
'system.warehouseAddress.message.copySuccess': 'Copied to clipboard',
'system.warehouseAddress.message.copyFailed': 'Copy failed',
'system.warehouseAddress.message.imageTooLarge': 'Image must be 2MB or smaller',
'system.warehouseAddress.message.dictLoadFailed': 'Failed to load warehouse type dictionary',
'system.warehouseAddress.message.wechatQrSaveFailed': 'Failed to save WeChat QR image',
// System - Announcement
'system.announcement.search.placeholder': 'Enter keyword',
'system.announcement.actions.add': 'Add announcement',
'system.announcement.actions.batchDelete': 'Delete selected',
'system.announcement.actions.edit': 'Edit',
'system.announcement.actions.view': 'View',
'system.announcement.actions.delete': 'Delete',
'system.announcement.actions.readConfirm': 'Confirm Read',
'system.announcement.messageType.inform': 'Inform',
'system.announcement.messageType.message': 'Message',
'system.announcement.messageType.notice': 'Notice',
'system.announcement.receiverType.user': 'User',
'system.announcement.receiverType.customer': 'Customer',
'system.announcement.popup.yes': 'Yes',
'system.announcement.popup.no': 'No',
'system.announcement.filter.noticeType': 'Notice Type',
'system.announcement.filter.receiverType': 'Receiver Type',
'system.announcement.sendWay.now': 'Send now',
'system.announcement.sendWay.delay': 'Delay send',
'system.announcement.sendWay.schedule': 'Schedule send',
'system.announcement.status.ready': 'Ready',
'system.announcement.status.already': 'Sent',
'system.announcement.table.index': 'Index',
'system.announcement.table.subject': 'Subject',
'system.announcement.table.category': 'Message type',
'system.announcement.table.content': 'Content',
'system.announcement.table.noticeType': 'Notice Type',
'system.announcement.table.receiverType': 'Receiver Type',
'system.announcement.table.isPopup': 'Popup',
'system.announcement.table.receiverCount': 'Receivers',
'system.announcement.table.readCount': 'Read Count',
'system.announcement.table.sendWay': 'Send way',
'system.announcement.table.createTime': 'Create time',
'system.announcement.table.sendTime': 'Send time',
'system.announcement.table.status': 'Status',
'system.announcement.table.actions': 'Action',
'system.announcement.form.receiverType.appoint': 'Appoint User',
'system.announcement.form.receiverType.role': 'Appoint Role',
'system.announcement.form.noticeType': 'Notice Type',
'system.announcement.form.title': 'Title',
'system.announcement.form.content': 'Content',
'system.announcement.form.isPopup': 'Popup',
'system.announcement.form.receiverType': 'Receiver Type',
'system.announcement.form.receiverIds': 'Receivers',
'system.announcement.form.receiverIdsPlaceholder': 'Enter receiver IDs, separated by commas or new lines',
'system.announcement.placeholder.input': 'Please enter',
'system.announcement.placeholder.select': 'Please select',
'system.announcement.modal.addTitle': 'Add Announcement',
'system.announcement.modal.editTitle': 'Edit Announcement',
'system.announcement.rule.noticeTypeRequired': 'Please select notice type',
'system.announcement.rule.titleRequired': 'Please enter title',
'system.announcement.rule.contentRequired': 'Please enter content',
'system.announcement.rule.receiverTypeRequired': 'Please select receiver type',
'system.announcement.rule.receiverIdsRequired': 'Please enter receivers',
'system.announcement.message.addSuccess': 'Added successfully',
'system.announcement.message.editSuccess': 'Updated successfully',
'system.announcement.message.readSuccess': 'Marked as read',
'system.announcement.message.cannotEditSent': 'Sent messages cannot be modified',
'system.announcement.message.selectDataToDelete': 'Please select data to delete',
'system.announcement.message.deleteSuccess': 'Delete successfully',
'system.announcement.message.deleteFailed': 'Delete failed',
'system.announcement.modal.deleteConfirmTitle': 'Tips',
'system.announcement.modal.deleteConfirmContentSingle': 'Are you sure to delete message 【{subject}】?',
'system.announcement.modal.deleteConfirmContentBatch': 'Are you sure to delete {count} selected messages?',
// System - Message
'system.message.search.placeholder': 'Enter keyword',
'system.message.actions.allRead': 'Mark all as read',
'system.message.actions.markRead': 'Mark as read',
'system.message.actions.batchDelete': 'Delete selected',
'system.message.actions.allDelete': 'Delete all',
'system.message.actions.view': 'View',
'system.message.actions.delete': 'Delete',
'system.message.messageType.inform': 'Inform',
'system.message.messageType.message': 'Message',
'system.message.messageType.notice': 'Notice',
'system.message.readStatus.read': 'Read',
'system.message.readStatus.unread': 'Unread',
'system.message.table.index': 'Index',
'system.message.table.subject': 'Subject',
'system.message.table.content': 'Content',
'system.message.table.sendTime': 'Send time',
'system.message.table.read': 'Read status',
'system.message.table.actions': 'Action',
'system.message.message.selectMessagesToRead': 'Please select messages to mark as read',
'system.message.message.markReadSuccess': 'Mark as read successfully',
'system.message.message.markReadFailed': 'Mark as read failed',
'system.message.message.allReadSuccess': 'Mark all as read successfully',
'system.message.message.allReadFailed': 'Mark all as read failed',
'system.message.message.selectMessagesToDelete': 'Please select messages to delete',
'system.message.message.deleteSuccess': 'Delete successfully',
'system.message.message.deleteFailed': 'Delete failed',
'system.message.message.allDeleteSuccess': 'Delete all successfully',
'system.message.message.allDeleteFailed': 'Delete all failed',
// System - Log Record
'system.log.table.index': 'Index',
'system.log.table.requestId': 'Request ID',
'system.log.table.requestTime': 'Request time',
'system.log.table.appOrProvider': 'App/Provider',
'system.log.table.name': 'Name',
'system.log.table.interfaceName': 'Interface name',
'system.log.table.interfaceCode': 'Interface code',
'system.log.table.clientIP': 'Client IP',
'system.log.table.address': 'Request address',
'system.log.table.cost': 'Response time',
'system.log.table.isSuccess': 'Is success',
'system.log.table.actions': 'Action',
'system.log.placeholder.requestId': 'Request ID',
'system.log.placeholder.requestTime': 'Request time',
'system.log.placeholder.appOrProvider': 'App/Provider',
'system.log.placeholder.name': 'Name',
'system.log.placeholder.interfaceName': 'Interface name',
'system.log.placeholder.cost': 'Response time',
'system.log.placeholder.isSuccess': 'Is success',
'system.log.placeholder.clientIP': 'Request IP',
'system.log.placeholder.address': 'Request address',
'system.log.placeholder.appName': 'App name',
'system.log.placeholder.providerName': 'Provider name',
'system.log.placeholder.appOrProviderName': 'App/Provider name',
'system.log.options.app': 'App',
'system.log.options.provider': 'Provider',
'system.log.pagination.total': 'Total {count} records',
'system.log.pagination.prevPage': 'Previous',
'system.log.pagination.nextPage': 'Next',
'system.log.pagination.itemsPerPage': 'items/page',
'system.log.pagination.goTo': 'Go to',
'system.log.pagination.page': 'page',
'system.log.modal.viewDetail': 'View details',
'system.log.modal.tabs.requestBody': 'Request body',
'system.log.modal.tabs.requestHeaders': 'cURL',
'system.log.modal.tabs.response': 'Response',
'system.log.modal.tabs.exception': 'Exception',
'system.log.modal.tabs.queueResult': 'Queue result',
'system.log.actions.copy': 'Copy',
'system.log.actions.copyCurrentTab': 'Copy current tab content',
'system.log.message.loadFailed': 'Failed to load logs',
'system.log.message.invalidPageNumber': 'Please enter a valid page number',
'system.log.message.loadDetailFailed': 'Failed to load log details',
'system.log.message.copySuccess': 'Copy successfully',
'system.log.message.copyEmpty': 'Content is empty, cannot copy',
'system.log.message.copyFailed': 'Copy failed',
// User - Recharge
'user.recharge.deposit.panel.subtitle': 'Fund Recharge',
'user.recharge.deposit.panel.title': 'Complete Recharge in 3 Steps',
'user.recharge.deposit.panel.desc': 'Select Amount · Upload Voucher · Wait for Review',
'user.recharge.deposit.steps.selectAmount.title': 'Select Amount',
'user.recharge.deposit.steps.selectAmount.desc': 'Select amount and confirm payment method',
'user.recharge.deposit.steps.uploadVoucher.title': 'Upload Voucher',
'user.recharge.deposit.steps.uploadVoucher.desc': 'Upload transfer screenshot',
'user.recharge.deposit.steps.review.title': 'Review',
'user.recharge.deposit.steps.review.desc': 'Wait for finance confirmation',
'user.recharge.deposit.steps.tip.selectAmount': 'Select amount and confirm',
'user.recharge.deposit.steps.tip.uploadVoucher': 'Upload recharge voucher',
'user.recharge.deposit.steps.tip.review': 'Review processing',
'user.recharge.deposit.steps.tip.complete': 'Complete',
'user.recharge.deposit.tips.title': 'Tips',
'user.recharge.deposit.tips.item1': 'Recharge and balance 1:1 arrival',
'user.recharge.deposit.tips.item2': 'Upload clear and complete payment screenshot',
'user.recharge.deposit.tips.item3': 'SMS/In-site message reminder after funds arrive',
'user.recharge.deposit.form.currentAmount': 'Current recharge amount',
'user.recharge.deposit.form.stepChip': 'Step {step} · {tip}',
'user.recharge.deposit.form.selectAmount': 'Select Amount',
'user.recharge.deposit.form.custom': 'Custom',
'user.recharge.deposit.form.inputAmount': 'Enter Amount',
'user.recharge.deposit.form.paymentMethod': 'Payment Method',
'user.recharge.deposit.form.qrTip': 'Click QR code to zoom in and view details',
'user.recharge.deposit.form.uploadVoucher': 'Upload Voucher',
'user.recharge.deposit.form.uploadVoucherDesc': 'Please upload a clear payment screenshot for quick finance confirmation',
'user.recharge.deposit.form.uploading': 'Uploading',
'user.recharge.deposit.form.uploadScreenshot': 'Upload Screenshot',
'user.recharge.deposit.payment.alipay': 'Alipay',
'user.recharge.deposit.payment.alipayDesc': 'Support scan code and transfer',
'user.recharge.deposit.payment.wechat': 'WeChat Pay',
'user.recharge.deposit.payment.wechatDesc': 'Recommended for fast arrival',
'user.recharge.deposit.result.title': 'Submitted Successfully',
'user.recharge.deposit.result.subtitle': 'Under review, please wait patiently',
'user.recharge.deposit.result.actions.rechargeAgain': 'Recharge Again',
'user.recharge.deposit.result.actions.viewBill': 'View Bill',
'user.recharge.deposit.actions.prevStep': 'Previous',
'user.recharge.deposit.actions.nextStep': 'Next',
'user.recharge.deposit.actions.submitReview': 'Submit for Review',
'user.recharge.deposit.message.selectAmount': 'Please select recharge amount',
'user.recharge.deposit.message.uploadSuccess': 'Upload successfully',
'user.recharge.deposit.message.uploadFailed': 'Upload failed',
'user.recharge.deposit.message.uploadVoucherFirst': 'Please upload recharge voucher first',
'user.recharge.deposit.message.submitFailed': 'Submit failed',
// User - Recharge Record
'user.recharge.record.search.serialNo': 'Serial No',
'user.recharge.record.search.serialNoPlaceholder': 'Search serial no',
'user.recharge.record.search.status': 'Recharge Status',
'user.recharge.record.search.statusPlaceholder': 'Please select',
'user.recharge.record.search.statusAll': 'All',
'user.recharge.record.search.statusPending': 'Pending',
'user.recharge.record.search.statusSuccess': 'Success',
'user.recharge.record.search.statusFailed': 'Failed',
'user.recharge.record.search.actions.search': 'Search',
'user.recharge.record.search.actions.reset': 'Reset',
'user.recharge.record.search.dateRange': 'Recharge time',
'user.recharge.record.search.customerId': 'Customer ID',
'user.recharge.record.search.customerIdPlaceholder': 'Optional',
'user.recharge.record.modal.rejectTitle': 'Reject recharge',
'user.recharge.record.modal.rejectRemark': 'Reason',
'user.recharge.record.modal.rejectRemarkPlaceholder': 'Optional reason',
'user.recharge.record.message.loadError': 'Failed to load',
'user.recharge.record.message.approveError': 'Approve failed',
'user.recharge.record.message.rejectError': 'Reject failed',
'user.recharge.record.table.serialNo': 'Serial No',
'user.recharge.record.table.payTime': 'Recharge Time',
'user.recharge.record.table.payType': 'Payment Method',
'user.recharge.record.table.payAmount': 'Recharge Amount',
'user.recharge.record.table.payImage': 'Recharge Screenshot',
'user.recharge.record.table.payStatus': 'Recharge Status',
'user.recharge.record.table.remarks': 'Remarks',
'user.recharge.record.payment.alipay': 'Alipay',
'user.recharge.record.payment.wechat': 'WeChat',
'user.recharge.record.actions.approve': 'Approve',
'user.recharge.record.actions.reject': 'Reject',
'user.recharge.record.message.approveSuccess': 'Approved',
'user.recharge.record.message.rejectSuccess': 'Rejected',
'user.recharge.record.pagination.total': '{count} total',
'user.recharge.record.pagination.prev': 'Prev',
'user.recharge.record.pagination.next': 'Next',
'user.recharge.record.pagination.perPage': '/page',
'user.recharge.record.pagination.goTo': 'Go to',
'user.recharge.record.pagination.page': 'page',
'user.recharge.record.pagination.invalidPage': 'Please enter a valid page number',
// Personal Center
'profile.defaultName': 'User',
'profile.contactInfo': 'Contact Info',
'profile.quickActions': 'Quick Actions',
'profile.myOrders': 'My Orders',
'profile.accountDetails': 'Account Details',
'profile.edit': 'Edit Profile',
'profile.resetPassword': 'Reset Password',
'profile.editProfile': 'Edit Profile',
'profile.changePassword': 'Change Password',
'profile.oldPassword': 'Current Password',
'profile.newPassword': 'New Password',
'profile.confirmPassword': 'Confirm New Password',
'profile.passwordMismatch': 'Passwords do not match',
'profile.changePasswordSuccess': 'Password changed successfully, please login again',
// Customer Management
'user.customer.searchPlaceholder': 'Customer code/name/phone',
'user.customer.actions.add': 'Add',
'user.customer.actions.search': 'Search',
'user.customer.actions.edit': 'Edit',
'user.customer.actions.delete': 'Delete',
'user.customer.actions.resetPassword': 'Reset Password',
'user.customer.actions.omsLogin': 'OMS Login',
'user.customer.fields.customerCode': 'Customer Code',
'user.customer.fields.customerName': 'Customer Name',
'user.customer.fields.wechatAvatar': 'WeChat Avatar',
'user.customer.fields.wechatAvatarUrl': 'WeChat Avatar URL',
'user.customer.fields.wechatNickname': 'WeChat Nickname',
'user.customer.fields.email': 'Email',
'user.customer.fields.phone': 'Phone',
'user.customer.fields.password': 'Password',
'user.customer.fields.accountBalance': 'Account Balance',
'user.customer.fields.totalQuota': 'Total Quota',
'user.customer.fields.usedQuota': 'Used Quota',
'user.customer.fields.status': 'Status',
'user.customer.fields.customerGroup': 'Customer Group',
'user.customer.fields.remark': 'Remark',
'user.customer.fields.createTime': 'Create Time',
'user.customer.fields.createdAt': 'Created At',
'user.customer.fields.createBy': 'Create By',
'user.customer.fields.createdBy': 'Created By',
'user.customer.fields.updateTime': 'Update Time',
'user.customer.fields.updateBy': 'Update By',
'user.customer.fields.salesPerson': 'Sales Person',
'user.customer.fields.customerService': 'Customer Service',
'user.customer.fields.role': 'Role',
'user.customer.role.customer': 'Customer',
'user.customer.role.admin': 'Admin',
'user.customer.role.operator': 'Operator',
'user.customer.role.viewer': 'Viewer',
'user.customer.fields.lastOnlineTime': 'Last Online Time',
'user.customer.fields.lastOnlineIp': 'Last Online IP',
'user.customer.table.actions': 'Actions',
'user.customer.status.enabled': 'Enabled',
'user.customer.status.disabled': 'Disabled',
'user.customer.status.frozen': 'Frozen',
'user.customer.group.normal': 'Normal',
'user.customer.group.vip1': 'VIP1',
'user.customer.group.vip2': 'VIP2',
'user.customer.group.vip3': 'VIP3',
'user.customer.group.vip4': 'VIP4',
'user.customer.group.vip5': 'VIP5',
'user.customer.placeholder.input': 'Please enter',
'user.customer.placeholder.select': 'Please select',
'user.customer.modal.addTitle': 'Add Customer',
'user.customer.modal.editTitle': 'Edit Customer',
'user.customer.modal.deleteConfirm': 'Are you sure to delete this customer?',
'user.customer.rules.customerNameRequired': 'Please enter customer name',
'user.customer.rules.phoneRequired': 'Please enter phone number',
'user.customer.rules.passwordRequired': 'Please enter password',
'user.customer.message.loadFailed': 'Load failed',
'user.customer.message.createSuccess': 'Created successfully',
'user.customer.message.updateSuccess': 'Updated successfully',
'user.customer.message.deleteSuccess': 'Deleted successfully',
'user.customer.message.deleteFailed': 'Delete failed',
'user.customer.message.saveFailed': 'Save failed',
'user.customer.message.resetPasswordSuccess': 'Password reset successfully',
'user.customer.message.resetPasswordFailed': 'Password reset failed',
'user.customer.pagination.total': 'Total {count} records',
'user.customer.pagination.prev': 'Prev',
'user.customer.pagination.next': 'Next',
'user.customer.pagination.perPage': '/page',
'user.customer.pagination.goTo': 'Go to',
'user.customer.pagination.page': 'Page',
'user.customer.pagination.invalidPage': 'Please enter a valid page number',
// System - Config
'system.config.tabs.sysConfig': 'System Config',
'system.config.tabs.safety': 'Safety Config',
'system.config.message.loadFailed': 'Failed to load system config',
// System Config - Base Config
'system.config.sysBase.form.sysName': 'System Name',
'system.config.sysBase.form.sysVersion': 'System Version',
'system.config.sysBase.form.copyright': 'Copyright',
'system.config.sysBase.form.copyrightUrl': 'Copyright URL',
'system.config.sysBase.form.webStatus': 'Website Access (Business Only)',
'system.config.sysBase.form.tenantOptions': 'Multi-tenant Config',
'system.config.sysBase.form.webClosePrompt': 'Website Close Prompt',
'system.config.sysBase.form.footerLinks': 'Footer Links',
'system.config.sysBase.form.logo': 'System Logo',
'system.config.sysBase.form.linkName': 'Link Name',
'system.config.sysBase.form.linkUrl': 'Link URL',
'system.config.sysBase.form.sortCode': 'Sort',
'system.config.sysBase.form.placeholder.sysName': 'Please enter system name',
'system.config.sysBase.form.placeholder.sysVersion': 'Please enter system version',
'system.config.sysBase.form.placeholder.copyright': 'Please enter copyright',
'system.config.sysBase.form.placeholder.copyrightUrl': 'Please enter copyright URL',
'system.config.sysBase.form.placeholder.webClosePrompt': 'Please enter website close prompt',
'system.config.sysBase.form.placeholder.linkName': 'Please enter link name',
'system.config.sysBase.form.placeholder.linkUrl': 'Please enter link URL',
'system.config.sysBase.form.placeholder.sortCode': 'Please enter sort',
'system.config.sysBase.form.logoPreviewTip': 'Click image to preview, click delete to remove',
'system.config.sysBase.form.rules.sysNameRequired': 'Please enter system name',
'system.config.sysBase.form.rules.sysVersionRequired': 'Please enter system version',
'system.config.sysBase.form.rules.copyrightRequired': 'Please enter system copyright',
'system.config.sysBase.form.rules.copyrightUrlRequired': 'Please enter system copyright URL',
'system.config.sysBase.form.rules.linkNameRequired': 'Please enter link name',
'system.config.sysBase.form.rules.linkUrlRequired': 'Please enter link URL',
'system.config.sysBase.form.rules.sortCodeRequired': 'Please enter sort',
'system.config.sysBase.options.enable': 'Enable',
'system.config.sysBase.options.disable': 'Disable',
'system.config.sysBase.options.close': 'Close',
'system.config.sysBase.options.open': 'Open',
'system.config.sysBase.actions.add': 'Add',
'system.config.sysBase.actions.save': 'Save',
'system.config.sysBase.actions.reset': 'Reset',
'system.config.sysBase.actions.uploadLogo': 'Upload Logo',
'system.config.sysBase.modal.linkTitle': 'Link Information',
'system.config.sysBase.message.saveSuccess': 'Save successful',
'system.config.sysBase.message.saveFailed': 'Save failed',
'system.config.sysBase.message.fileNotExists': 'File does not exist',
'system.config.sysBase.message.onlyImageAllowed': 'Only image files are allowed',
'system.config.sysBase.message.imageSizeExceeded': 'Image size cannot exceed 5MB',
'system.config.sysBase.message.uploadSuccess': 'Logo upload successful',
'system.config.sysBase.message.uploadFailedNoFileId': 'Upload failed: File ID not obtained',
'system.config.sysBase.message.uploadFailed': 'Logo upload failed',
'system.config.sysBase.message.logoRemoved': 'Logo removed',
// System Config - Safety Config
'system.config.safety.tabs.login': 'Login Policy',
'system.config.safety.tabs.password': 'Password Policy',
'system.config.safety.common.yes': 'Yes',
'system.config.safety.common.no': 'No',
'system.config.safety.common.save': 'Save',
'system.config.safety.common.reset': 'Reset',
'system.config.safety.common.saveSuccess': 'Save successful',
'system.config.safety.common.saveFailed': 'Save failed',
'system.config.safety.login.form.singleOpen': 'Single User Login',
'system.config.safety.login.form.captchaOpen': 'Login Captcha',
'system.config.safety.login.form.errorCount': 'Allowed Login Error Count',
'system.config.safety.login.form.resetTime': 'Login Error Reset Time (minutes)',
'system.config.safety.login.form.lockTime': 'Account Lock Duration (minutes)',
'system.config.safety.login.form.captchaType': 'Login Captcha Type',
'system.config.safety.login.form.placeholder.errorCount': 'Please enter allowed login error count',
'system.config.safety.login.form.placeholder.resetTime': 'Please enter login error reset time',
'system.config.safety.login.form.placeholder.lockTime': 'Please enter account lock duration',
'system.config.safety.login.form.placeholder.captchaType': 'Please select captcha type',
'system.config.safety.login.form.rules.errorCountRequired': 'Please enter allowed login error count',
'system.config.safety.login.form.rules.resetTimeRequired': 'Please enter login error reset time',
'system.config.safety.login.form.rules.lockTimeRequired': 'Please enter account lock duration',
'system.config.safety.login.form.rules.captchaTypeRequired': 'Please select login captcha type',
'system.config.safety.login.form.rules.singleOpenRequired': 'Please select single user login',
'system.config.safety.login.form.rules.captchaOpenRequired': 'Please select login captcha',
'system.config.safety.login.options.arithmetic': 'Arithmetic Captcha',
'system.config.safety.login.options.chinese': 'Chinese Captcha',
'system.config.safety.login.options.slider': 'Slider Captcha',
'system.config.safety.password.form.defaultPassword': 'System Default Password',
'system.config.safety.password.form.minLength': 'Password Min Length',
'system.config.safety.password.form.remind': 'Password Remind Update',
'system.config.safety.password.form.remindDay': 'Password Remind Update Time (days)',
'system.config.safety.password.form.updateDefault': 'Update Initial Password Remind',
'system.config.safety.password.form.containNum': 'Contain Number',
'system.config.safety.password.form.containLower': 'Contain Lowercase',
'system.config.safety.password.form.containUpper': 'Contain Uppercase',
'system.config.safety.password.form.containCharacter': 'Contain Special Character',
'system.config.safety.password.form.placeholder.defaultPassword': 'Please enter system default password',
'system.config.safety.password.form.placeholder.minLength': 'Please enter password min length',
'system.config.safety.password.form.placeholder.remindDay': 'Please enter password remind update time',
'system.config.safety.password.form.rules.defaultPasswordRequired': 'Please enter system default password',
'system.config.safety.password.form.rules.remindRequired': 'Please select password remind update',
'system.config.safety.password.form.rules.remindDayRequired': 'Please enter password remind update time',
'system.config.safety.password.form.rules.updateDefaultRequired': 'Please select update initial password remind',
'system.config.safety.password.form.rules.minLengthRequired': 'Please enter password min length',
'system.config.safety.password.form.rules.containNumRequired': 'Please select contain number',
'system.config.safety.password.form.rules.containLowerRequired': 'Please select contain lowercase',
'system.config.safety.password.form.rules.containUpperRequired': 'Please select contain uppercase',
'system.config.safety.password.form.rules.containCharacterRequired': 'Please select contain special character',
// System - Audit Log - Operation Log
'system.audit.oplog.search.placeholder': 'Enter keyword',
'system.audit.oplog.type.operate': 'Operation Log',
'system.audit.oplog.type.exception': 'Exception Log',
'system.audit.oplog.table.name': 'Name',
'system.audit.oplog.table.opIp': 'IP Address',
'system.audit.oplog.table.opAddress': 'Address',
'system.audit.oplog.table.className': 'Class Name',
'system.audit.oplog.table.methodName': 'Method Name',
'system.audit.oplog.table.opUser': 'User',
'system.audit.oplog.table.opAccount': 'Account',
'system.audit.oplog.table.opTime': 'Operation Time',
'system.audit.oplog.table.operation': 'Action',
'system.audit.oplog.actions.clear': 'Clear',
'system.audit.oplog.actions.clearCurrent': 'Clear current log',
'system.audit.oplog.actions.view': 'View',
'system.audit.oplog.modal.clearConfirmTitle': 'Confirm Clear',
'system.audit.oplog.modal.clearConfirmContent': 'Are you sure to {msg}?',
'system.audit.oplog.message.loadFailed': 'Failed to load operation log',
'system.audit.oplog.message.clearSuccess': 'Clear successfully',
'system.audit.oplog.message.clearFailed': 'Clear failed',
// System - Audit Log - Visit Log
'system.audit.vislog.search.placeholder': 'Enter keyword',
'system.audit.vislog.type.login': 'Login Log',
'system.audit.vislog.type.logout': 'Logout Log',
'system.audit.vislog.table.name': 'Name',
'system.audit.vislog.table.opIp': 'IP Address',
'system.audit.vislog.table.opAddress': 'Address',
'system.audit.vislog.table.opBrowser': 'Browser',
'system.audit.vislog.table.opOs': 'Operating System',
'system.audit.vislog.table.opUser': 'User',
'system.audit.vislog.table.opAccount': 'Account',
'system.audit.vislog.table.opTime': 'Operation Time',
'system.audit.vislog.table.operation': 'Action',
'system.audit.vislog.actions.clear': 'Clear',
'system.audit.vislog.actions.clearCurrent': 'Clear current log',
'system.audit.vislog.actions.view': 'View',
'system.audit.vislog.modal.clearConfirmTitle': 'Confirm Clear',
'system.audit.vislog.modal.clearConfirmContent': 'Are you sure to {msg}?',
'system.audit.vislog.message.loadFailed': 'Failed to load visit log',
'system.audit.vislog.message.clearSuccess': 'Clear successfully',
'system.audit.vislog.message.clearFailed': 'Clear failed',
// System - Upstream interface parameter maintenance (new-port.vue)
'system.interface.section.basicInfo': 'Basic Info',
'system.interface.section.requestParams': 'Request Parameters',
'system.interface.section.secondRequestParams': 'Secondary Request Parameters',
'system.interface.section.responseParams': 'Response Parameters',
'system.interface.actions.addParam': 'Add Parameter',
'system.interface.actions.paramParse': 'Parse Parameters',
'system.interface.actions.add': 'Add',
'system.interface.actions.save': 'Save',
'system.interface.parse.needImportFirst': 'Import failed, please provide content in the required format first',
'system.interface.parse.needImportOrParseFirst': 'Import failed, please provide content in the required format or parse it first',
'system.interface.parse.success': 'Parsed successfully',
'system.interface.import.success': 'Imported successfully',
'system.interface.import.fail': 'Import failed',
// Channel - Label Design
'channel.labelDesign.pageTitle': 'Label Template Config',
'channel.labelDesign.configTitle': 'Template Config',
'channel.labelDesign.sizeLabel': 'Label Size (W×H)',
'channel.labelDesign.widthPlaceholder': 'Width',
'channel.labelDesign.heightPlaceholder': 'Height',
'channel.labelDesign.titleLabel': 'Label Title',
'channel.labelDesign.titlePlaceholder': 'Enter label title',
'channel.labelDesign.contentLabel': 'Label Content',
'channel.labelDesign.contentPlaceholder': 'Enter label content',
'channel.labelDesign.apply': 'Apply',
'channel.labelDesign.reset': 'Reset',
'channel.labelDesign.previewTitle': 'Preview (drag to move, resize from corner)',
'channel.labelDesign.sizeMinError': 'Min size is 50px',
'channel.labelDesign.noTitle': 'No title',
'channel.labelDesign.noContent': 'No content',
'channel.labelDesign.applySuccess': 'Config applied',
'channel.labelDesign.resetSuccess': 'Config reset',
// Channel - Sales Products
'channel.salesProducts.search.placeholder': 'Enter product name',
'channel.salesProducts.search.refresh': 'Refresh list',
'channel.salesProducts.search.addProduct': 'Add product',
'channel.salesProducts.tabs.config': 'Product config',
'channel.salesProducts.tabs.price': 'Product pricing',
'channel.salesProducts.tabs.rules': 'Shipping rules',
'channel.salesProducts.tabs.records': 'Publish records',
'channel.salesProducts.actions.save': 'Save',
'channel.salesProducts.actions.add': 'Add',
'channel.salesProducts.actions.edit': 'Edit',
'channel.salesProducts.actions.delete': 'Delete',
'channel.salesProducts.actions.publish': 'Publish',
'channel.salesProducts.actions.rollback': 'Rollback to this version',
'channel.salesProducts.price.effectiveVersion': 'Effective version: {version}',
'channel.salesProducts.rules.schemeTitle': 'Shipping scheme',
'channel.salesProducts.rules.scheme.costLowest': 'Lowest cost',
'channel.salesProducts.rules.scheme.timeFastest': 'Fastest time',
'channel.salesProducts.rules.scheme.overallBest': 'Best overall',
'channel.salesProducts.rules.scheme.explanation':
'(Use a scoring mechanism, the lowest score is considered optimal)',
'channel.salesProducts.table.providers.serialNo': 'No.',
'channel.salesProducts.table.providers.providerName': 'Provider name',
'channel.salesProducts.table.providers.serviceChannel': 'Service channel',
'channel.salesProducts.table.providers.weight': 'Weight',
'channel.salesProducts.table.providers.customers': 'Customers',
'channel.salesProducts.table.providers.actions': 'Action',
'channel.salesProducts.table.providers.placeholder.providerName': 'Enter provider name',
'channel.salesProducts.table.providers.placeholder.serviceChannel': 'Enter service channel',
'channel.salesProducts.table.price.status': 'Status',
'channel.salesProducts.publish.tabs.price': 'Price',
'channel.salesProducts.publish.tabs.rules': 'Rules',
'channel.salesProducts.publish.versionRemark': 'Version note',
'channel.salesProducts.publish.noRemark': 'No notes',
'channel.salesProducts.modal.publishDateTitle': 'Select publish date',
'channel.salesProducts.modal.publishDate.placeholder': 'Please select date',
'channel.salesProducts.modal.actions.cancel': 'Cancel',
'channel.salesProducts.modal.actions.ok': 'OK',
'channel.salesProducts.form.productCode': 'Product code',
'channel.salesProducts.form.productName': 'Product name',
'channel.salesProducts.form.group': 'Group',
'channel.salesProducts.form.efficiency': 'Transit time',
'channel.salesProducts.form.customerWaybill': 'Customer waybill',
'channel.salesProducts.form.blacklistArea': 'Blacklist area',
'channel.salesProducts.form.remoteAreaDivision': 'Remote area division',
'channel.salesProducts.form.weightCalculationRule': 'Weight rule',
'channel.salesProducts.form.weightRounding': 'Weight rounding',
'channel.salesProducts.form.productDescription': 'Product description',
'channel.salesProducts.form.preStorageScript': 'Pre-storage script',
'channel.salesProducts.form.placeholder.input': 'Please enter',
'channel.salesProducts.form.placeholder.min': 'Min',
'channel.salesProducts.form.placeholder.max': 'Max',
'channel.salesProducts.form.placeholder.select': 'Please select',
'channel.salesProducts.drawer.tabs.basic': 'Basic info',
'channel.salesProducts.drawer.tabs.priceList': 'Price table',
'channel.salesProducts.drawer.form.costItem': 'Cost item',
'channel.salesProducts.drawer.form.costUnit': 'Cost unit',
'channel.salesProducts.drawer.form.currency': 'Currency',
'channel.salesProducts.drawer.form.chargingTime': 'Charging time',
'channel.salesProducts.drawer.form.chargingCondition': 'Charging condition',
'channel.salesProducts.drawer.section.billingFactors': 'Billing factors',
'channel.salesProducts.drawer.table.billingFactors.serialNo': 'No.',
'channel.salesProducts.drawer.table.billingFactors.factor': 'Factor',
'channel.salesProducts.drawer.table.billingFactors.factorValues': 'Factor values',
'channel.salesProducts.drawer.table.billingFactors.actions': 'Action',
'channel.salesProducts.drawer.section.priceListTitle': 'Freight',
'channel.salesProducts.drawer.table.priceList.division': 'Division',
'channel.salesProducts.drawer.table.priceList.cargoType': 'Cargo type',
'channel.salesProducts.drawer.table.priceList.billingWeight': 'Billing weight/kg',
'channel.salesProducts.drawer.table.priceList.calculationFormula': 'Formula',
'channel.salesProducts.drawer.table.priceList.calculatedValue': 'Value',
'channel.salesProducts.drawer.table.priceList.customerGroup1': 'Customer group 1',
'channel.salesProducts.drawer.table.priceList.customerGroup2': 'Customer group 2',
'channel.salesProducts.drawer.footer.cancel': 'Cancel',
'channel.salesProducts.drawer.footer.generatePriceList': 'Generate price table',
'channel.salesProducts.drawer.footer.save': 'Save',
// Channel - Service Channels
'channel.serviceChannels.search.placeholder': 'Enter channel name',
'channel.serviceChannels.search.refresh': 'Refresh list',
'channel.serviceChannels.search.addProvider': 'Add provider',
'channel.serviceChannels.search.addChannel': 'Add channel',
'channel.serviceChannels.leftMenu.editProvider': 'Edit provider',
'channel.serviceChannels.leftMenu.deleteProvider': 'Delete provider',
'channel.serviceChannels.leftMenu.addChannelHere': 'Add channel',
'channel.serviceChannels.leftMenu.editChannel': 'Edit channel',
'channel.serviceChannels.tabs.config': 'Channel config',
'channel.serviceChannels.tabs.price': 'Channel pricing',
'channel.serviceChannels.tabs.record': 'Publish records',
'channel.serviceChannels.actions.save': 'Save',
'channel.serviceChannels.actions.add': 'Add',
'channel.serviceChannels.actions.edit': 'Edit',
'channel.serviceChannels.actions.delete': 'Delete',
'channel.serviceChannels.form.channelCode': 'Channel code',
'channel.serviceChannels.form.channelName': 'Channel name',
'channel.serviceChannels.form.timeLimit': 'Transit time',
'channel.serviceChannels.form.forecastConfig': 'Forecast config',
'channel.serviceChannels.form.forecastType': 'Forecast number type',
'channel.serviceChannels.form.forecastType.standard': 'Standard forecast',
'channel.serviceChannels.form.forecastType.custom': 'Custom forecast',
'channel.serviceChannels.form.forecastCode': 'Forecast channel code',
'channel.serviceChannels.form.description': 'Channel description',
'channel.serviceChannels.form.preScript': 'Pre-forecast script',
'channel.serviceChannels.form.placeholder.input': 'Please enter',
'channel.serviceChannels.form.placeholder.min': 'Min',
'channel.serviceChannels.form.placeholder.max': 'Max',
'channel.serviceChannels.form.placeholder.selectForecastType': 'Please select forecast number type',
'channel.serviceChannels.form.placeholder.forecastCode': 'Enter forecast channel code',
'channel.serviceChannels.form.placeholder.description': 'Enter channel description',
'channel.serviceChannels.form.placeholder.preScript': 'Enter pre-forecast script',
'channel.serviceChannels.price.effectiveVersion': 'Effective version: {version}',
'channel.serviceChannels.price.table.serialNo': 'No.',
'channel.serviceChannels.price.table.status': 'Status',
'channel.serviceChannels.price.table.priceName': 'Price name',
'channel.serviceChannels.price.table.costItem': 'Cost item',
'channel.serviceChannels.price.table.costUnit': 'Cost unit',
'channel.serviceChannels.price.table.currency': 'Currency',
'channel.serviceChannels.price.table.billingFactors': 'Billing factors',
'channel.serviceChannels.price.table.modifyTime': 'Modify time',
'channel.serviceChannels.price.table.modifier': 'Modifier',
'channel.serviceChannels.price.table.actions': 'Action',
'channel.serviceChannels.record.tabs.price': 'Price',
'channel.serviceChannels.record.tabs.rules': 'Rules',
'channel.serviceChannels.record.actions.publish': 'Publish',
'channel.serviceChannels.record.actions.rollback': 'Rollback to this version',
'channel.serviceChannels.record.versionRemark': 'Version note',
'channel.serviceChannels.record.noRemark': 'No notes',
'channel.serviceChannels.record.versionNumber': 'Version: {version}',
'channel.serviceChannels.modal.publishDateTitle': 'Select publish date',
'channel.serviceChannels.modal.publishDate.placeholder': 'Please select date',
'channel.serviceChannels.modal.actions.cancel': 'Cancel',
'channel.serviceChannels.modal.actions.ok': 'OK',
'channel.serviceChannels.drawer.title.addPrice': 'Add price config',
'channel.serviceChannels.drawer.tabs.basic': 'Basic info',
'channel.serviceChannels.drawer.tabs.priceList': 'Price table',
'channel.serviceChannels.drawer.form.costItem': 'Cost item',
'channel.serviceChannels.drawer.form.costUnit': 'Cost unit',
'channel.serviceChannels.drawer.form.currency': 'Currency',
'channel.serviceChannels.drawer.form.chargingTime': 'Charging time',
'channel.serviceChannels.drawer.form.chargingCondition': 'Charging condition',
'channel.serviceChannels.drawer.section.billingFactors': 'Billing factors',
'channel.serviceChannels.drawer.table.billingFactors.serialNo': 'No.',
'channel.serviceChannels.drawer.table.billingFactors.factor': 'Factor',
'channel.serviceChannels.drawer.table.billingFactors.factorValues': 'Factor values',
'channel.serviceChannels.drawer.table.billingFactors.actions': 'Action',
'channel.serviceChannels.drawer.footer.cancel': 'Cancel',
'channel.serviceChannels.drawer.footer.generatePriceList': 'Generate price table',
'channel.serviceChannels.drawer.footer.save': 'Save',
'channel.serviceChannels.createTime': 'Created: {time}',
// Channel - Blacklist/Remote Zones (shared)
'channel.area.listTitle': 'List',
'channel.area.search.placeholder': 'Enter keyword',
'channel.area.search.refresh': 'Refresh list',
'channel.area.search.addArea': 'Add area',
'channel.area.empty': 'No data',
'channel.area.actions.addDetail': 'Add area detail',
'channel.area.actions.edit': 'Edit',
'channel.area.actions.delete': 'Delete',
'channel.area.pagination.total': 'Total {count} records',
'channel.area.pagination.prev': 'Previous',
'channel.area.pagination.next': 'Next',
'channel.area.pagination.perPage': 'per page',
'channel.area.pagination.goTo': 'Go to',
'channel.area.pagination.page': 'page',
'channel.area.form.keyword': 'Keyword',
'channel.area.form.areaName': 'Area name',
'channel.area.form.country': 'Country/Region',
'channel.area.form.province': 'State/Province',
'channel.area.form.city': 'City',
'channel.area.form.leftPostCode': 'Start postcode',
'channel.area.form.rightPostCode': 'End postcode',
'channel.area.form.placeholder.keyword': 'Enter keyword',
'channel.area.form.placeholder.areaName': 'Enter area name',
'channel.area.form.placeholder.input': 'Please enter',
'channel.area.form.rules.areaNameRequired': 'Please enter area name',
'channel.area.form.rules.countryRequired': 'Please select country/region',
'channel.area.form.rules.maxLength128': 'Cannot exceed 128 characters',
'channel.area.form.rules.maxLength30': 'Cannot exceed 30 characters',
'channel.area.form.rules.noChinese': 'Cannot contain Chinese characters',
'channel.area.form.rules.noSpacesOnly': 'Start postcode cannot be spaces only',
'channel.area.form.rules.noSpacesOnlyEnd': 'End postcode cannot be spaces only',
'channel.area.modal.addArea': 'Add area',
'channel.area.modal.editArea': 'Edit area',
'channel.area.modal.addDetail': 'Add area detail',
'channel.area.modal.editDetail': 'Edit area detail',
'channel.area.modal.deleteConfirm': 'Are you sure to delete?',
'channel.area.modal.deleteConfirmDetail': 'Confirm deletion?',
'channel.area.modal.warningTitle': 'Warning',
'channel.area.table.serialNo': 'No.',
'channel.area.table.leftPostcode': 'Start postcode',
'channel.area.table.rightPostcode': 'End postcode',
'channel.area.table.leftPostCode': 'Start postcode code',
'channel.area.table.rightPostCode': 'End postcode code',
'channel.area.table.remark': 'Remark',
'channel.area.table.actions': 'Action',
'channel.area.message.deleteSuccess': 'Deleted successfully',
'channel.area.message.loadFailed': 'Failed to load data',
'channel.area.message.invalidPage': 'Please enter a valid page number',
'channel.area.search.button.query': 'Query',
'channel.area.search.button.reset': 'Reset',
// Channel - Weight Rules
'channel.weightRules.listTitle': 'List',
'channel.weightRules.search.placeholder': 'Enter keyword',
'channel.weightRules.search.refresh': 'Refresh list',
'channel.weightRules.search.addRule': 'Add rule',
'channel.weightRules.empty': 'No data',
'channel.weightRules.actions.add': 'Add',
'channel.weightRules.actions.delete': 'Delete',
'channel.weightRules.pagination.total': 'Total {count} records',
'channel.weightRules.pagination.prev': 'Previous',
'channel.weightRules.pagination.next': 'Next',
'channel.weightRules.pagination.perPage': 'per page',
'channel.weightRules.pagination.goTo': 'Go to',
'channel.weightRules.pagination.page': 'page',
'channel.weightRules.form.keyword': 'Keyword',
'channel.weightRules.form.ruleName': 'Area name',
'channel.weightRules.form.client': 'Client',
'channel.weightRules.form.condition': 'Condition expression',
'channel.weightRules.form.billableWeight': 'Billable weight value',
'channel.weightRules.form.volumetricFactor': 'Volumetric factor',
'channel.weightRules.form.placeholder.keyword': 'Enter keyword',
'channel.weightRules.form.placeholder.ruleName': 'Enter area name',
'channel.weightRules.form.placeholder.client': 'Enter client',
'channel.weightRules.form.placeholder.condition': 'Enter condition expression',
'channel.weightRules.form.placeholder.billableWeight': 'Enter billable weight value',
'channel.weightRules.form.placeholder.volumetricFactor': 'Enter volumetric factor',
'channel.weightRules.form.rules.ruleNameRequired': 'Please enter area name',
'channel.weightRules.form.rules.clientRequired': 'Please enter client',
'channel.weightRules.form.rules.conditionRequired': 'Please enter condition expression',
'channel.weightRules.form.rules.billableWeightRequired': 'Please enter billable weight value',
'channel.weightRules.form.rules.volumetricFactorRequired': 'Please enter volumetric factor',
'channel.weightRules.modal.addArea': 'Add area',
'channel.weightRules.modal.editArea': 'Edit area',
'channel.weightRules.modal.addRule': 'Add rule',
'channel.weightRules.modal.editRule': 'Edit rule',
'channel.weightRules.modal.deleteConfirm': 'Are you sure to delete?',
'channel.weightRules.modal.deleteConfirmDetail': 'Confirm deletion?',
'channel.weightRules.modal.warningTitle': 'Warning',
'channel.weightRules.table.serialNo': 'No.',
'channel.weightRules.table.client': 'Client',
'channel.weightRules.table.condition': 'Condition expression',
'channel.weightRules.table.billableWeight': 'Billable weight value',
'channel.weightRules.table.volumetricFactor': 'Volumetric factor',
'channel.weightRules.table.actions': 'Action',
'channel.weightRules.message.deleteSuccess': 'Deleted successfully',
'channel.weightRules.message.loadFailed': 'Failed to load data',
'channel.weightRules.message.invalidPage': 'Please enter a valid page number',
'channel.weightRules.search.button.query': 'Query',
'channel.weightRules.search.button.reset': 'Reset',
'channel.weightRules.updateTime': 'Updated: {time}',
// Channel - Weight Rounding
'channel.weightRounding.listTitle': 'List',
'channel.weightRounding.search.placeholder': 'Enter keyword',
'channel.weightRounding.search.refresh': 'Refresh list',
'channel.weightRounding.search.addRounding': 'Add rounding',
'channel.weightRounding.empty': 'No data',
'channel.weightRounding.actions.add': 'Add',
'channel.weightRounding.actions.delete': 'Delete',
'channel.weightRounding.pagination.total': 'Total {count} records',
'channel.weightRounding.pagination.prev': 'Previous',
'channel.weightRounding.pagination.next': 'Next',
'channel.weightRounding.pagination.perPage': 'per page',
'channel.weightRounding.pagination.goTo': 'Go to',
'channel.weightRounding.pagination.page': 'page',
'channel.weightRounding.form.keyword': 'Keyword',
'channel.weightRounding.form.roundingName': 'Rounding name',
'channel.weightRounding.form.startValue': 'Start value',
'channel.weightRounding.form.endValue': 'End value',
'channel.weightRounding.form.public': 'Public',
'channel.weightRounding.form.customerGroup1': 'Customer group 1',
'channel.weightRounding.form.customerGroup2': 'Customer group 2',
'channel.weightRounding.form.placeholder.keyword': 'Enter keyword',
'channel.weightRounding.form.placeholder.roundingName': 'Enter rounding name',
'channel.weightRounding.form.placeholder.startValue': 'Enter start value',
'channel.weightRounding.form.placeholder.endValue': 'Enter end value',
'channel.weightRounding.form.placeholder.public': 'Enter public value',
'channel.weightRounding.form.placeholder.customerGroup1': 'Enter customer group 1 value',
'channel.weightRounding.form.placeholder.customerGroup2': 'Enter customer group 2 value',
'channel.weightRounding.form.rules.roundingNameRequired': 'Please enter rounding name',
'channel.weightRounding.form.rules.startValueRequired': 'Please enter start value',
'channel.weightRounding.form.rules.endValueRequired': 'Please enter end value',
'channel.weightRounding.modal.addRounding': 'Add rounding',
'channel.weightRounding.modal.editRounding': 'Edit rounding',
'channel.weightRounding.modal.addRule': 'Add rule',
'channel.weightRounding.modal.editRule': 'Edit rule',
'channel.weightRounding.modal.deleteConfirm': 'Are you sure to delete?',
'channel.weightRounding.modal.deleteConfirmDetail': 'Confirm deletion?',
'channel.weightRounding.modal.warningTitle': 'Warning',
'channel.weightRounding.table.serialNo': 'No.',
'channel.weightRounding.table.startValue': 'Start value',
'channel.weightRounding.table.endValue': 'End value',
'channel.weightRounding.table.public': 'Public',
'channel.weightRounding.table.customerGroup1': 'Customer group 1',
'channel.weightRounding.table.customerGroup2': 'Customer group 2',
'channel.weightRounding.table.actions': 'Action',
'channel.weightRounding.message.deleteSuccess': 'Deleted successfully',
'channel.weightRounding.message.loadFailed': 'Failed to load data',
'channel.weightRounding.message.invalidPage': 'Please enter a valid page number',
'channel.weightRounding.search.button.query': 'Query',
'channel.weightRounding.search.button.reset': 'Reset',
'channel.weightRounding.updateTime': 'Updated: {time}',
// Channel - Auto Trigger
'channel.autoTrigger.actions.add': 'Add',
'channel.autoTrigger.pagination.total': 'Total {count} records',
'channel.autoTrigger.pagination.prev': 'Previous',
'channel.autoTrigger.pagination.next': 'Next',
'channel.autoTrigger.pagination.perPage': 'per page',
'channel.autoTrigger.table.serialNo': 'No.',
'channel.autoTrigger.table.status': 'Status',
'channel.autoTrigger.table.operation': 'Operation',
'channel.autoTrigger.table.triggerTiming': 'Trigger timing',
'channel.autoTrigger.table.triggerCondition': 'Trigger condition',
'channel.autoTrigger.table.promptMessage': 'Prompt message',
'channel.autoTrigger.table.notifier': 'Notifier',
'channel.autoTrigger.table.createTime': 'Create time',
'channel.autoTrigger.table.creator': 'Creator',
'channel.autoTrigger.table.actions': 'Action',
'channel.autoTrigger.actions.edit': 'Edit',
'channel.autoTrigger.actions.delete': 'Delete',
'channel.autoTrigger.message.statusEnabled': 'Status enabled',
'channel.autoTrigger.message.statusDisabled': 'Status disabled',
'channel.autoTrigger.message.deletePending': 'Delete function pending',
'channel.autoTrigger.message.editPending': 'Edit function pending',
'channel.autoTrigger.message.addPending': 'Add function pending',
'channel.autoTrigger.empty': 'No data',
// Track Center - Track Order
'track.order.search.placeholder.orderNo': 'Enter order number',
'track.order.search.placeholder.isExternal': 'Please select if external',
'track.order.search.label.showTrajectory': 'Show track',
'track.order.search.label.hideTrajectory': 'Hide track',
'track.order.search.placeholder.time': 'Enter time',
'track.order.search.placeholder.timezone': 'Enter timezone',
'track.order.search.placeholder.location': 'Enter location',
'track.order.search.placeholder.content': 'Enter content',
'track.order.search.placeholder.remark': 'Enter remark',
'track.order.drawer.tabs.detail': 'Detail',
'track.order.drawer.tabs.pushRecord': 'Push record',
'track.order.drawer.tabs.log': 'Log',
'track.order.drawer.tabs.pullConfig': 'Track pull config',
'track.order.drawer.tabs.track': 'Order tracking',
'track.order.drawer.tabs.externalTrack': 'External order tracking',
'track.order.drawer.tabs.small': 'Small package',
'track.order.drawer.tabs.main': 'Main order',
'track.order.table.orderType': 'Order type',
'track.order.table.orderNo': 'Customer order number',
'track.order.table.customerShortName': 'Customer short name',
'track.order.table.thirdPartyOrderNo': 'Last mile order number',
'track.order.table.estimatedDeliveryTime': 'Estimated delivery time',
'track.order.table.deliveryTimezone': 'Delivery timezone',
'track.order.table.latestTrajectoryStatus': 'Latest trajectory status',
'track.order.table.latestTrajectoryContent': 'Latest trajectory content',
'track.order.table.latestTrajectoryContentEn': 'Latest trajectory content (EN)',
'track.order.table.latestTrajectoryTime': 'Latest trajectory time',
'track.order.table.latestTrajectoryTimezone': 'Latest trajectory timezone',
'track.order.table.latestTrajectoryLocation': 'Latest trajectory location',
'track.order.table.isComplete': 'Is complete',
'track.order.table.createTime': 'Create time',
'track.order.table.actions': 'Action',
'track.order.table.trackNo': 'Last mile order number',
'track.order.table.otherNo': 'Other order number',
'track.order.table.product': 'Sales product',
'track.order.table.channel': 'Service channel',
'track.order.table.apiCode': 'API service provider',
'track.order.table.countryCode': 'Country',
'track.order.table.province': 'Province/State',
'track.order.table.city': 'City',
'track.order.table.postcode': 'Postcode',
'track.order.table.email': 'Email',
'track.order.detail.title.trajectoryCode': 'Track code',
'track.order.detail.title.trajectoryContent': 'Track content',
'track.order.detail.title.trajectoryContentEn': 'Track content (EN)',
'track.order.detail.title.remark': 'Remark',
'track.order.detail.title.createUser': 'Creator',
'track.order.detail.title.trajectoryType': 'Track type',
'track.order.detail.title.trackTime': 'Track time',
'track.order.detail.title.trackTimeZone': 'Track timezone',
'track.order.detail.title.pushDetail': 'Push detail',
'track.order.detail.title.originTrackContent': 'Service provider source track content',
'track.order.detail.title.serviceProvider': 'Service provider',
'track.order.detail.title.trackPlaceCity': 'Track location (city)',
'track.order.detail.title.trackPlaceProvince': 'Track location (province/state)',
'track.order.detail.title.trackPlaceNation': 'Track location (country/region)',
'track.order.detail.title.trackPlacePostcode': 'Track location postcode',
'track.order.detail.title.trackPlace': 'Track location',
'track.order.detail.title.isVisibility': 'Is visible',
'track.order.detail.trajectoryType.external': 'External service provider created',
'track.order.detail.trajectoryType.internal': 'Internal system created',
'track.order.detail.trajectoryType.manual': 'Manual created',
'track.order.detail.showAllSourceTrajectory': 'Show all source tracks from service provider',
'track.order.pagination.total': 'Total {count} records',
'track.order.pagination.prev': 'Previous',
'track.order.pagination.next': 'Next',
'track.order.pagination.perPage': 'per page',
'track.order.pagination.goTo': 'Go to',
'track.order.pagination.page': 'page',
'track.order.table.serialNo': 'No.',
'track.order.table.appName': 'Application',
'track.order.actions.addTrajectory': 'Add track',
'track.order.actions.updateTrajectory': 'Update track',
'track.order.actions.refreshTrajectory': 'Refresh track',
'track.order.actions.deleteTrajectory': 'Delete track',
'track.order.actions.pushTrajectory': 'Push track',
'track.order.actions.deleteOrder': 'Delete order',
'track.order.actions.batchUpdatePullConfig': 'Batch update pull config',
'track.order.modal.addTrajectory': 'Add track',
'track.order.modal.updateTrajectory': 'Update track',
'track.order.modal.deleteTrajectory': 'Delete track',
'track.order.modal.pushTrajectory': 'Push track',
'track.order.modal.viewDetail': 'View detail',
'track.order.modal.deleteSingleTrajectory': 'Are you sure to delete track {content}?',
'track.order.modal.deleteMultipleTrajectory': 'Are you sure to delete the following {count} tracks?',
'track.order.modal.deleteOrder': 'Are you sure to delete order {orderNo}?',
'track.order.modal.deleteMultipleOrders': 'Are you sure to delete the following {count} orders?',
'track.order.message.selectSameOrderType': 'Please select the same order type and subsystem',
'track.order.message.selectSameOrderTypeOnly': 'Please select the same order type',
'track.order.message.cannotDeleteExternal': 'Tracks from external service providers cannot be deleted',
'track.order.message.operationSuccess': 'Operation successful, please check the result later.',
'track.order.message.refreshSuccess': 'Operation successful, please check the result later.',
'track.order.message.invalidPage': 'Page number out of range',
'track.order.log.table.optionType': 'Operation type',
'track.order.log.table.content': 'Log source text',
'track.order.log.table.createUserName': 'Operator',
'track.order.log.table.createTime': 'Operation time',
'track.order.pushRecord.table.requestId': 'Request ID',
'track.order.pushRecord.table.isSuccess': 'Is success',
'track.order.pushRecord.table.message': 'Message',
'track.order.pushRecord.table.optionType': 'Operation type',
'track.order.pushRecord.table.trackStatus': 'Track status',
'track.order.pushRecord.table.trackCode': 'Track content code',
'track.order.pushRecord.table.trackContent': 'Track content',
'track.order.pushRecord.table.trackPlace': 'Track location',
'track.order.pushRecord.table.trackGTMTimeZone': 'Track timezone',
'track.order.pushRecord.table.pushContent': 'Push detail',
'track.order.pushRecord.table.createUser': 'Creator',
'track.order.pushRecord.table.createTime': 'Create time',
'track.order.titleStrs.trajectoryCode': 'Track code',
'track.order.titleStrs.trajectoryContent': 'Track content',
'track.order.titleStrs.trajectoryContentEn': 'Track content (EN)',
'track.order.common.yes': 'Yes',
'track.order.common.no': 'No',
'track.order.pullConfig.appKey': 'App Key',
'track.order.pullConfig.orderType': 'Order Type',
'track.order.pullConfig.orderNos': 'Order Numbers',
'track.order.pullConfig.items': 'Config Items',
'track.order.pullConfig.noData': 'No data',
'track.order.pullConfig.table.index': 'No.',
'track.order.pullConfig.table.pullOrderNo': 'Pull order no',
'track.order.pullConfig.table.serviceCode': 'Service provider',
'track.order.pullConfig.table.startCode': 'Start track pull',
'track.order.pullConfig.table.endCode': 'End track pull',
'track.order.pullConfig.table.silenceTime': 'Silence before start (h)',
'track.order.pullConfig.table.stopTime': 'Silence after end (h)',
'track.order.pullConfig.table.pullStatus': 'Pull status',
'track.order.pullConfig.table.startTime': 'Cron start time',
'track.order.pullConfig.table.endTime': 'Cron end time',
'track.order.pullConfig.pullStatus.initial': 'Initial',
'track.order.pullConfig.pullStatus.silenceBeforeStart': 'Silence before start',
'track.order.pullConfig.pullStatus.pulling': 'Pulling',
'track.order.pullConfig.pullStatus.silenceAfterEnd': 'Silence after end',
'track.order.pullConfig.pullStatus.completed': 'Completed',
'track.order.modal.columnConfig': 'Column config',
'track.order.modal.columnOrderTitle': 'Column order settings',
'track.order.modal.currentOrder': 'Current order',
'track.order.modal.editOrder': 'Edit order',
'track.order.modal.moveUp': 'Move up',
'track.order.modal.moveDown': 'Move down',
'track.order.modal.resetDefault': 'Reset default',
'track.order.pushRecord.title': 'Push record',
'track.order.pushRecord.table.pushContentCol': 'Push content',
'track.order.pushRecord.table.pushTime': 'Push time',
'track.order.pushRecord.table.pushStatus': 'Push status',
'track.order.pushRecord.table.pushResult': 'Push result',
'track.order.modal.batchInput': 'Batch input',
'track.order.modal.multiValueTips': 'Enter multiple values, one per line; paste comma-separated data to convert to rows; support copy, paste, cut; duplicates are auto-removed',
'track.order.modal.multiValuePlaceholder': 'Enter values, one per line, or paste comma-separated data',
'track.order.modal.valueCount': '{count} values',
'track.order.modal.noOrderNo': 'No order numbers',
'track.order.pagination.selectedCount': 'Selected',
'track.order.pagination.records': ' records',
// Track Center - Warning Order
'track.warningOrder.tabs.return': 'Track return',
'track.warningOrder.tabs.transitTime': 'Transit time',
'track.warningOrder.tabs.complete': 'Trajectory complete',
'track.warningOrder.status.aboutToTimeout': 'About to timeout',
'track.warningOrder.status.timeout': 'Timeout',
'track.warningOrder.status.completed': 'Completed',
'track.warningOrder.status.timeoutCompleted': 'Timeout completed',
'track.warningOrder.status.closed': 'Closed',
'track.warningOrder.actions.addTrajectory': 'Add track',
'track.warningOrder.actions.refreshTrajectory': 'Refresh track',
'track.warningOrder.actions.pushTrajectory': 'Push track',
'track.warningOrder.pushRecord.title': 'Push record',
'track.warningOrder.modal.addTrajectory': 'Add track',
'track.warningOrder.modal.missingTrackDetail': 'Missing track detail',
'track.warningOrder.pagination.total': 'Total {count} records',
'track.warningOrder.pagination.prev': 'Previous',
'track.warningOrder.pagination.next': 'Next',
'track.warningOrder.pagination.perPage': 'per page',
'track.warningOrder.pagination.goTo': 'Go to',
'track.warningOrder.pagination.page': 'page',
'track.warningOrder.table.serialNo': 'No.',
'track.warningOrder.table.orderNo': 'Order number',
'track.warningOrder.table.status': 'Status',
'track.warningOrder.table.createTime': 'Create time',
'track.warningOrder.message.loadFailed': 'Failed to load data',
'track.warningOrder.message.invalidPage': 'Please enter a valid page number',
// Track Center - Track State
'track.state.search.placeholder': 'Enter track status code or name',
'track.state.actions.add': 'Add',
'track.state.actions.edit': 'Edit',
'track.state.actions.delete': 'Delete',
'track.state.modal.add': 'Add',
'track.state.modal.edit': 'Edit',
'track.state.modal.deleteConfirm': 'Are you sure to delete? If track content is bound to this status, deletion is prohibited. Please confirm.',
'track.state.modal.warningTitle': 'Warning',
'track.state.message.deleteSuccess': 'Deleted successfully',
'track.state.table.serialNo': 'No.',
'track.state.table.statusCode': 'Track status code',
'track.state.table.status': 'Track status',
'track.state.table.statusEn': 'Track status (EN)',
'track.state.table.isComplete': 'Is complete',
'track.state.table.isBroadcast': 'Is broadcast',
'track.state.table.createTime': 'Create time',
'track.state.table.creator': 'Creator',
'track.state.table.modifyTime': 'Modify time',
'track.state.table.modifier': 'Modifier',
'track.state.table.application': 'Application',
'track.state.table.actions': 'Action',
'track.state.form.statusCode': 'Track status code',
'track.state.form.statusCodeRequired': 'Please enter track status code',
'track.state.form.statusCodePlaceholder': 'Enter track status code',
'track.state.form.status': 'Track status',
'track.state.form.statusRequired': 'Please enter track status',
'track.state.form.statusPlaceholder': 'Enter track status',
'track.state.form.statusEn': 'Track status (EN)',
'track.state.form.statusEnRequired': 'Please enter track status (EN)',
'track.state.form.statusEnOnlyAlphanumeric': 'Only letters, numbers and underscores allowed',
'track.state.form.statusEnPlaceholder': 'Enter track status (EN)',
'track.state.form.isComplete': 'Is complete',
'track.state.form.isCompletePlaceholder': 'Please select if complete',
'track.state.form.isBroadcast': 'Is broadcast',
'track.state.form.isBroadcastPlaceholder': 'Please select if broadcast',
'track.state.form.application': 'Application',
'track.state.form.applicationRequired': 'Please select application',
'track.state.form.applicationPlaceholder': 'Please select application',
'track.state.common.yes': 'Yes',
'track.state.common.no': 'No',
// Track Center - Track Flag
'track.flag.search.placeholder': 'Enter flag name',
'track.flag.actions.add': 'Add',
'track.flag.actions.edit': 'Edit',
'track.flag.actions.delete': 'Delete',
'track.flag.modal.add': 'Add',
'track.flag.modal.edit': 'Edit',
'track.flag.modal.deleteConfirm': 'Are you sure to delete? Deletion will affect track flag push. Please confirm.',
'track.flag.modal.warningTitle': 'Warning',
'track.flag.message.deleteSuccess': 'Deleted successfully',
'track.flag.table.serialNo': 'No.',
'track.flag.table.flag': 'Flag',
'track.flag.table.code': 'Code',
'track.flag.table.isBroadcast': 'Is broadcast',
'track.flag.table.createTime': 'Create time',
'track.flag.table.creator': 'Creator',
'track.flag.table.modifyTime': 'Modify time',
'track.flag.table.modifier': 'Modifier',
'track.flag.table.application': 'Application',
'track.flag.table.actions': 'Action',
'track.flag.form.flag': 'Flag',
'track.flag.form.flagRequired': 'Please enter flag',
'track.flag.form.flagOnlyChinese': 'Only Chinese characters allowed',
'track.flag.form.flagPlaceholder': 'Enter flag',
'track.flag.form.code': 'Code',
'track.flag.form.codeRequired': 'Please enter 2 uppercase letters',
'track.flag.form.codePlaceholder': 'Enter 2 uppercase letters',
'track.flag.form.isBroadcast': 'Is broadcast',
'track.flag.form.isBroadcastPlaceholder': 'Please select if broadcast',
'track.flag.form.application': 'Application',
'track.flag.form.applicationRequired': 'Please select application',
'track.flag.form.applicationPlaceholder': 'Please select application',
'track.flag.common.yes': 'Yes',
'track.flag.common.no': 'No',
// Track Center - Track Content
'track.content.modal.addTitle': 'Add track content',
'track.content.modal.deleteConfirm': 'Are you sure to delete? If templates are bound to this track content, deletion is prohibited. Please confirm.',
'track.content.modal.warningTitle': 'Warning',
'track.content.message.deleteSuccess': 'Deleted successfully',
'track.content.search.placeholder': 'Enter track code or content',
'track.content.form.application': 'Application',
'track.content.form.applicationRequired': 'Please select application',
'track.content.form.applicationPlaceholder': 'Please select application',
'track.content.actions.add': 'Add',
'track.content.actions.edit': 'Edit',
'track.content.actions.delete': 'Delete',
'track.content.table.serialNo': 'No.',
'track.content.table.trajectoryCode': 'Track code',
'track.content.table.trajectoryContent': 'Track content',
'track.content.table.trajectoryContentEn': 'Track content (EN)',
'track.content.table.status': 'Status',
'track.content.table.flag': 'Track flag',
'track.content.table.isExternal': 'Is external',
'track.content.table.isRepeatable': 'Is repeatable',
'track.content.table.allowManualModify': 'Allow manual modify',
'track.content.table.allowManualCreate': 'Allow manual create',
'track.content.table.createTime': 'Create time',
'track.content.table.creator': 'Creator',
'track.content.table.modifyTime': 'Modify time',
'track.content.table.modifier': 'Modifier',
'track.content.table.application': 'Application',
'track.content.table.actions': 'Action',
'track.content.form.status': 'Status',
'track.content.form.statusPlaceholder': 'Please select',
'track.content.form.statusRequired': 'Please select status',
'track.content.form.trajectoryCode': 'Track code',
'track.content.form.trajectoryCodePlaceholder': 'Enter track code',
'track.content.form.trajectoryCodeRequired': 'Please enter track code',
'track.content.form.trajectoryContent': 'Track content',
'track.content.form.trajectoryContentPlaceholder': 'Enter track content',
'track.content.form.trajectoryContentRequired': 'Please enter track content',
'track.content.form.trajectoryContentEn': 'Track content (EN)',
'track.content.form.trajectoryContentEnPlaceholder': 'Enter track content (EN)',
'track.content.form.trajectoryContentEnRequired': 'Please enter track content (EN)',
'track.content.form.trajectoryContentEnNoChinese': 'Chinese characters not allowed',
'track.content.form.trackContentEnNoChinese': 'Chinese characters not allowed',
'track.content.form.flag': 'Track flag',
'track.content.form.flagPlaceholder': 'Please select',
'track.content.form.isExternal': 'Is external',
'track.content.form.isExternalPlaceholder': 'Please select if external',
'track.content.form.isRepeatable': 'Is repeatable',
'track.content.form.isRepeatablePlaceholder': 'Please select if repeatable',
'track.content.form.allowManualCreate': 'Support manual create',
'track.content.form.allowManualCreatePlaceholder': 'Please select if support manual create',
'track.content.form.allowManualModify': 'Support manual modify',
'track.content.form.allowManualModifyPlaceholder': 'Please select if support manual modify',
'track.content.titleStrs.statusCode': 'Track status code',
'track.content.titleStrs.status': 'Track status',
'track.content.titleStrs.flag': 'Flag',
'track.content.titleStrs.code': 'Code',
'track.content.titleStrs.isBroadcast': 'Is broadcast',
'track.content.common.yes': 'Yes',
'track.content.common.no': 'No',
// Track Center - Track Push
'track.push.table.serialNo': 'No.',
'track.push.table.pushOrder': 'Push order',
'track.push.table.trajectoryCode': 'Track code',
'track.push.table.trajectoryContent': 'Track content',
'track.push.table.trajectoryContentEn': 'Track content (EN)',
'track.push.table.trackCode': 'Track code',
'track.push.table.trackContent': 'Track content',
'track.push.table.trackContentEn': 'Track content (EN)',
'track.push.table.standardTrajectory': 'Standard trajectory',
'track.push.table.standardTrack': 'Standard track',
'track.push.table.systemStandardTrack': 'System standard track',
'track.push.table.pushTrajectoryCode': 'Push track code',
'track.push.table.pushTrajectoryStatus': 'Push track status',
'track.push.table.pushTrajectoryContent': 'Push track content',
'track.push.table.pushTrajectoryContentEn': 'Push track content (EN)',
'track.push.table.pushExtendedField': 'Push extended field',
'track.push.table.actions': 'Action',
'track.push.form.application': 'Application',
'track.push.form.applicationRequired': 'Please select application',
'track.push.form.applicationPlaceholder': 'Please select application',
'track.push.form.customer': 'Customer',
'track.push.form.customerPlaceholder': 'Enter customer',
'track.push.form.customerRequired': 'Please select customer',
'track.push.form.serviceProvider': 'Service provider',
'track.push.form.serviceProviderPlaceholder': 'Please select service provider',
'track.push.form.serviceProviderRequired': 'Please select service provider',
'track.push.form.isAutoPush': 'Is auto push',
'track.push.form.isAutoPushPlaceholder': 'Please select if auto push',
'track.push.form.supportRepush': 'Support repush',
'track.push.form.supportRepushPlaceholder': 'Please select if support repush',
'track.push.form.supportDelete': 'Support delete',
'track.push.form.supportDeletePlaceholder': 'Please select if support delete',
'track.push.form.isFullPush': 'Is full push',
'track.push.form.isFullPushPlaceholder': 'Please select if full push',
'track.push.form.isLatestFullPush': 'Is full push (latest)',
'track.push.form.isLatestFullPushPlaceholder': 'Please select if full push latest',
'track.push.form.pushTimeStyle': 'Push time style',
'track.push.form.pushTimeStyle.none': 'Default',
'track.push.form.pushTimeStyle.timestamp': 'Timestamp',
'track.push.form.pushTimeStyle.timezone': 'Time + timezone',
'track.push.form.time': 'Time',
'track.push.form.timePlaceholder': 'Time format: yyyy-MM-dd HH:mm:ss or yyyy/MM/dd HH:mm:ss',
'track.push.form.timezone': 'Timezone',
'track.push.form.timezonePlaceholder': 'Timezone format: GMT/UTC',
'track.push.form.trajectoryCode': 'Track code',
'track.push.form.trajectoryCodeRequired': 'Please select track code',
'track.push.form.trackCode': 'Track code',
'track.push.form.trackCodeRequired': 'Please select track code',
'track.push.form.pushTrajectoryStatus': 'Push track status',
'track.push.form.pushTrajectoryStatusPlaceholder': 'Enter parameter value',
'track.push.form.pushTrackStatus': 'Push track status',
'track.push.form.pushTrackStatusPlaceholder': 'Enter parameter value',
'track.push.form.pushTrajectoryCode': 'Push track code',
'track.push.form.pushTrackCode': 'Push track code',
'track.push.form.pushTrajectoryContent': 'Push track content',
'track.push.form.pushTrackContent': 'Push track content',
'track.push.form.pushTrajectoryContentEn': 'Push track content (EN)',
'track.push.form.pushTrackContentEn': 'Push track content (EN)',
'track.push.form.pushExtendedField': 'Push track extended field',
'track.push.form.swapTrackContent': 'Swap track content',
'track.push.actions.add': 'Add',
'track.push.actions.edit': 'Edit',
'track.push.actions.delete': 'Delete',
'track.push.modal.deleteConfirm': 'Are you sure to delete?',
'track.push.modal.warningTitle': 'Warning',
'track.push.message.deleteSuccess': 'Deleted successfully',
'track.push.search.placeholder': 'Enter service provider name or appkey',
'track.push.actions.refresh': 'Refresh list',
'track.push.actions.addPush': 'Add push',
'track.push.common.yes': 'Yes',
'track.push.common.no': 'No',
'track.push.titleStrs.trajectoryCode': 'Track code',
'track.push.titleStrs.trajectoryContent': 'Track content',
'track.push.titleStrs.trackCode': 'Track code',
'track.push.titleStrs.trackContent': 'Track content',
// Track Center - Warning Region (shared with channel.area keys)
'track.region.search.placeholder': 'Enter keyword',
'track.region.search.refresh': 'Refresh list',
'track.region.search.addArea': 'Add area',
'track.region.search.button.query': 'Query',
'track.region.search.button.reset': 'Reset',
'track.region.empty': 'No data',
'track.region.actions.add': 'Add',
'track.region.actions.edit': 'Edit',
'track.region.actions.delete': 'Delete',
'track.region.modal.addArea': 'Add area',
'track.region.modal.editArea': 'Edit area',
'track.region.modal.add': 'Add',
'track.region.modal.edit': 'Edit',
'track.region.modal.warningTitle': 'Tips',
'track.region.modal.deleteConfirm': 'Are you sure to delete this area?',
'track.region.modal.deleteConfirmContent': 'Are you sure to delete this area detail?',
'track.region.message.deleteSuccess': 'Deleted successfully',
'track.region.form.keyword': 'Keyword',
'track.region.form.areaName': 'Area name',
'track.region.form.country': 'Country/Region',
'track.region.form.province': 'State/Province',
'track.region.form.city': 'City',
'track.region.form.leftPostCode': 'Start postcode',
'track.region.form.rightPostCode': 'End postcode',
'track.region.form.placeholder.keyword': 'Enter keyword',
'track.region.form.placeholder.areaName': 'Enter area name',
'track.region.form.placeholder.input': 'Please enter',
'track.region.form.rules.areaNameRequired': 'Please enter area name',
'track.region.form.rules.countryRequired': 'Please select country/region',
'track.region.form.rules.maxLength128': 'Cannot exceed 128 characters',
'track.region.form.rules.maxLength30': 'Cannot exceed 30 characters',
'track.region.form.rules.noChinese': 'Cannot contain Chinese characters',
'track.region.form.rules.noSpacesOnly': 'Start postcode cannot be spaces only',
'track.region.form.rules.noSpacesOnlyEnd': 'End postcode cannot be spaces only',
'track.region.table.serialNo': 'No.',
'track.region.table.country': 'Country/Region',
'track.region.table.province': 'State/Province',
'track.region.table.city': 'City',
'track.region.table.leftPostCode': 'Start postcode',
'track.region.table.rightPostCode': 'End postcode',
'track.region.table.actions': 'Action',
// Track Center - Warning Config
'track.warningConfig.tabs.complete': 'Track complete',
'track.warningConfig.tabs.transitTime': 'Transit time',
'track.warningConfig.tabs.returnTime': 'Track return',
'track.warningConfig.search.placeholder.customer': 'Enter customer short name',
'track.warningConfig.search.label.customer': 'Customer short name',
'track.warningConfig.search.label.kpiName': 'KPI name',
'track.warningConfig.search.placeholder.kpiName': 'Enter KPI name',
'track.warningConfig.search.label.status': 'Status',
'track.warningConfig.search.status.enabled': 'Enabled',
'track.warningConfig.search.status.disabled': 'Disabled',
'track.warningConfig.search.button.query': 'Query',
'track.warningConfig.search.button.reset': 'Reset',
'track.warningConfig.actions.refresh': 'Refresh list',
'track.warningConfig.actions.addRule': 'Add warning rule',
'track.warningConfig.actions.addScene': 'Add scene',
'track.warningConfig.actions.editScene': 'Edit scene',
'track.warningConfig.message.getRuleItemsFailed': 'Failed to get scene rule items data',
'track.warningConfig.message.getSceneFailed': 'Failed to get scene data',
'track.warningConfig.message.deleteSuccess': 'Deleted successfully',
'track.warningConfig.message.selectRuleFirst': 'Please select a warning rule item from the left list first',
'track.warningConfig.message.selectRule': 'Please select a warning rule from the left first',
'track.warningConfig.message.enterAtLeastOneFactor': 'Please enter at least one factor value',
'track.warningConfig.message.saveSuccess': 'Saved successfully',
'track.warningConfig.message.getSceneDetailFailed': 'Failed to get scene details',
'track.warningConfig.modal.deletePushConfirm': 'Confirm to delete this push?',
'track.warningConfig.modal.deleteSceneConfirm': 'Confirm to delete [{summary}]?',
'track.warningConfig.modal.warningTitle': 'Warning',
'track.warningConfig.factor.type.cargoType': 'Cargo type',
'track.warningConfig.factor.type.month': 'Month',
'track.warningConfig.factor.type.division': 'Division',
'track.warningConfig.factor.type.isTransit': 'Is transit',
'track.warningConfig.factor.type.port': 'Port',
'track.warningConfig.factor.type.salesProduct': 'Sales product',
// Track Center - Track Pull
'track.pull.table.trackKeyword': 'Pull track keyword',
'track.pull.table.trackKeywordReverse': 'Pull track keyword (filter)',
'track.pull.table.trackPlaceValue': 'Fallback track location',
'track.pull.table.standardTrack': 'Standard track',
'track.pull.actions.add': 'Add',
'track.pull.actions.edit': 'Edit',
'track.pull.actions.delete': 'Delete',
'track.pull.actions.addPull': 'Add pull',
'track.pull.modal.deleteConfirm': 'Are you sure to delete this pull?',
'track.pull.modal.deleteContentConfirm': 'Are you sure to delete this pull content?',
'track.pull.modal.warningTitle': 'Warning',
'track.pull.message.deleteSuccess': 'Deleted successfully',
...localeSettings,
...localeMessageBox,
...localeLogin,
...localeWorkplace,
...localeMonitor,
...localeSearchTable,
...localeCardList,
...localeStepForm,
...localeGroupForm,
...localeSuccess,
...localeError,
...locale403,
...locale404,
...locale500,
};