en.json 33 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830
  1. {
  2. "common": {
  3. "appName": "TBOSS Workbench",
  4. "tabMessages": "Messages",
  5. "tabWorkbench": "Workbench",
  6. "tabProfile": "Profile",
  7. "loading": "Loading…",
  8. "loadFailed": "Load failed",
  9. "noData": "No data",
  10. "noMessages": "No messages",
  11. "noDrafts": "No drafts",
  12. "noCompletedRecords": "No completed records",
  13. "initiate": "Initiate",
  14. "records": "Records",
  15. "more": "More",
  16. "settings": "Settings",
  17. "about": "About",
  18. "language": "Language",
  19. "darkMode": "Dark Mode",
  20. "themeDark": "Dark",
  21. "themeLight": "Light",
  22. "languageZhCN": "简体中文",
  23. "languageEn": "English",
  24. "languageZhTW": "繁體中文",
  25. "userName": "Zhang San",
  26. "salesDepartment": "Sales Dept · Account Manager",
  27. "version": "TBOSS OA v2.13.0",
  28. "save": "Save",
  29. "submit": "Submit",
  30. "cancel": "Cancel",
  31. "confirm": "Confirm",
  32. "reset": "Reset",
  33. "publish": "Publish",
  34. "saveDraft": "Save Draft",
  35. "submitting": "Submitting…",
  36. "dataLoading": "Loading data…",
  37. "pageFooter": "You've reached the bottom ~ nothing more!",
  38. "submitApproval": "Submit for Approval",
  39. "saveDraftShort": "Save Draft",
  40. "delete": "Delete",
  41. "edit": "Edit",
  42. "add": "Add",
  43. "close": "Close",
  44. "retry": "Retry",
  45. "confirmAdd": "Confirm Add",
  46. "confirmEdit": "Confirm Edit",
  47. "confirmSubmit": "Confirm Submit",
  48. "confirmPublish": "Confirm Publish",
  49. "confirmAction": "Are you sure you want to {action} this application?",
  50. "confirmExit": "Confirm Exit",
  51. "confirmReset": "Confirm Reset",
  52. "continueEditing": "Continue Editing",
  53. "discardAndExit": "Discard and Exit",
  54. "confirmPrompt": "Confirm to {action} this application?",
  55. "withdraw": "Withdraw Application",
  56. "withdrawAction": "Withdraw",
  57. "withdrawApplication": "Withdraw Application",
  58. "withdrawConfirm": "Confirm Withdraw",
  59. "withdrawConfirmTip": "Are you sure you want to withdraw this application? The approval process will be terminated.",
  60. "approve": "Approve",
  61. "reject": "Reject",
  62. "confirmApprove": "Confirm Approve",
  63. "confirmReject": "Confirm Reject",
  64. "preview": "Preview",
  65. "previewTitle": "Preview",
  66. "draft": "Draft",
  67. "pending": "In Approval",
  68. "approved": "Approved",
  69. "rejected": "Rejected",
  70. "expired": "Expired",
  71. "paid": "Paid",
  72. "unpaid": "Unpaid",
  73. "returned": "Returned",
  74. "completed": "Completed",
  75. "statusPending": "In Approval",
  76. "statusApproved": "Approved",
  77. "statusRejected": "Rejected",
  78. "statusDraft": "Draft",
  79. "statusWithdrawn": "Withdrawn",
  80. "statusReturned": "Returned",
  81. "statusDisabled": "Disabled",
  82. "statusWaitApprove": "Pending",
  83. "statusWaitPay": "Pending Payment",
  84. "editApply": "Edit Pre-Application",
  85. "editExpense": "Edit Expense Report",
  86. "statusTransferred": "Converted to Voucher",
  87. "statusClosed": "Closed",
  88. "statusPendingReview": "Pending Review",
  89. "statusReviewing": "Under Review",
  90. "statusReviewRejected": "Review Rejected",
  91. "statusFinalRejected": "Review Rejected(Final)",
  92. "filterAll": "All",
  93. "all": "All",
  94. "myDrafts": "My Drafts",
  95. "public": "All Staff",
  96. "normal": "Normal",
  97. "urgent": "Urgent",
  98. "unknown": "Unknown",
  99. "other": "Other",
  100. "no": "None",
  101. "selectOrFill": "Select or fill in",
  102. "pleaseSelect": "Please select",
  103. "selectDateTime": "Select date & time",
  104. "selectDate": "Select date",
  105. "optional": "Optional",
  106. "pleaseEnter": "Please enter",
  107. "enterNumber": "Please enter a number",
  108. "requiredField": "This field is required",
  109. "unknownError": "Unknown error",
  110. "networkTimeout": "Network connection timeout",
  111. "draftSaved": "Draft saved",
  112. "draftSavedToast": "Draft saved",
  113. "saveFailed": "Save failed",
  114. "submitSuccess": "Submitted successfully",
  115. "submitFailed": "Submit Failed",
  116. "submitFailedRetry": "Submission failed, please try again later",
  117. "noCostTypeData": "No cost type data. Please add cost types in ERP first.",
  118. "submittedAwaitingApproval": "Submitted, awaiting approval",
  119. "published": "Announcement published",
  120. "withdrawn": "Withdrawn",
  121. "featureDev": "{feature} is under development",
  122. "completeFormInfo": "Please complete the form",
  123. "unsavedContentWarning": "Current content is not saved. Exit anyway?",
  124. "resetWarning": "This will clear all entered content and cannot be undone",
  125. "maxChars": "Up to {max} characters",
  126. "enterField": "Please enter {field}",
  127. "applicant": "Applicant",
  128. "department": "Department",
  129. "applyDept": "Apply Dept",
  130. "expensePersonnel": "Expense Personnel",
  131. "expenseDept": "Expense Dept",
  132. "dept": "Dept",
  133. "date": "Date",
  134. "startTime": "Start Time",
  135. "endTime": "End Time",
  136. "creator": "Creator",
  137. "hours": "Hours",
  138. "total": "Total",
  139. "send": "Send",
  140. "search": "Search",
  141. "searchByNameOrId": "Search by name or employee ID...",
  142. "searchEmployee": "Search Employee",
  143. "searchEmployeeHint": "Search by name or employee ID",
  144. "approver": "Approver",
  145. "rejecter": "Rejected By",
  146. "currentApprover": "Current Approver",
  147. "approvalFlow": "Approval Flow",
  148. "approvalProgress": "Approval Progress",
  149. "opinion": "Opinion: ",
  150. "currentNode": "Current Node",
  151. "waitHandle": "Pending",
  152. "approvalComment": "Approval comment (optional)",
  153. "submitTimeText": "Submit Time",
  154. "submitTime": "Submit Time",
  155. "downloadAttachment": "Download Attachment",
  156. "noMoreData": "No more data",
  157. "expandRemaining": "Expand ${count} more",
  158. "collapseRemaining": "Collapse ${count} items",
  159. "searchImportHint": "Search No./Reason/Applicant",
  160. "businessShort": "Business",
  161. "custom": "Custom",
  162. "markedAsRead": "Marked as read",
  163. "pinTopTag": "Pinned",
  164. "pinToTop": "Pin to Top",
  165. "filterTitle": "Filters",
  166. "filterStartDate": "Start Date",
  167. "filterEndDate": "End Date",
  168. "filterSelectStartDate": "Select start date",
  169. "filterSelectEndDate": "Select end date",
  170. "filterDateStartAfterEnd": "Start date cannot be later than end date",
  171. "filterDateEndBeforeStart": "End date cannot be earlier than start date",
  172. "filterStatus": "Approval Status",
  173. "transferStatus": "Transfer Status",
  174. "filterPayment": "Payment Status",
  175. "filterThisMonth": "This Month",
  176. "filterThisQuarter": "This Quarter",
  177. "filterThisYear": "This Year",
  178. "filterThisWeek": "This Week",
  179. "filter7Days": "Last 7 Days",
  180. "filter30Days": "Last 30 Days",
  181. "filterLastMonth": "Last Month",
  182. "filterLast3Months": "Last 3 Months",
  183. "filterDateRange": "Date Range",
  184. "filterGroupOther": "Other",
  185. "applyFilter": "Apply Filter",
  186. "clickChartToFilter": "Tap the bar chart to filter",
  187. "tdOpen": "On",
  188. "tdClose": "Off",
  189. "tdCancel": "Cancel",
  190. "tdConfirm": "Confirm",
  191. "tdOther": "Other",
  192. "tdReset": "Reset",
  193. "tdLoading": "Loading",
  194. "tdLoadingWithPoint": "Loading...",
  195. "tdKnew": "Got it",
  196. "tdRefreshing": "Refreshing",
  197. "tdReleaseRefresh": "Release to refresh",
  198. "tdPullToRefresh": "Pull to refresh",
  199. "tdCompleteRefresh": "Refresh complete",
  200. "tdDays": "Days",
  201. "tdHours": "Hours",
  202. "tdMinutes": "Minutes",
  203. "tdSeconds": "Seconds",
  204. "tdMilliseconds": "Milliseconds",
  205. "tdYearLabel": "Year",
  206. "tdMonthLabel": "Month",
  207. "tdDateLabel": "Day",
  208. "tdWeeksLabel": "Week",
  209. "tdSunday": "Sun",
  210. "tdMonday": "Mon",
  211. "tdTuesday": "Tue",
  212. "tdWednesday": "Wed",
  213. "tdThursday": "Thu",
  214. "tdFriday": "Fri",
  215. "tdSaturday": "Sat",
  216. "tdYear": "Year",
  217. "tdJanuary": "January",
  218. "tdFebruary": "February",
  219. "tdMarch": "March",
  220. "tdApril": "April",
  221. "tdMay": "May",
  222. "tdJune": "June",
  223. "tdJuly": "July",
  224. "tdAugust": "August",
  225. "tdSeptember": "September",
  226. "tdOctober": "October",
  227. "tdNovember": "November",
  228. "tdDecember": "December",
  229. "tdTime": "Time",
  230. "tdStart": "Start",
  231. "tdEnd": "End",
  232. "tdNotRated": "Not Rated",
  233. "tdCascadeLabel": "Select Option",
  234. "tdBack": "Back",
  235. "tdTop": "Top",
  236. "tdEmptyData": "No Data",
  237. "basicInfo": "Basic Info",
  238. "noDetailData": "No detail data",
  239. "unitItem": "items",
  240. "personUnit": "persons"
  241. },
  242. "home": {
  243. "myDashboard": "My Dashboard",
  244. "monthlyTotalExpense": "Monthly Total Reimbursement",
  245. "monthlySubmitted": "Submitted This Month",
  246. "pendingDocuments": "Pending Documents",
  247. "preApplication": "Pre-Application",
  248. "expenseReimbursement": "Reimbursement",
  249. "vehicleApplication": "Vehicle Application",
  250. "overtimeApplication": "Overtime Application",
  251. "applicationRecords": "Application Records",
  252. "expenseRecords": "Reimbursement Records",
  253. "outingLogs": "Outing Logs",
  254. "companyAnnouncements": "Company Announcements",
  255. "myApprovals": "My Approvals",
  256. "myApplications": "My Applications",
  257. "subordinateRecords": "Subordinate Records",
  258. "myExpenses": "My Reimbursements",
  259. "outingLog": "Outing Log",
  260. "announcements": "Announcements",
  261. "deptDashboard": "Dept Dashboard",
  262. "financeDashboard": "Finance Dashboard",
  263. "deptMonthlyReimbursement": "Dept Monthly Reimbursement",
  264. "deptMonthlySubmitted": "Dept Submitted This Month",
  265. "deptPendingDocuments": "Dept Pending Documents",
  266. "scopeMyApplications": "My Initiated",
  267. "scopeSubordinates": "Subordinate Approvals"
  268. },
  269. "expenseApply": {
  270. "expenseApplyList": "Expense Application List",
  271. "expenseApplyDetail": "Expense Application Details",
  272. "statusConvertedToExpense": "Converted to Expense",
  273. "expenseApplyRequest": "Expense Application",
  274. "expenseApplyImport": "Import Approved Applications",
  275. "importApprovedPreApp": "Import Approved Applications",
  276. "importExpenseApply": "Import Expense Application",
  277. "confirmImport": "Confirm Import",
  278. "importSuccess": "Import successful",
  279. "searchExpenseApply": "Search application no. or applicant",
  280. "noExpenseApplications": "No applications",
  281. "reportExpenseApply": "Expense Application Report",
  282. "reportExpenseApplyDetail": "Expense Application Detail Report",
  283. "emergencyLevel": "Urgency",
  284. "feeType": "Fee Type",
  285. "feeReason": "Fee Reason",
  286. "enterFeeReason": "Enter fee reason",
  287. "applyReason": "Application Reason",
  288. "expenseApplyReason": "Purpose",
  289. "enterApplyReason": "Enter application reason",
  290. "validUntil": "Valid Until",
  291. "selectExpiryDate": "Select expiry date",
  292. "relatedContractNo": "Related Contract No.",
  293. "referenceNo": "Reference No.",
  294. "relatedControl": "Related Control",
  295. "availableBudget": "Available Budget",
  296. "overBudget": "Over budget {amount}",
  297. "overBudgetTriggerApproval": "Your amount exceeds the budget. Submission will trigger the executive approval process.",
  298. "expenseDetails": "Expense Details",
  299. "addDetail": "Add Expense Detail",
  300. "addAtLeastOneDetail": "Please add at least one expense detail",
  301. "noDetailHint": "No details, tap above to add",
  302. "detailRemark": "Detail Remark",
  303. "expenseProject": "Expense Item",
  304. "expenseCategory": "Expense Category",
  305. "selectExpenseCategory": "Select expense category",
  306. "acctSubject": "GL Account",
  307. "selectAcctSubject": "Auto-filled from expense category",
  308. "costDept": "Cost Department",
  309. "selectCostDept": "Select cost department",
  310. "estimatedAmount": "Estimated Amount",
  311. "enterEstimatedAmount": "Enter estimated amount",
  312. "estimatedAmountPositive": "Estimated amount must be greater than 0",
  313. "quantity": "Quantity",
  314. "quantityPricePositive": "Quantity and price must be greater than 0",
  315. "unit": "Unit",
  316. "unitPrice": "Unit Price",
  317. "selectUnit": "Select unit",
  318. "estimatedStartDate": "Estimated Start Date",
  319. "estimatedEndDate": "Estimated End Date",
  320. "estimatedDate": "Estimated Date",
  321. "detailList": "Detail List",
  322. "items": "items",
  323. "selectEstimatedStartDate": "Please select estimated start date",
  324. "selectEstimatedEndDate": "Please select estimated end date",
  325. "startDateNotAfterEndDate": "Start date cannot be later than end date",
  326. "transportType": "Transport Type",
  327. "selectTransport": "Select transport",
  328. "isOvernight": "Overnight",
  329. "travelExpense": "Travel Expense",
  330. "entertainmentExpense": "Entertainment Expense",
  331. "entertainmentTargetUnit": "Target Organization",
  332. "entertainmentLevel": "Entertainment Level",
  333. "selectEntertainmentLevel": "Select entertainment level",
  334. "externalCount": "External Attendees",
  335. "internalCount": "Internal Attendees",
  336. "companionNotExceedGuest": "Internal attendees cannot exceed external guests",
  337. "venue": "Venue",
  338. "pleaseEnterLocation": "Please enter location",
  339. "meetingExpense": "Meeting Expense",
  340. "meetingLocation": "Meeting Location",
  341. "pleaseEnterMeetingLocation": "Please enter meeting location",
  342. "hintTravelFields": "Please fill in travel details (dates, transport, etc.)",
  343. "hintEntertainmentFields": "Please fill in entertainment details (target, level, guests, etc.)",
  344. "hintMeetingFields": "Please fill in meeting details (dates, venue, etc.)",
  345. "filterExpenseTravel": "Travel Expense",
  346. "filterExpenseEntertainment": "Entertainment",
  347. "filterExpenseOffice": "Office Expense",
  348. "filterExpenseMeeting": "Meeting Expense",
  349. "filterCritical": "Critical",
  350. "costCategoryTransport": "Transport",
  351. "costCategoryHotel": "Hotel",
  352. "costCategoryOfficeSupplies": "Office Supplies",
  353. "costCategoryMeals": "Meals",
  354. "costCategoryMaterials": "Materials",
  355. "costCategoryService": "Service Fee",
  356. "costCategoryOther": "Other",
  357. "unitPiece": "Piece",
  358. "unitRoom": "Room",
  359. "unitPerson": "Person",
  360. "unitDay": "Day",
  361. "unitSet": "Set",
  362. "transportPlane": "Plane",
  363. "transportHighSpeedRail": "High-Speed Rail",
  364. "transportTrain": "Train",
  365. "transportSelfDrive": "Self-Drive",
  366. "entertainmentVip": "VIP",
  367. "important": "Important",
  368. "isTaxIncluded": "Tax Included",
  369. "expenseType": "Expense Type",
  370. "selectAtLeastOneExpenseType": "Please select at least one expense type",
  371. "expenseTypeProcurement": "Daily Procurement",
  372. "expenseTypeActivity": "Activity Funds",
  373. "expenseTypeTraining": "Training Fee",
  374. "mockAttachmentAdded": "Attachment added (mock)",
  375. "attachmentUpload": "Attachment Upload",
  376. "maxAttachment": "Up to 9 attachments, support image/PDF/Word/Excel (image ≤10MB, doc ≤20MB)",
  377. "attachments": "Attachments",
  378. "pickImage": "Select Image",
  379. "pickFile": "Select File",
  380. "fileTooLarge": "File size exceeds limit",
  381. "imageSizeLimit": "Image must be ≤${max}MB",
  382. "fileSizeLimit": "File must be ≤${max}MB",
  383. "addExpenseDetailFirst": "Please add expense items in the details"
  384. },
  385. "expense": {
  386. "expenseList": "Expense List",
  387. "expenseDetail": "Expense Details",
  388. "editExpense": "Edit Expense",
  389. "expenseApply": "Reimbursement",
  390. "searchExpense": "Search expense No. or applicant",
  391. "noExpenses": "No expense reports",
  392. "reportExpense": "Expense Report",
  393. "reportExpenseDetail": "Expense Detail Report",
  394. "expenseDate": "Expense Date",
  395. "expenseNo": "Expense No.",
  396. "autoGenerated": "Auto-generated",
  397. "currency": "Currency",
  398. "selectCurrency": "Select currency",
  399. "paymentMethod": "Payment Method",
  400. "bankTransfer": "Bank Transfer",
  401. "cash": "Cash",
  402. "alipay": "Alipay",
  403. "wechat": "WeChat Pay",
  404. "bankAccountName": "Account Name",
  405. "selectPaymentMethod": "Select payment method",
  406. "voucherNo": "Voucher No.",
  407. "enterVoucherNo": "Enter voucher no.",
  408. "remark": "Remark",
  409. "enterRemark": "Enter remark",
  410. "generateVoucher": "Generate Voucher",
  411. "receiptAccount": "Receipt Account",
  412. "bankName": "Bank Name",
  413. "accountName": "Account Name",
  414. "bankAccount": "Bank Account",
  415. "selectBank": "Please select bank",
  416. "enterBankAccount": "Enter bank account",
  417. "bankSelection": "Bank selection is under development",
  418. "bankAccountInput": "Bank account input is under development",
  419. "expenseAmount": "Expense Amount",
  420. "totalExpense": "Total Expense",
  421. "approvedTotal": "Approved Total",
  422. "amount": "Amount",
  423. "enterAmount": "Enter amount",
  424. "enterValidAmount": "Enter a valid amount",
  425. "amountMustPositive": "Amount must be greater than 0",
  426. "amountExcludingTax": "Excl. Tax Amount",
  427. "amountInclTax": "Incl. Tax Amount",
  428. "amountPositive": "Amount must be greater than 0",
  429. "taxAmount": "Tax Amount",
  430. "taxRate": "Tax Rate",
  431. "exchangeRate": "Exchange Rate",
  432. "approvedAmount": "Approved Amount",
  433. "expenseName": "Expense Name",
  434. "enterExpenseName": "Enter expense item name",
  435. "description": "Description",
  436. "addExpenseDetail": "Add Expense Detail",
  437. "invoiceUpload": "Invoice Upload",
  438. "maxInvoices": "Up to 9 invoices",
  439. "invoiceAttachment": "Invoice Attachment",
  440. "noInvoice": "No invoice attachments",
  441. "invoiceCheck": "Invoice Compliance Check",
  442. "invoiceCheck1": "Invoice info matches the expense",
  443. "invoiceCheck2": "Invoice amount matches the expense amount",
  444. "invoiceCheck3": "Invoice date is within validity",
  445. "invoiceCheck4": "Invoice title is the full company name",
  446. "project": "Project",
  447. "relatedProject": "Related Project",
  448. "budgetSubject": "Budget Account",
  449. "costCenter": "Cost Center",
  450. "selectProject": "Select related project",
  451. "selectProjectAndSubject": "Select project and budget account",
  452. "selectSubject": "Please select account",
  453. "selectCostCenter": "Please select cost center",
  454. "projectSelection": "Project selection is under development",
  455. "budgetSubjectSelection": "Budget account is under development",
  456. "costCenterSelection": "Cost center is under development",
  457. "projectCode": "Project Code",
  458. "subjectCode": "Account Code",
  459. "projectCategory": "Project Category",
  460. "expenseReason": "Expense Reason",
  461. "enterExpenseReason": "Enter expense reason",
  462. "customerVendor": "Customer/Vendor",
  463. "offsetAmount": "Offset Amount",
  464. "financialArchive": "Financial Archive",
  465. "archiveDate": "Archive Date",
  466. "archiver": "Archiver",
  467. "financeDept": "Finance Dept",
  468. "isInvoiceVerified": "Invoice Verified",
  469. "isTaxIdMatched": "Tax ID Matched",
  470. "isCategoryCompliant": "Category Compliant",
  471. "paymentStatus": "Payment Status",
  472. "confirmPaymentAndArchive": "Confirm Payment & Archive",
  473. "confirmPaymentAndArchiveTip": "Confirm to pay and archive this expense? This cannot be undone.",
  474. "nextPendingPayment": "Next Pending Payment",
  475. "allPaymentsProcessed": "All pending payments have been processed",
  476. "paymentArchiveSuccess": "Payment and archive completed"
  477. },
  478. "overtime": {
  479. "overtimeList": "Overtime Records",
  480. "overtimeDetail": "Overtime Details",
  481. "overtimeApply": "Overtime Application",
  482. "overtimeRecords": "Overtime Records",
  483. "searchOvertime": "Search overtime no. or applicant",
  484. "noOvertimes": "No overtime records",
  485. "reportOvertime": "Overtime Report",
  486. "reportOvertimeDetail": "Overtime Detail Report",
  487. "overtimeInfo": "Overtime Info",
  488. "overtimeType": "Overtime Type",
  489. "overtimeReason": "Overtime Reason",
  490. "compensationMethod": "Compensation Method",
  491. "netOvertimeHours": "Net Overtime Hours",
  492. "enterOvertimeReason": "Please describe the overtime reason in detail",
  493. "workdayOvertime": "Workday Overtime",
  494. "weekendOvertime": "Weekend Overtime",
  495. "holidayOvertime": "Holiday Overtime",
  496. "overtimePay": "Overtime Pay",
  497. "compLeave": "Comp Leave",
  498. "selectOvertimeType": "Select overtime type",
  499. "selectCompensationMethod": "Select compensation method",
  500. "compensationOvertimePay": "Overtime Pay",
  501. "compensationCompLeave": "Comp Leave",
  502. "compensationMixed": "Mixed",
  503. "workday": "Workday",
  504. "weekend": "Weekend",
  505. "holiday": "Holiday"
  506. },
  507. "vehicle": {
  508. "vehicleList": "Vehicle Records",
  509. "vehicleApply": "Vehicle Application",
  510. "vehicleDetail": "Vehicle Details",
  511. "vehicleRecords": "Vehicle Records",
  512. "searchVehicle": "Search vehicle no. or applicant",
  513. "noVehicles": "No vehicle records",
  514. "reportVehicle": "Vehicle Report",
  515. "reportVehicleDetail": "Vehicle Detail Report",
  516. "vehicleInfo": "Vehicle Info",
  517. "vehicleReason": "Vehicle Reason",
  518. "vehiclePurpose": "Vehicle Purpose",
  519. "selectVehicle": "Select vehicle",
  520. "selectPlate": "Please select license plate",
  521. "noVehicle": "No vehicle specified",
  522. "enterVehicleReason": "Enter vehicle reason",
  523. "selectVehicleReason": "Select vehicle reason",
  524. "departureLocation": "Departure Location",
  525. "destination": "Destination",
  526. "enterDestination": "Enter destination",
  527. "passengerCount": "Passenger Count",
  528. "companion": "Companion",
  529. "selectCompanion": "Select companion",
  530. "estimatedTime": "Estimated Time",
  531. "estimatedMileage": "Estimated Mileage",
  532. "tripPreview": "Trip Preview",
  533. "tripRoute": "Trip Route",
  534. "mapPreview": "Map Route Preview",
  535. "snMapPickerComingSoon": "Map picker coming soon",
  536. "mapPickerComingSoon": "Map picker coming soon",
  537. "gpsLocating": "Locating via GPS…",
  538. "gpsLocatingWait": "Locating via GPS, please wait",
  539. "gpsFailed": "Unable to get current location",
  540. "gpsFailedHint": "Please check location permission settings",
  541. "gpsSuccess": "GPS located successfully",
  542. "gpsPermission": "Unable to get GPS location, please check location permission",
  543. "origin": "Origin",
  544. "sedan": "Sedan",
  545. "suv": "SUV",
  546. "businessVan": "Business Van",
  547. "customerReception": "Customer Reception",
  548. "businessTrip": "Business Trip",
  549. "internalAffairs": "Internal Affairs",
  550. "official": "Official",
  551. "returnCarRegister": "Return Registration",
  552. "confirmReturnCar": "Confirm Return",
  553. "confirmReturn": "Confirm return and register",
  554. "reEdit": "Re-edit",
  555. "returnCarArchived": "Return archived",
  556. "returnCarArchivedAt": "Return archived at {time}",
  557. "mileageBefore": "Mileage before (km)",
  558. "mileageAfter": "Mileage after (km)",
  559. "actualCost": "Actual cost (CNY)",
  560. "costRemarkLabel": "Cost remark (tolls/parking, etc.)",
  561. "returnCarSubmitted": "Return registration submitted",
  562. "returnTimeMustLater": "Return time must be later than departure time",
  563. "departTime": "Departure Time",
  564. "returnTime": "Return Time",
  565. "arriveTime": "Return Time",
  566. "earlyReturn": "Note: early return",
  567. "overReturnTime": "Warning: exceeded planned return time",
  568. "actualReturnTime": "Actual Return Time",
  569. "selectReturnTime": "Select actual return time",
  570. "navigation": "Navigation",
  571. "navigationComingSoon": "Navigation coming soon",
  572. "tapToViewNavigation": "Tap to view navigation",
  573. "mockOpenNavigation": "Mock: open native navigation",
  574. "submitConfirmContent": "Mileage and cost cannot be changed after submission. Continue?",
  575. "licensePlate": "License Plate",
  576. "selectLicensePlate": "Select license plate",
  577. "filterVehicle": "Vehicle Filter",
  578. "filterUsage": "Usage Filter",
  579. "filterReception": "Reception",
  580. "vehicleOccupied": "This vehicle is occupied during this period",
  581. "vehicleOccupiedPeriod": "The vehicle is booked for this period. Please choose another vehicle or adjust the time.",
  582. "mileageInvalid": "Return mileage cannot be less than departure mileage",
  583. "business": "Official"
  584. },
  585. "outingLog": {
  586. "outingLogList": "Outing Logs",
  587. "outingLogCreate": "New Outing Log",
  588. "outingLogDetail": "Outing Log Details",
  589. "searchOutingLog": "Search customer name or salesperson",
  590. "noOutingLogs": "No outing logs",
  591. "reportOutingLog": "Outing Log Report",
  592. "reportOutingLogDetail": "Outing Log Detail Report",
  593. "outingDetail": "Outing Details",
  594. "outingType": "Outing Type",
  595. "outingReason": "Outing Reason",
  596. "outingLocation": "Outing Location",
  597. "enterLocation": "Enter outing location",
  598. "enterOutingReason": "Enter outing reason and work details...",
  599. "workSummary": "Work Summary",
  600. "followUp": "Follow-up Plan",
  601. "workSummaryRequiredHint": "Please fill in the work summary (required)",
  602. "followUpOptional": "Follow-up plan (optional)",
  603. "sitePhotos": "Site Photos",
  604. "takePhoto": "Take Photo",
  605. "maxPhotoCount": "Up to 9 photos",
  606. "limitReached": "Limit reached",
  607. "tapToTakePhoto": "Tap to take photo (min 1)",
  608. "noPhotos": "No photos",
  609. "noComments": "No comments",
  610. "noPlan": " · No plan",
  611. "noWorkSummary": "No work summary",
  612. "customerVisit": "Customer Visit",
  613. "outingAffairs": "Outing Affairs",
  614. "selectOutingType": "Select outing type",
  615. "salesperson": "Salesperson",
  616. "salespersonLabel": "Sales: {name} · {dept}",
  617. "customerName": "Customer Name",
  618. "customerInfo": "Customer Info",
  619. "selectContact": "Select Contact",
  620. "selectContactHint": "Tap to select contact (optional)",
  621. "noContact": "No contacts for this customer",
  622. "searchCustomer": "Search customer name",
  623. "selectCustomerFirst": "Please select a customer first",
  624. "checkInAddress": "Check-in Address",
  625. "checkInTime": "Check-in Time",
  626. "watermarkHint": "Photos auto-add watermark: server time + GPS",
  627. "watermarkHintDynamic": "Auto watermark: server time + GPS ({lat}°N, {lng}°E)",
  628. "mockPhotoTaken": "Mock photo: Photo #{idx} taken (watermark: {time} | {lat}, {lng})",
  629. "outingLogSubmitted": "Outing log submitted",
  630. "newComment": "New Comment",
  631. "comments": "Comments",
  632. "managerComment": "Manager Comment",
  633. "selectRating": "Please select rating",
  634. "enterComment": "Please enter comment",
  635. "commentSent": "Comment sent",
  636. "requiredSummary": "Please fill in work summary",
  637. "requiredPhotos": "Take at least 1 photo",
  638. "inputComment": "Enter comment…"
  639. },
  640. "announcement": {
  641. "announcementList": "Announcement List",
  642. "announcementDetail": "Announcement Details",
  643. "announcementCreate": "Publish Announcement",
  644. "searchAnnouncement": "Search announcement title",
  645. "noAnnouncements": "No announcements",
  646. "announcementContent": "Announcement Content",
  647. "enterContent": "Enter announcement content...",
  648. "announcementType": "Announcement Type",
  649. "selectAnnouncementType": "Select announcement type",
  650. "publishSettings": "Publish Settings",
  651. "pinAnnouncement": "Pin Announcement",
  652. "recipientScope": "Recipient Scope",
  653. "selectRecipientScope": "Select recipient scope",
  654. "addAttachment": "Add Attachment",
  655. "attachmentPicker": "Mock: select attachment (PDF/image/Word/Excel, ≤20MB)",
  656. "attachmentLimit": "Up to 5 attachments, support PDF/image/Word/Excel, ≤20MB each",
  657. "announcementPublished": "Announcement published",
  658. "confirmPublishTitle": "Confirm Publish",
  659. "confirmPublishContent": "Confirm to publish {title}?",
  660. "expiryNever": "Never expires (optional)",
  661. "allStaff": "All Staff",
  662. "byDept": "By Department",
  663. "byDeptHint": "Multi-select by department tree",
  664. "byUser": "By Specific Users",
  665. "byUserHint": "Multi-select by employee search",
  666. "selectDept": "Select Department",
  667. "coverageCount": "Coverage Count",
  668. "scopeAllStaff": "Visible to all staff",
  669. "dingReminder": "One-tap DING reminder",
  670. "dingPromptSent": "Reminder sent to {count} unread staff",
  671. "readCount": "{count} read",
  672. "unreadCount": "{count} unread",
  673. "typeAndPublishDate": "{type} · shown after publishing",
  674. "titleNotFilled": "(No title)",
  675. "contentNotFilled": "(No content)",
  676. "announcementExpired": "This announcement expired on {date}",
  677. "selectedCount": "{count} selected",
  678. "auditTracking": "Reach rate audit tracking",
  679. "mockExpandReadList": "Mock: expand read staff list",
  680. "mockExpandUnreadList": "Mock: expand unread staff list",
  681. "announcementTypes": "Select announcement type",
  682. "previewTitle": "Preview",
  683. "enterTitle": "Enter announcement title (required)",
  684. "hrPolicy": "HR & Policy",
  685. "holidayActivity": "Holiday & Activity",
  686. "filterNotice": "Notice",
  687. "filterHr": "HR & Policy",
  688. "filterHoliday": "Holiday & Activity",
  689. "noticeAnnouncement": "Notice",
  690. "pinnedToast": "Pinned: ",
  691. "deletedToast": "Deleted: ",
  692. "markReadToast": "Marked as read: ",
  693. "markUnreadToast": "Marked as unread: ",
  694. "pinTopTag": "Pinned",
  695. "markRead": "Read",
  696. "markUnread": "Unread",
  697. "markAllRead": "Mark All Read",
  698. "published": "Announcement published",
  699. "publishAnnouncement": "Publish Announcement"
  700. },
  701. "report": {
  702. "reports": "Reports",
  703. "chartTitle1": "Reimbursement vs Approved Amount (Last 12 Months)",
  704. "chartTitle2": "Overtime Hours Trend (Last 12 Months)",
  705. "chartTitle3": "Vehicle Trips vs Total Cost (Last 12 Months)",
  706. "chartTitle4": "Monthly Trend",
  707. "chartTitle5": "Visits vs Avg Rating (Last 12 Months)",
  708. "chartDesc1": "Dual line comparison chart",
  709. "chartDesc2": "Bar trend chart",
  710. "chartDesc3": "Dual-axis line chart",
  711. "chartDesc4": "Dual line comparison chart",
  712. "chartDesc5": "Dual-axis line chart",
  713. "chartDeptExpenseCompare": "Dept Reimbursement vs Approved Amount",
  714. "chartDeptApplyCompare": "Dept Applied vs Approved Amount",
  715. "chartDeptOvertimeCompare": "Dept Total Overtime Hours",
  716. "chartDeptVehicleCompare": "Dept Vehicle Trips vs Cost",
  717. "chartDeptOutingCompare": "Dept Visits vs Avg Rating",
  718. "statTotalApproved": "Total Reimbursed",
  719. "statMonthCount": "This Month Count",
  720. "statTotalCount": "Total Bills",
  721. "statPendingApprove": "Pending Approval",
  722. "statPendingPayment": "Pending Payment",
  723. "statTotalApply": "Total Applied",
  724. "statApprovedCount": "Approved Count",
  725. "statApprovedAmount": "Approved Amount",
  726. "statTransferredCount": "Transferred",
  727. "statTransferredAmount": "Transferred Amount",
  728. "statMonthHours": "This Month Net Hours",
  729. "statMonthTrips": "This Month Trips",
  730. "statTotalMileage": "Total Mileage",
  731. "statTotalCost": "Tolls & Parking",
  732. "statNotReturned": "Not Returned",
  733. "statMonthVisits": "This Month Visits",
  734. "statVisitedCustomers": "Customers Visited",
  735. "statAvgRating": "Avg Rating",
  736. "statNotReviewed": "Unreviewed Logs",
  737. "yearApproved": "Reimbursed This Year",
  738. "monthCount": "This Month Count",
  739. "waitApprove": "Pending Approval",
  740. "waitPayment": "Pending Payment",
  741. "monthNetHours": "This Month Net Hours",
  742. "overtimeCount": "Overtime Count",
  743. "compHours": "Comp Leave Hours",
  744. "settleCount": "Settlement Count",
  745. "monthVehicle": "This Month Vehicle",
  746. "totalMileage": "Total Mileage",
  747. "totalCost": "Total Cost",
  748. "notReturned": "Not Returned",
  749. "yearTotalApp": "Total Amount",
  750. "approvedCount": "Approved Count",
  751. "approvedAmount": "Transferred Amount",
  752. "transferredAmount": "Transferred Amount",
  753. "monthVisits": "This Month Visits",
  754. "visitCustomers": "Customers Visited",
  755. "avgRating": "Avg Rating",
  756. "notReviewed": "Unreviewed",
  757. "paidTotal": "Total Paid",
  758. "pendingPaymentTotal": "Total Pending Payment",
  759. "abnormalReturns": "Abnormal Returns",
  760. "statExpenseTotal": "Total Expense",
  761. "statExpenseTotalCount": "Total Bills",
  762. "statTransferredToPmt": "Transferred to Pmt",
  763. "statTransferredToPmtAmount": "Transferred Amount",
  764. "approvedAmountLabel": "Approved Amount",
  765. "exportPlaceholder": "Export (placeholder)"
  766. },
  767. "messages": {
  768. "tabMessages": "Messages",
  769. "messageNotifications": "Message Notifications",
  770. "systemNotice": "System Notice",
  771. "approvalNotice": "Approval Notice",
  772. "systemMessage": "System Message",
  773. "minutesAgo": " min ago",
  774. "hoursAgo": " hr ago",
  775. "daysAgo": " days ago",
  776. "withdrawNotice": "Withdrawal Notice",
  777. "expiryReminder": "Expiry Reminder",
  778. "pendingApproval": "Pending Approval"
  779. },
  780. "admin": {
  781. "permissionManagement": "Permission Management",
  782. "permissionEdit": "Permission Edit",
  783. "quickPresets": "Quick Presets",
  784. "permissionItems": "Permission Items",
  785. "changeLog": "Change Log",
  786. "recentItems": "Recent {count} items",
  787. "confirmSave": "Confirm Save",
  788. "financeStaff": "Finance Staff",
  789. "systemAdmin": "System Admin",
  790. "regularEmployee": "Regular Employee",
  791. "employeeId": "Employee ID: ",
  792. "itDept": "IT Department",
  793. "adminDept": "Admin Department",
  794. "marketDept": "Marketing Department",
  795. "techDept": "Tech Department",
  796. "expenseApplyNo": "Application No.",
  797. "applyDate": "Apply Date",
  798. "critical": "Critical",
  799. "unused": "Unused",
  800. "partiallyUsed": "Partially Used",
  801. "fullyUsed": "Fully Used",
  802. "usageStatus": "Usage Status",
  803. "bankTransferNo": "Bank Transfer No.",
  804. "approvalStepSubmitted": "Submitted",
  805. "approvalStepApproved": "Approved",
  806. "approvalStepFinanceReview": "Finance Review",
  807. "approvalStepInvoice": "Invoice Verification",
  808. "approvalStepPayment": "Payment & Archive",
  809. "approvalStepArchive": "Archive",
  810. "approvalStepArchiveDesc": "Auto-archived after approval completes",
  811. "approvalStepPaymentDesc": "Pending all 3 verifications",
  812. "approvalDescSubmitted": "Zhang San",
  813. "approvalDescApproved": "Li Si — Approved",
  814. "approvalDescFinanceReview": "Wang — Finance Dept.",
  815. "approvalDescInvoice": "Wang — Finance Dept.",
  816. "draftFound": "Draft Found",
  817. "draftRestorePrompt": "An unfinished form was found. Restore it?",
  818. "discard": "Discard",
  819. "restore": "Restore",
  820. "noAttachment": "No attachments",
  821. "attachServiceUnavailable": "Attachment service unavailable",
  822. "noAttachmentPermission": "No attachment permission. Please contact admin to configure in ERP Special Password Settings",
  823. "downloadFailed": "Download failed",
  824. "downloadSuccess": "Saved to device",
  825. "openFailed": "Open failed",
  826. "downloading": "Downloading…",
  827. "headerAttachments": "Header Attachments",
  828. "detailLine": "Detail Line"
  829. }
  830. }