{ "appName": "TBOSS Workbench", "tabMessages": "Messages", "tabWorkbench": "Workbench", "tabProfile": "Profile", "loading": "Loading...", "loadFailed": "Load Failed", "noData": "No Data", "noMessages": "No Messages", "noExpenses": "No Expenses", "noOvertimes": "No Overtime Records", "noVehicles": "No Vehicle Records", "noAnnouncements": "No Announcements", "noOutingLogs": "No Outing Logs", "noDrafts": "No Drafts", "noCompletedRecords": "No Completed Records", "noExpenseApplications": "No Applications", "initiate": "New", "records": "Records", "more": "More", "myDashboard": "My Dashboard", "monthlyTotalExpense": "Monthly Total", "monthlySubmitted": "Monthly Submitted", "pendingDocuments": "Pending", "preApplication": "Pre-Application", "expenseReimbursement": "Expense Report", "vehicleApplication": "Vehicle Request", "overtimeApplication": "Overtime Request", "applicationRecords": "Applications", "expenseRecords": "Expense Records", "outingLogs": "Outing Logs", "companyAnnouncements": "Announcements", "myApprovals": "My Approvals", "myApplications": "My Applications", "subordinateRecords": "Subordinate Records", "myExpenses": "My Expenses", "outingLog": "Outing Log", "announcements": "Announcements", "settings": "Settings", "about": "About", "language": "Language", "darkMode": "Dark Mode", "themeDark": "Dark", "themeLight": "Light", "languageZhCN": "简体中文", "languageEn": "English", "languageZhTW": "繁體中文", "userName": "Zhang San", "salesDepartment": "Sales · Account Manager", "version": "TBOSS OA v2.13.0", "pinToTop": "Pin", "markRead": "Read", "markUnread": "Unread", "delete": "Delete", "all": "All", "myDrafts": "My Drafts", "draft": "Draft", "completed": "Completed", "pending": "Pending", "approved": "Approved", "rejected": "Rejected", "revoked": "Revoked", "expired": "Expired", "paid": "Paid", "returned": "Returned", "save": "Save", "submit": "Submit", "cancel": "Cancel", "confirm": "Confirm", "saveDraft": "Save Draft", "submitApproval": "Submit", "reset": "Reset", "publish": "Publish", "saveDraftShort": "Draft", "filterThisMonth": "This Month", "filterThisQuarter": "This Quarter", "filterThisYear": "This Year", "filterThisWeek": "This Week", "filterNotice": "Notices", "filterHr": "HR & Policy", "filterHoliday": "Holiday", "pinnedToast": "Pinned: ", "deletedToast": "Deleted: ", "markReadToast": "Mark read: ", "markUnreadToast": "Mark unread: ", "systemNotice": "System Notice", "approvalNotice": "Approval Notice", "systemMessage": "System Message", "minutesAgo": "min ago", "hoursAgo": "h ago", "daysAgo": "d ago", "statusPending": "Pending", "statusApproved": "Approved", "statusRejected": "Rejected", "statusDraft": "Draft", "statusRevoked": "Revoked", "statusReturned": "Returned", "statusDisabled": "Disabled", "statusWaitApprove": "Pending Approval", "statusWaitPay": "Pending Payment", "filterAll": "All", "pinTopTag": "Pinned", "noticeAnnouncement": "Notice", "withdraw": "Withdraw", "confirmReturn": "Confirm Return", "reject": "Reject", "approve": "Approve", "edit": "Edit", "withdrawAction": "Withdraw", "confirmApprove": "Confirm Approve", "confirmReject": "Confirm Reject", "confirmAction": "Confirm {action}?", "approvalComment": "Approval Comment (optional)", "applyFilter": "Apply Filter", "basicInfo": "Basic Info", "noDetailData": "No detail data", "noInvoice": "No invoice", "add": "Add", "total": "Total", "creator": "Creator", "dept": "Dept", "date": "Date", "startTime": "Start Time", "endTime": "End Time", "pleaseSelect": "Please Select", "selectDateTime": "Select Date Time", "no": "None", "selectOrFill": "Select or enter", "send": "Send", "business": "Business", "unknown": "Unknown", "other": "Other", "normal": "Normal", "urgent": "Urgent", "public": "All", "newComment": "New Comment", "salespersonLabel": "Sales: {name} · {dept}", "noPlan": "No Plan", "noWorkSummary": "No Work Summary", "downloadAttachment": "Download", "draftSaved": "Draft saved", "submitSuccess": "Submitted", "published": "Published", "withdrawn": "Withdrawn", "featureDev": "{feature} in development", "requiredField": "Required", "unknownError": "Unknown error", "networkTimeout": "Network timeout", "confirmPrompt": "Confirm {action}?", "approvalProgress": "Approval Progress", "opinion": "Comment: ", "currentNode": "Current Node", "waitHandle": "Pending", "inputComment": "Enter comment...", "applicant": "Applicant", "department": "Department", "expenseType": "Expense Type", "expenseAmount": "Amount", "relatedProject": "Project", "budgetSubject": "Budget Subject", "costCenter": "Cost Center", "totalExpense": "Total", "receiptAccount": "Receipt Account", "bankName": "Bank", "accountName": "Account Name", "bankAccount": "Account No.", "expenseDetails": "Expense Details", "addExpenseDetail": "Add Detail", "invoiceUpload": "Invoice Upload", "maxInvoices": "Up to 9 invoices", "addDetail": "Add Detail", "expenseName": "Expense Name", "amount": "Amount", "description": "Description", "invoiceCheck": "Invoice Check", "invoiceCheck1": "Invoice matches expense", "invoiceCheck2": "Amount matches", "invoiceCheck3": "Date valid", "invoiceCheck4": "Title is company name", "approvalFlow": "Approval Flow", "financialArchive": "Financial Archive", "voucherNo": "Voucher No.", "archiveDate": "Archive Date", "archiver": "Archiver", "financeDept": "Finance", "expenseProject": "Expense Item", "expenseReason": "Expense Reason", "enterExpenseReason": "Enter reason", "selectProject": "Select project", "selectSubject": "Select subject", "selectCostCenter": "Select cost center", "selectBank": "Select bank", "enterBankAccount": "Enter account", "overtimeInfo": "Overtime Info", "overtimeType": "Overtime Type", "compensationMethod": "Compensation", "netOvertimeHours": "Net Hours", "overtimeReason": "Overtime Reason", "enterOvertimeReason": "Enter reason", "workdayOvertime": "Workday OT", "weekendOvertime": "Weekend OT", "holidayOvertime": "Holiday OT", "overtimePay": "OT Pay", "compLeave": "Comp Leave", "vehicleInfo": "Vehicle Info", "selectVehicle": "Select Vehicle", "selectPlate": "Select plate", "vehicleOccupied": "Vehicle occupied", "vehicleReason": "Vehicle Reason", "departureLocation": "Departure", "gpsLocating": "GPS locating...", "destination": "Destination", "enterDestination": "Enter destination", "passengerCount": "Passengers", "estimatedTime": "Est. Time", "estimatedMileage": "Est. Mileage", "tripPreview": "Trip Preview", "mapPreview": "Map Preview", "noVehicle": "No vehicle", "sedan": "Sedan", "suv": "SUV", "businessVan": "Van", "customerReception": "Customer Visit", "businessTrip": "Business Trip", "internalAffairs": "Internal", "selectVehicleReason": "Select reason", "enterField": "Enter {field}", "emergencyLevel": "Urgency", "feeType": "Fee Type", "feeReason": "Fee Reason", "enterFeeReason": "Enter reason", "relatedControl": "Related Control", "availableBudget": "Available Budget", "noDetailHint": "No details, tap above to add", "overBudget": "Over budget {amount}", "attachmentUpload": "Attachment Upload", "maxAttachment": "Up to 6 images or PDF", "attachments": "Attachments", "outingDetail": "Outing Detail", "outingType": "Outing Type", "outingLocation": "Location", "enterLocation": "Enter location", "outingReason": "Outing Reason", "enterOutingReason": "Enter reason", "workSummary": "Work Summary", "followUp": "Follow-up", "sitePhotos": "Site Photos", "customerVisit": "Customer Visit", "outingAffairs": "Outing Affairs", "selectOutingType": "Select type", "announcementContent": "Content", "enterContent": "Enter content...", "announcementType": "Announcement Type", "publishSettings": "Publish Settings", "pinAnnouncement": "Pin", "validUntil": "Valid Until", "recipientScope": "Recipients", "addAttachment": "Add Attachment", "selectAnnouncementType": "Select type", "selectRecipientScope": "Select scope", "auditTracking": "Audit Tracking", "dingReminder": "DING Reminder", "hrPolicy": "HR & Policy", "holidayActivity": "Holiday", "searchByNameOrId": "Search by name or ID...", "approver": "Approver", "financeStaff": "Finance", "systemAdmin": "System Admin", "regularEmployee": "Employee", "employeeId": "ID:", "itDept": "IT", "adminDept": "Admin", "marketDept": "Marketing", "techDept": "Tech", "yearApproved": "Year Approved", "monthCount": "Month Count", "waitApprove": "Pending Approval", "waitPayment": "Pending Payment", "chartTitle1": "12-Month Expense vs Approved", "chartDesc1": "Dual Line Chart", "monthNetHours": "Monthly Net Hours", "overtimeCount": "OT Count", "compHours": "Comp Hours", "settleCount": "Settle Count", "chartTitle2": "12-Month OT Hours Trend", "chartDesc2": "Bar Chart", "monthVehicle": "Monthly Vehicle", "totalMileage": "Total Mileage", "totalCost": "Total Cost", "notReturned": "Not Returned", "chartTitle3": "12-Month Usage vs Cost", "chartDesc3": "Dual Axis Chart", "yearTotalApp": "Year Total App", "approvedCount": "Approved Count", "approvedAmount": "Approved Amount", "chartTitle4": "12-Month Apply vs Approved", "chartDesc4": "Dual Line Chart", "monthVisits": "Monthly Visits", "visitCustomers": "Visited Customers", "avgRating": "Avg Rating", "notReviewed": "Not Reviewed", "chartTitle5": "12-Month Visits vs Rating", "chartDesc5": "Dual Axis Chart", "enterAmount": "Enter amount", "enterValidAmount": "Enter valid amount", "amountMustPositive": "Must be > 0", "maxChars": "Max {max} chars", "reports": "Reports", "publishAnnouncement": "Publish Announcement", "overtimeRecords": "Overtime Records", "vehicleRecords": "Vehicle Records", "reportExpenseApply": "Pre-App Report", "reportExpense": "Expense Report", "reportOvertime": "Overtime Report", "reportVehicle": "Vehicle Report", "reportOutingLog": "Outing Log Report", "pendingApproval": "Pending Approval", "markAllRead": "Mark All Read", "paidTotal": "Paid Total", "pendingPaymentTotal": "Pending Payment Total", "abnormalReturns": "Abnormal Returns", "withdrawNotice": "Withdraw Notice", "expiryReminder": "Expiry Reminder", "deptDashboard": "Dept Dashboard", "financeDashboard": "Finance Dashboard", "deptMonthlyReimbursement": "Dept Monthly Reimb.", "deptMonthlySubmitted": "Dept Monthly Submitted", "deptPendingDocuments": "Dept Pending Docs", "expenseList": "Expense List", "expenseApply": "Expense Report", "expenseDetail": "Expense Details", "editExpense": "Edit Expense", "overtimeList": "Overtime List", "overtimeDetail": "Overtime Details", "overtimeApply": "Overtime Application", "vehicleList": "Vehicle List", "vehicleApply": "Vehicle Application", "vehicleDetail": "Vehicle Details", "expenseApplyList": "Pre-Application List", "expenseApplyDetail": "Pre-Application Details", "expenseApplyRequest": "Pre-Application", "outingLogList": "Outing Logs", "outingLogCreate": "New Outing Log", "outingLogDetail": "Outing Log Details", "announcementList": "Announcements", "announcementDetail": "Announcement Details", "announcementCreate": "New Announcement", "messageNotifications": "Notifications", "reportExpenseDetail": "Expense Detail Report", "reportExpenseApplyDetail": "Pre-App Detail Report", "reportOvertimeDetail": "Overtime Detail Report", "reportVehicleDetail": "Vehicle Detail Report", "reportOutingLogDetail": "Outing Log Detail Report", "permissionManagement": "Permission Management", "invoiceAttachment": "Invoice Attachment", "customerInfo": "Customer Info", "close": "Close", "confirmSubmit": "Confirm Submit", "confirmPublish": "Confirm Publish", "origin": "Origin", "companion": "Companion", "selectLicensePlate": "Select Plate No.", "selectCompanion": "Select Companion", "returnCarRegister": "Return Car Registration", "confirmReturnCar": "Confirm Return", "actualReturnTime": "Actual Return Time", "tripRoute": "Trip Route", "reEdit": "Re-edit", "withdrawApplication": "Withdraw Application", "returnCarArchived": "Return Archived", "mileageBefore": "Mileage Before", "mileageAfter": "Mileage After", "actualCost": "Actual Cost", "returnCarSubmitted": "Return Submitted", "navigation": "Navigation", "navigationComingSoon": "Navigation Coming Soon", "selectReturnTime": "Select Return Time", "vehicleOccupiedPeriod": "Vehicle occupied in this period", "enterVehicleReason": "Enter vehicle reason", "mileageInvalid": "Return mileage cannot be less than departure mileage", "costRemarkLabel": "Cost Remark", "departTime": "Departure Time", "returnTime": "Return Time", "earlyReturn": "Early Return", "overReturnTime": "Over Return Time", "submitTimeText": "Submit Time", "arriveTime": "Return Time", "preview": "Preview", "custom": "Custom", "filterStatus": "Status", "filterPayment": "Payment", "filterVehicle": "Vehicle", "filterUsage": "Usage", "filterReception": "Reception", "official": "Official", "statTotalApproved": "Total Approved", "statMonthCount": "Month Count", "statPendingApprove": "Pending Approval", "statPendingPayment": "Pending Payment", "statTotalApply": "Total Applied", "statApprovedCount": "Approved Count", "statApprovedAmount": "Approved Amount", "statMonthHours": "Monthly Net Hours", "statMonthTrips": "Monthly Trips", "statTotalMileage": "Total Mileage", "statTotalCost": "Total Cost", "statNotReturned": "Not Returned", "statMonthVisits": "Monthly Visits", "statVisitedCustomers": "Visited Customers", "statAvgRating": "Avg Rating", "statNotReviewed": "Not Reviewed", "rejecter": "Rejecter", "currentApprover": "Current Approver", "expenseApplyImport": "Import approved pre-application", "importApprovedPreApp": "Import Approved Pre-Application", "projectSelection": "Project selection", "budgetSubjectSelection": "Budget subject selection", "costCenterSelection": "Cost center selection", "bankSelection": "Bank selection", "bankAccountInput": "Bank account input", "hours": "h", "permissionEdit": "Edit Permissions", "quickPresets": "Quick Presets", "permissionItems": "Permissions", "changeLog": "Change Log", "recentItems": "Recent {count}", "confirmSave": "Confirm Save", "clickChartToFilter": "Click chart to filter", "chartDeptExpenseCompare": "Dept Expense vs Approved", "chartDeptApplyCompare": "Dept Apply vs Approved", "chartDeptOvertimeCompare": "Dept OT Hours", "chartDeptVehicleCompare": "Dept Trips vs Cost", "chartDeptOutingCompare": "Dept Visits vs Rating", "selectOvertimeType": "Select OT Type", "selectCompensationMethod": "Select Compensation", "comments": "Comments", "managerComment": "Manager Comment", "noPhotos": "No Photos", "noComments": "No Comments", "selectRating": "Please select rating", "enterComment": "Please enter comment", "commentSent": "Comment sent", "requiredSummary": "Work summary required", "requiredPhotos": "Take at least 1 photo", "outingLogSubmitted": "Outing log submitted", "gpsFailed": "Cannot get location", "gpsFailedHint": "Check location permission settings", "retry": "Retry", "gpsPermission": "Cannot get GPS, check location permission", "gpsSuccess": "GPS located successfully", "draftSavedToast": "Draft saved", "selectContact": "Select Contact", "selectContactHint": "Tap to select contact (optional)", "searchCustomer": "Search customer name", "noContact": "No contacts for this customer", "selectCustomerFirst": "Please select a customer first", "takePhoto": "Take Photo", "maxPhotoCount": "Max 9 photos", "limitReached": "Limit Reached", "tapToTakePhoto": "Tap to take photo (min 1)", "watermarkHint": "Photos auto-add watermark: server time + GPS", "enterTitle": "Enter title (required)", "announcementTypes": "Select Type", "previewTitle": "Preview", "confirmPublishTitle": "Confirm Publish", "confirmPublishContent": "Publish announcement \"{title}\"?", "announcementPublished": "Announcement published", "attachmentPicker": "Select attachment", "attachmentLimit": "Max 5 attachments, PDF/Image/Word/Excel, ≤20MB each", "expiryNever": "Never expires (optional)", "allStaff": "All Staff", "byDept": "By Dept", "byUser": "By User", "selectDept": "Select Dept", "searchEmployeeHint": "Enter name or ID", "coverageCount": "Coverage", "scopeAllStaff": "All employees can view", "licensePlate": "Plate No.", "vehiclePurpose": "Vehicle Purpose", "addExpenseDetailFirst": "Please add expense details first", "submitConfirmContent": "Mileage and cost cannot be modified after submission. Continue?", "workday": "Workday", "weekend": "Weekend", "holiday": "Holiday", "paid": "Paid", "businessShort": "Business", "exportPlaceholder": "Export (placeholder)", "unitItem": "items", "addAtLeastOneDetail": "Please add at least one expense detail", "byDeptHint": "Multi-select by department tree", "byUserHint": "Multi-select by employee search", "checkInAddress": "Check-in Address", "checkInTime": "Check-in Time", "completeFormInfo": "Please complete the form", "confirmExit": "Confirm Exit", "confirmReset": "Confirm Reset", "continueEditing": "Continue Editing", "customerName": "Customer Name", "detailRemark": "Detail Remark", "discardAndExit": "Discard & Exit", "enterNumber": "Enter number", "entertainmentExpense": "Entertainment Expense", "entertainmentLevel": "Entertainment Level", "entertainmentTargetUnit": "Target Organization", "estimatedEndDate": "Estimated End Date", "estimatedStartDate": "Estimated Start Date", "expenseCategory": "Expense Category", "externalCount": "External Attendees", "followUpOptional": "Follow-up plan (optional)", "gpsLocatingWait": "GPS locating, please wait", "important": "Important", "internalCount": "Internal Attendees", "isOvernight": "Overnight", "isTaxIncluded": "Tax Included", "mapPickerComingSoon": "Map picker coming soon", "markedAsRead": "Marked as read", "meetingExpense": "Meeting Expense", "meetingLocation": "Meeting Location", "mockAttachmentAdded": "Attachment added (mock)", "mockExpandReadList": "Mock: Expand read list", "mockExpandUnreadList": "Mock: Expand unread list", "mockOpenNavigation": "Mock: Open native navigation", "optional": "Optional", "overBudgetTriggerApproval": "Over budget. Submission will trigger executive approval.", "personUnit": "person(s)", "pleaseEnter": "Please enter", "pleaseEnterLocation": "Please enter location", "pleaseEnterMeetingLocation": "Please enter meeting location", "quantity": "Quantity", "quantityPricePositive": "Quantity and price must be greater than 0", "relatedContractNo": "Related Contract No.", "resetWarning": "This will clear all content. This action cannot be undone.", "returnTimeMustLater": "Return time must be later than departure time", "salesperson": "Salesperson", "searchEmployee": "Search Employee", "selectAtLeastOneExpenseType": "Please select at least one expense type", "selectDate": "Select Date", "selectEntertainmentLevel": "Select Entertainment Level", "selectEstimatedEndDate": "Please select estimated end date", "selectEstimatedStartDate": "Please select estimated start date", "selectExpenseCategory": "Select Expense Category", "selectExpiryDate": "Select Expiry Date", "selectTransport": "Select Transport", "selectUnit": "Select Unit", "submitFailedRetry": "Submission failed, please try again later", "submittedAwaitingApproval": "Submitted, awaiting approval", "tapToViewNavigation": "Tap to view navigation", "transportType": "Transport Type", "travelExpense": "Travel Expense", "unit": "Unit", "unitPrice": "Unit Price", "unsavedContentWarning": "Unsaved content will be lost. Continue?", "venue": "Venue", "workSummaryRequiredHint": "Please fill in work summary (required)", "dingPromptSent": "Sent reminders to {count} unread employees", "readCount": "Read {count} person(s)", "unreadCount": "Unread {count} person(s)", "typeAndPublishDate": "{type} · Will display after publishing", "titleNotFilled": "(Title not filled)", "contentNotFilled": "(Content not filled)", "mockPhotoTaken": "Mock photo: Photo #{idx} taken (watermark: {time} | {lat}, {lng})", "announcementExpired": "This announcement expired on {date}", "returnCarArchivedAt": "Return archived at {time}", "selectProject": "Select Project", "selectedCount": "{count} selected", "watermarkHintDynamic": "Auto watermark: server time + GPS ({lat}°N, {lng}°E)", "tdOpen": "On", "tdClose": "Off", "tdCancel": "Cancel", "tdConfirm": "Confirm", "tdOther": "Other", "tdReset": "Reset", "tdLoading": "Loading", "tdLoadingWithPoint": "Loading...", "tdKnew": "Got it", "tdRefreshing": "Refreshing", "tdReleaseRefresh": "Release to refresh", "tdPullToRefresh": "Pull to refresh", "tdCompleteRefresh": "Refresh complete", "tdDays": "d", "tdHours": "h", "tdMinutes": "min", "tdSeconds": "s", "tdMilliseconds": "ms", "tdYearLabel": "Y", "tdMonthLabel": "M", "tdDateLabel": "D", "tdWeeksLabel": "W", "tdSunday": "Sun", "tdMonday": "Mon", "tdTuesday": "Tue", "tdWednesday": "Wed", "tdThursday": "Thu", "tdFriday": "Fri", "tdSaturday": "Sat", "tdYear": "Year", "tdJanuary": "Jan", "tdFebruary": "Feb", "tdMarch": "Mar", "tdApril": "Apr", "tdMay": "May", "tdJune": "Jun", "tdJuly": "Jul", "tdAugust": "Aug", "tdSeptember": "Sep", "tdOctober": "Oct", "tdNovember": "Nov", "tdDecember": "Dec", "tdTime": "Time", "tdStart": "Start", "tdEnd": "End", "tdNotRated": "Not rated", "tdCascadeLabel": "Select option", "tdBack": "Back", "tdTop": "Top", "tdEmptyData": "No data", "confirmPaymentAndArchive": "Confirm Payment & Archive", "confirmPaymentAndArchiveTip": "Confirm payment and archive for this expense? This action cannot be undone.", "nextPendingPayment": "Next Pending Payment", "allPaymentsProcessed": "All pending payments have been processed", "paymentArchiveSuccess": "Payment archived successfully", "withdrawConfirm": "Confirm Withdrawal", "withdrawConfirmTip": "Confirm withdrawal of this application? The approval process will be terminated." }