diff --git a/src/locales/en-US.js b/src/locales/en-US.js
index b2c2e57..d3f82f0 100644
--- a/src/locales/en-US.js
+++ b/src/locales/en-US.js
@@ -1,1740 +1,1748 @@
-export default {
- common: {
- submit: 'Submit',
- close: 'Close',
- exit: 'Exit',
- notice: 'Notice',
- moduleBuilding: 'This module is under construction',
- updateSuccess: 'Updated successfully',
- confirmLogout: 'Are you sure you want to log out?',
- languageSwitched: 'Language switched',
- more: 'More',
- reset: 'Reset',
- complete: 'Done',
- edit: 'Edit',
- saveFailed: 'Save failed'
- },
- tab: {
- home: 'Home',
- report: 'Reports',
- work: 'Manage',
- mine: 'Mine'
- },
- work:{
- mold: '模具',
- equipmentMaintenance: 'Equipment Maintenance',
- keypart: '关键件',
- spare: '备件',
- },
- nav: {
- home: 'Home',
- mine: 'Profile',
- avatar: 'Edit Avatar',
- info: 'Profile',
- editInfo: 'Edit Profile',
- pwd: 'Change Password',
- setting: 'App Settings',
- help: 'FAQ',
- about: 'About'
- },
- dashboard: {
- welcome: 'Welcome to',
- subtitle: 'Besure Digital Intelligent Control Platform',
- functionNav: 'Function Navigation',
- editNavMenu: 'Edit Shortcuts',
- configuredNav: 'Added',
- unconfiguredNav: 'Add More',
- dragHint: 'Drag icons to reorder, icons above will be displayed in control center',
- clickHint: 'Tap icons to add or remove from configuration',
- allNavMenu: 'All Functions',
- productionOverview: 'Production Overview',
- qualityOverview: 'Quality Overview',
- productionPlan: 'Production Summary',
- production: 'Production',
- quality: 'Quality',
- totalCount: 'Total',
- passCount: 'Pass Count',
- failCount: 'Fail Count',
- qualityTrend: 'Quality Trend',
- chartPlaceholder: 'Chart loading...',
- totalWangongNumber: 'Total Reported',
- totalPassNumber: 'Total Passed',
- totalNoPassNumber: 'Total Failed',
- totalPassRate: 'Total Pass Rate',
- productPassRateRanking: 'Product Pass Rate Ranking',
- passNumber: 'Pass Count',
- noPassNumber: 'Fail Count',
- periodLastWeek: 'Last Week',
- periodThisWeek: 'This Week',
- periodLast7Days: 'Last 7 Days',
- periodLastMonth: 'Last Month',
- periodThisMonth: 'This Month',
- periodLastYear: 'Last Year',
- collapseList: 'Collapse',
- viewMore: 'View More ›',
- productName: 'Product',
- pipeline: 'Production Line',
- planNumber: 'Planned Qty',
- planStart: 'Start',
- planEnd: 'End',
- back: 'Back',
- todoTitle: 'To-do Tasks',
- noTodo: 'No pending tasks',
- taskCode: 'Task Code: {value}',
- taskType: 'Task Type: {value}',
- taskTarget: 'Target: {value}',
- createTime: 'Created At: {value}',
- all: 'Total',
- pending: 'Pending',
- running: 'In Progress',
- finished: 'Done',
- mold: 'Mold',
- equipment: 'Equipment',
- keypart: 'Key Part',
- spare: 'Spare Part',
- product: 'Product Material',
- statusScheduled: 'Scheduled',
- statusTrial: 'Trial',
- statusMass: 'Mass',
- statusPause: 'Paused',
- statusWaitStockIn: 'Waiting Stock-in',
- viewPlan: 'View Plan: {code}',
- filterTask: 'Task',
- filterProduct: 'Product',
- dateRange: 'Date Range',
- startDate: 'Start Time',
- endDate: 'End Time',
- baogongNum: 'Reported',
- passNum: 'Qualified',
- noPassNum: 'Unqualified',
- passRate: 'Pass Rate',
- trendChart: 'Trend',
- taskPlaceholder: 'Task mode under development',
- totalTask: 'Total Tasks',
- issuedNum: 'Issued',
- partialScheduledNum: 'Partial Scheduled',
- waitingProduction: 'Waiting',
- producing: 'Producing',
- completed: 'Completed',
- taskTrend: 'Task Trend',
- rangeYear: 'Last Year',
- rangeMonth: 'This Month',
- rangeWeek: 'This Week',
- rangeToday: 'Today',
- rangeCustom: 'Custom',
- monday: 'Mon',
- tuesday: 'Tue',
- wednesday: 'Wed',
- thursday: 'Thu',
- friday: 'Fri',
- saturday: 'Sat',
- sunday: 'Sun'
- },
- deviceOverview: {
- title: 'Device Overview',
- totalDevices: 'Total',
- runningCount: 'Running',
- standbyCount: 'Standby',
- faultCount: 'Fault',
- offlineCount: 'Offline',
- utilizationRate: 'Utilization',
- bootRate: 'Boot Rate',
- faultRate: 'Fault Rate',
- rateTrend: 'Utilization / Boot Rate Trend',
- onlyScheduled: 'Scheduled Only',
- skipHoliday: 'Skip Holidays',
- periodLastWeek: 'Last Week',
- periodThisWeek: 'This Week',
- periodLast7Days: 'Last 7 Days',
- periodLastMonth: 'Last Month',
- periodThisMonth: 'This Month',
- periodLastYear: 'Last Year',
- utilizationRanking: 'Last 7 Days Utilization Ranking',
- utilizationRateTrend: 'Utilization Rate',
- deviceRateTrend: 'Single Device 7-Day Utilization/Boot Rate Trend',
- selectDevice: 'Select Device',
- selectDeviceHint: 'Please select a device to view trend'
- },
- taskList: {
- filter: 'Filter',
- code: 'Task Code',
- status: 'Status',
- taskType: 'Task Type',
- orderDate: 'Order Date',
- deliveryDate: 'Delivery Date',
- remark: 'Remark',
- createTime: 'Create Time',
- totalNumber: 'Total',
- planNumber: 'Planned',
- unPlanNumber: 'Unplanned',
- storedPlanNumber: 'Stored',
- urgent: 'Urgent',
- noData: 'No task data',
- viewTask: 'View Task: {code}'
- },
- planList: {
- taskCode: 'Task Code',
- planCode: 'Plan Code',
- employeeName: 'Reporter',
- baogongNum: 'Reported',
- passNum: 'Passed',
- noPassNum: 'Failed',
- passRate: 'Pass Rate',
- baogongTime: 'Report Time',
- reason: 'Reason',
- noData: 'No report data',
- viewDetail: 'View Detail: {code}'
- },
- functionCommon: {
- search: 'Search',
- reset: 'Reset',
- cancel: 'Cancel',
- confirm: 'Confirm',
- save: 'Save',
- loading: 'Loading...',
- loadingMore: 'Loading more...',
- noMoreData: 'No more data',
- noIdView: 'Missing ID, cannot view details',
- noIdEdit: 'Missing ID, cannot edit',
- noIdDelete: 'Missing ID, cannot delete',
- loadFailed: 'Load failed',
- deleteSuccess: 'Deleted successfully',
- deleteFailed: 'Delete failed',
- saveSuccess: 'Saved successfully',
- saveFailed: 'Save failed',
- createSuccess: 'Created successfully',
- updateSuccess: 'Updated successfully',
- confirmDelete: 'Confirm deletion',
- uploading: 'Uploading',
- uploadImageFailed: 'Image upload failed',
- yes: 'Yes',
- no: 'No',
- all: 'All',
- noMore: 'No more data',
- confirmTitle: 'Confirm'
- },
- moldGet: {
- moduleName: 'Mold Stock-out',
- subTitle: 'Filter quickly by no and status',
- detailTitle: 'Mold Stock-out Detail',
- basicInfo: 'Basic Info',
- outNo: 'Stock-out No',
- outType: 'Stock-out Type',
- outTime: 'Stock-out Time',
- outTimeSingle: 'Stock-out Date',
- outTimePlaceholder: 'Select stock-out date',
- warehouse: 'Warehouse',
- allWarehouse: 'All Warehouses',
- warehousePlaceholder: 'Select warehouse',
- creator: 'Creator',
- status: 'Status',
- allStatus: 'All Status',
- remark: 'Remark',
- itemRemark: 'Item Remark',
- attachment: 'Attachment',
- fileUrlPlaceholder: 'Enter attachment URL',
- remarkPlaceholder: 'Enter remark',
- moldName: 'Mold',
- moldCode: 'Mold Code',
- moldStatus: 'Mold Status',
- moldUseTime: 'Use Time',
- machineName: 'Machine',
- isEnable: 'Enabled',
- createTime: 'Created At',
- searchNo: 'Enter stock-out no',
- searchMold: 'Enter mold code or name',
- searchCode: 'Enter mold code',
- searchName: 'Enter mold name',
- itemListTitle: 'Item List',
- selectMold: 'Select Mold',
- noItems: 'No items',
- count: 'Count',
- noAuto: 'Generated automatically',
- createTitle: 'Create Mold Stock-out',
- editTitle: 'Edit Mold Stock-out',
- edit: 'Edit',
- delete: 'Delete',
- approve: 'Approve',
- empty: 'No mold stock-out data',
- noMoldData: 'No mold options',
- loadEditFailed: 'Failed to load edit data',
- validatorOutTimeRequired: 'Stock-out date is required',
- validatorWarehouseRequired: 'Warehouse is required',
- validatorItemRequired: 'Select at least one mold',
- validatorCountRequired: 'Count must be greater than 0',
- confirmDelete: 'Delete stock-out {no}?',
- confirmApprove: 'Approve stock-out {no}?',
- approveSuccess: 'Approved successfully'
- },
- moldReturn: {
- moduleName: 'Mold Stock-in',
- subTitle: 'Filter quickly by no and status',
- detailTitle: 'Mold Stock-in Detail',
- basicInfo: 'Basic Info',
- inNo: 'Stock-in No',
- inType: 'Stock-in Type',
- inTime: 'Stock-in Time',
- inTimeSingle: 'Stock-in Date',
- inTimePlaceholder: 'Select stock-in date',
- warehouse: 'Warehouse',
- allWarehouse: 'All Warehouses',
- warehousePlaceholder: 'Select warehouse',
- creator: 'Creator',
- status: 'Status',
- allStatus: 'All Status',
- remark: 'Remark',
- itemRemark: 'Item Remark',
- attachment: 'Attachment',
- fileUrlPlaceholder: 'Enter attachment URL',
- remarkPlaceholder: 'Enter remark',
- moldName: 'Mold',
- moldCode: 'Mold Code',
- moldStatus: 'Mold Status',
- moldUseTime: 'Use Time',
- searchNo: 'Enter stock-in no',
- searchCode: 'Enter mold code',
- searchName: 'Enter mold name',
- itemListTitle: 'Item List',
- selectMold: 'Select Mold',
- noItems: 'No items',
- count: 'Count',
- noAuto: 'Generated automatically',
- createTitle: 'Create Mold Stock-in',
- editTitle: 'Edit Mold Stock-in',
- approve: 'Approve',
- empty: 'No mold stock-in data',
- noMoldData: 'No mold options',
- loadEditFailed: 'Failed to load edit data',
- validatorInTimeRequired: 'Stock-in date is required',
- validatorWarehouseRequired: 'Warehouse is required',
- validatorItemRequired: 'Select at least one mold',
- validatorCountRequired: 'Count must be greater than 0',
- confirmDelete: 'Delete stock-in {no}?',
- confirmApprove: 'Approve stock-in {no}?',
- approveSuccess: 'Approved successfully'
- },
- moldOperate: {
- moduleName: 'Mold Operate',
- subTitle: 'Mold mounting and dismounting records',
- detailTitle: 'Mold Operate Detail',
- basicInfo: 'Basic Info',
- tabUp: 'Mount',
- tabDown: 'Dismount',
- operateType: 'Operation Type',
- mold: 'Mold',
- lowerMold: 'Dismount Mold',
- selectMold: 'Select Mold',
- noSelectedMold: 'No selected molds',
- allMold: 'All Molds',
- searchRemark: 'Enter remark keyword',
- searchCode: 'Enter mold code',
- searchName: 'Enter mold name',
- moldCode: 'Mold Code',
- moldName: 'Mold Name',
- device: 'Device',
- deviceName: 'Device Name',
- creatorName: 'Creator',
- remark: 'Remark',
- createTime: 'Created At',
- createTitle: 'Create Mold Operate',
- editTitle: 'Edit Mold Operate',
- empty: 'No mold operate data',
- noMoldData: 'No mold options',
- placeholderDevice: 'Select device',
- placeholderRemark: 'Enter remark',
- validatorOperateTypeRequired: 'Operation type is required',
- validatorDeviceRequired: 'Device is required',
- validatorMoldRequired: 'Select at least one mold for mounting',
- validatorOperatorRequired: 'Please select operator',
- validatorLowerMoldRequired: 'Select at least one mold for dismounting',
- loadEditFailed: 'Failed to load edit data',
- confirmDelete: 'Confirm delete this mold operate record?',
- scanDevice: 'Scan Device',
- selectDevice: 'Select Device',
- selectedDevice: 'Selected Device',
- deviceCode: 'Device Code',
- productionLine: 'Production Line',
- currentMold: 'Current Mold',
- deviceStatus: 'Device Status',
- statusRunning: 'Running',
- statusStop: 'Stopped',
- statusFault: 'Fault',
- selectMountMold: 'Select Mold to Mount',
- product: 'Product',
- status: 'Status',
- pendingMount: 'Pending Mount',
- confirmMount: 'Confirm Mount',
- clickSelectMold: 'Click to select mold',
- noDeviceData: 'No device data',
- deviceNotFound: 'Device not found',
- deviceInfo: 'Device Info',
- currentMoldInfo: 'Current Mold on Machine',
- mountTime: 'Mount Time',
- useCount: 'Usage Count',
- countUnit: '',
- changeMountTarget: 'Change Mount Target',
- changeTarget: 'Change Dismount Target',
- confirmDismount: 'Confirm Dismount',
- clickSelectDeviceFirst: 'Please select a device first',
- noMoldOnDevice: 'No mold on this device',
- historySuffix: ' History',
- historyTitle: 'Mold Operate History',
- searchPlaceholder: 'Search device/mold name',
- placeholderOperator: 'Select operator',
- filterAll: 'All',
- filterToday: 'Today',
- filterWeek: 'This Week',
- historyEmpty: 'No history records',
- totalPrefix: 'Total: ',
- totalSuffix: '',
- confirmDeleteHistory: 'Confirm delete this history record?',
- operateTime: 'Operate Time',
- operator: 'Operator'
- },
- moldInspectionItems: {
- moduleName: 'Inspection Items',
- subTitle: 'Mold management inspection items',
- detailTitle: 'Inspection Item Detail',
- basicInfo: 'Basic Info',
- code: 'Item Code',
- name: 'Item Name',
- inspectionMethod: 'Inspection Method',
- valueType: 'Value Type',
- isEnable: 'Enabled',
- judgmentCriteria: 'Judgment Criteria',
- creatorName: 'Creator',
- createTime: 'Created At',
- searchPlaceholder: 'Enter code/name/criteria',
- createTitle: 'Create Inspection Item',
- editTitle: 'Edit Inspection Item',
- empty: 'No inspection items',
- loadEditFailed: 'Failed to load edit data',
- confirmDelete: 'Confirm delete this inspection item?',
- placeholderCode: 'Enter item code',
- placeholderName: 'Enter item name',
- placeholderInspectionMethod: 'Select inspection method',
- placeholderValueType: 'Select value type',
- placeholderIsEnable: 'Select enabled status',
- placeholderJudgmentCriteria: 'Enter judgment criteria',
- validatorSubjectCodeRequired: 'Item code is required',
- validatorSubjectNameRequired: 'Item name is required',
- validatorInspectionMethodRequired: 'Inspection method is required',
- validatorValueTypeRequired: 'Value type is required',
- validatorIsEnableRequired: 'Enabled status is required',
- validatorJudgmentCriteriaRequired: 'Judgment criteria is required'
- },
- moldInspectionPlan: {
- moduleName: 'Inspection Plan',
- subTitle: 'Mold management inspection plan',
- detailTitle: 'Inspection Plan Detail',
- basicInfo: 'Basic Info',
- planName: 'Plan Name',
- planType: 'Plan Type',
- planTypeMaintain: 'Maintenance',
- planTypeInspect: 'Inspection',
- description: 'Description',
- subjectName: 'Inspection Items',
- creatorName: 'Creator',
- createTime: 'Created At',
- updateTime: 'Updated At',
- searchPlaceholder: 'Enter plan name',
- createTitle: 'Create Inspection Plan',
- editTitle: 'Edit Inspection Plan',
- empty: 'No inspection plan data',
- loadEditFailed: 'Failed to load edit data',
- confirmDelete: 'Confirm delete this inspection plan?',
- placeholderPlanName: 'Enter plan name',
- placeholderPlanType: 'Select plan type',
- placeholderDescription: 'Enter description',
- placeholderSubjectSelect: 'Select inspection items',
- subjectSelectTitle: 'Select Inspection Items',
- noSubjectData: 'No inspection items',
- validatorPlanNameRequired: 'Plan name is required',
- validatorPlanTypeRequired: 'Plan type is required',
- subjectListTitle: 'Related Inspection Items',
- subjectCode: 'Item Code',
- inspectionMethod: 'Inspection Method',
- judgmentCriteria: 'Judgment Criteria'
- },
- moldTaskConfig: {
- moduleName: 'Inspection Task',
- subTitle: 'Mold management inspection task',
- detailTitle: 'Inspection Task Detail',
- basicInfo: 'Basic Info',
- name: 'Task Name',
- taskType: 'Task Type',
- taskTypeInspect: 'Inspection',
- taskTypeMaintain: 'Maintenance',
- moldList: 'Mold List',
- projectForm: 'Inspection Plan',
- projectFormName: 'Project Form',
- dateRange: 'Valid Date Range',
- startDate: 'Start Date',
- endDate: 'End Date',
- cronExpression: 'Cron Expression',
- operableUsers: 'Operable Users',
- enabled: 'Enabled',
- creatorName: 'Creator',
- createTime: 'Created At',
- updateTime: 'Updated At',
- searchPlaceholder: 'Enter task name',
- createTitle: 'Create Inspection Task',
- editTitle: 'Edit Inspection Task',
- empty: 'No inspection task data',
- loadEditFailed: 'Failed to load edit data',
- confirmDeleteContent: 'Confirm delete this inspection task [{name}]?',
- placeholderName: 'Enter task name',
- placeholderTaskType: 'Select task type',
- placeholderMoldList: 'Select molds',
- placeholderProjectForm: 'Select inspection plans',
- placeholderStartDate: 'Select start date',
- placeholderEndDate: 'Select end date',
- placeholderCron: 'Enter cron expression',
- placeholderOperableUsers: 'Select operable users',
- validatorNameRequired: 'Task name is required',
- validatorTaskTypeRequired: 'Task type is required',
- validatorMoldListRequired: 'Mold list is required',
- validatorProjectFormRequired: 'Inspection plan is required',
- validatorDateRangeRequired: 'Date range is required',
- createTicketSuccess: 'Work order created successfully',
- createTicketFail: 'Work order creation failed',
- moldSelectTitle: 'Select Molds',
- planSelectTitle: 'Select Inspection Plans',
- userSelectTitle: 'Select Operable Users'
- },
- equipmentInspectionTasks: {
- moduleName: 'Equipment Inspection Tasks',
- subTitle: 'Work order management for equipment inspection tasks',
- detailTitle: 'Equipment Inspection Task Detail',
- basicInfo: 'Basic Info',
- createTicket: 'Add Work Order Management',
- name: 'Task Name',
- taskType: 'Task Type',
- taskTypeInspect: 'Inspection',
- taskTypeMaintain: 'Maintenance',
- deviceList: 'Device List',
- projectFormName: 'Project Form',
- dateRange: 'Valid Date Range',
- cronExpression: 'Cron Expression',
- operableUsers: 'Operable Users',
- enabled: 'Enabled',
- creatorName: 'Creator',
- createTime: 'Created At',
- updateTime: 'Updated At',
- searchPlaceholder: 'Enter task name/device code/device name',
- empty: 'No equipment inspection tasks',
- createTicketSuccess: 'Work order created successfully',
- createTicketFail: 'Work order creation failed',
- lineFilter: 'Line',
- },
- equipmentInspectionRecord: {
- moduleName: 'Equipment Inspection Records',
- subTitle: 'Equipment inspection record list',
- detailTitle: 'Equipment Inspection Record Detail',
- taskType: 'Task Type',
- taskTypeInspect: 'Inspection',
- taskTypeMaintain: 'Maintenance',
- taskTypeInspectShort: 'I',
- taskTypeMaintainShort: 'M',
- planNo: 'Task No.',
- deviceName: 'Device Name',
- configName: 'Inspection Template',
- jobStatus: 'Job Status',
- jobStatusPending: 'Pending',
- jobStatusProcessing: 'Processing',
- jobStatusCompleted: 'Completed',
- jobStatusTimeout: 'Timeout',
- jobStatusCancelled: 'Cancelled',
- jobResult: 'Result',
- jobResultOk: 'Pass',
- jobResultNg: 'Fail',
- taskTime: 'Job Time',
- searchPlaceholder: 'Enter task no/device code/device name',
- empty: 'No equipment inspection records',
- progressTitle: 'Progress',
- inspectionMethod: 'Inspection Method',
- judgmentCriteria: 'Criteria',
- valueType: 'Value Type',
- resultText: 'Result',
- requiredText: 'Required',
- inspectionResultPending: 'Pending',
- inspectionResultPass: 'Pass',
- inspectionResultFail: 'Fail',
- textInput: 'Input Value',
- inputPlaceholder: 'Please enter',
- remark: 'Remark',
- images: 'Images',
- maxUploadCount: 'You can upload up to 9 images',
- selectAllDecisionError: 'Please choose a result for all pending items',
- noResultData: 'No inspection items',
- lineFilter: 'Line',
- },
- moldWorkOrder: {
- moduleName: 'Inspection Records',
- subTitle: 'Mold management inspection records',
- detailTitle: 'Inspection Record Detail',
- basicInfo: 'Basic Info',
- resultListTitle: 'Inspection Results',
- planNo: 'Ticket No.',
- moldName: 'Mold Name',
- planType: 'Task Type',
- planTypeInspect: 'Inspection',
- planTypeMaintain: 'Maintenance',
- configName: 'Task Config',
- jobStatus: 'Job Status',
- jobStatusPending: 'Pending',
- jobStatusProcessing: 'Processing',
- jobStatusCompleted: 'Completed',
- jobStatusTimeout: 'Timeout',
- jobStatusCancelled: 'Cancelled',
- jobResult: 'Job Result',
- jobResultOk: 'OK',
- jobResultNg: 'NG',
- operatorName: 'Operator',
- taskTime: 'Task Time',
- taskEndTime: 'End Time',
- cancelReason: 'Cancel Reason',
- createTime: 'Created At',
- searchPlaceholder: 'Enter ticket no.',
- empty: 'No inspection records',
- cancelTask: 'Cancel Task',
- cancelSuccess: 'Cancelled successfully',
- cancelFail: 'Cancel failed',
- placeholderCancelReason: 'Enter cancel reason',
- validatorCancelReasonRequired: 'Cancel reason is required',
- inspectionItemName: 'Inspection Item',
- inspectionMethod: 'Inspection Method',
- judgmentCriteria: 'Judgment Criteria',
- valueType: 'Value Type',
- inspectionResult: 'Inspection Result',
- inspectionResultPending: 'Pending',
- inspectionResultPass: 'Pass',
- inspectionResultFail: 'Fail',
- textInput: 'Input Value',
- remark: 'Remark',
- images: 'Images',
- noResultData: 'No inspection result data',
- loadMore: 'Load More'
- },
- mine: {
- clickLogin: 'Tap to sign in',
- username: 'Username: {name}',
- profile: 'Profile',
- feedback: 'Feedback',
- service: 'Support',
- changePassword: 'Change Password',
- logout: 'Log Out',
- editProfile: 'Edit Profile',
- faq: 'FAQ',
- about: 'About',
- appSettings: 'Settings'
- },
- setting: {
- language: 'System Language',
- currentLanguage: 'Current: {language}',
- terminalMode: 'Terminal Mode',
- currentTerminal: 'Current Terminal: {terminal}',
- switchingTerminal: 'Switching terminal...',
- terminalSwitched: 'Switched to {terminal}',
- switchLanguage: 'Switch Language',
- checkUpdate: 'Check Updates',
- cleanCache: 'Clear Cache',
- logout: 'Log Out',
- serverAddress: 'Server Address',
- serverAddressHint: 'Enter the backend API address for the current account',
- serverAddressPlaceholder: 'Enter backend address',
- serverAddressRequired: 'Please enter the backend address',
- serverAddressSaved: 'Server address saved. Please log in again',
- mobile: 'Mobile',
- scanner: 'Scanner',
- zhCN: 'Chinese',
- enUS: 'English'
- },
- about: {
- appName: 'Besure Production System',
- version: 'Version',
- email: 'Official Email',
- hotline: 'Service Hotline',
- website: 'Website'
- },
- help: {
- appUserQuestion: 'App User Questions',
- otherQuestion: 'Other Questions',
- appFeatureQuestion: 'What business features are supported by the app?',
- appFeatureAnswer: 'Plan start, production report, material feeding records, production records',
- reportQuestion: 'How can I submit a production report?',
- reportAnswer: 'You can submit it on the report page.',
- planQuestion: 'How is plan management handled?',
- planAnswer: 'Use the plan management module.',
- materialQuestion: 'How to manage feeding records?',
- materialAnswer: 'Use the feeding record module.',
- logoutQuestion: 'How do I log out?',
- logoutAnswer: 'Go to [Mine] - [App Settings] - [Log Out] to sign out.',
- avatarQuestion: 'How do I change my avatar?',
- avatarAnswer: 'Go to [Mine] - [Choose Avatar] - [Submit] to update your avatar.',
- passwordQuestion: 'How do I change my login password?',
- passwordAnswer: 'Go to [Mine] - [App Settings] - [Change Password] to update your password.'
- },
- info: {
- username: 'Username',
- nickname: 'Nickname',
- gender: 'Gender',
- male: 'Male',
- female: 'Female',
- phone: 'Mobile',
- email: 'Email',
- createdAt: 'Created At'
- },
- editInfo: {
- nickname: 'Nickname',
- nicknamePlaceholder: 'Enter nickname',
- phone: 'Mobile',
- phonePlaceholder: 'Enter mobile number',
- email: 'Email',
- emailPlaceholder: 'Enter email',
- gender: 'Gender',
- nicknameRequired: 'Nickname is required',
- phoneRequired: 'Mobile number is required',
- phoneInvalid: 'Please enter a valid mobile number',
- emailRequired: 'Email is required',
- emailInvalid: 'Please enter a valid email'
- },
- pwd: {
- oldPassword: 'Current Password',
- newPassword: 'New Password',
- confirmPassword: 'Confirm Password',
- oldPasswordPlaceholder: 'Enter current password',
- newPasswordPlaceholder: 'Enter new password',
- confirmPasswordPlaceholder: 'Confirm new password',
- oldPasswordRequired: 'Current password is required',
- newPasswordRequired: 'New password is required',
- passwordLength: 'Length must be between 6 and 20 characters',
- confirmPasswordRequired: 'Please confirm password',
- passwordNotMatch: 'The two passwords do not match'
- },
- avatar: {
- chooseAvatar: 'Choose Avatar'
- },
- materialCategory: {
- moduleName: 'Product Category',
- subTitle: 'Product material category management',
- detailTitle: 'Category Detail',
- basicInfo: 'Basic Info',
- code: 'Category Code',
- name: 'Category Name',
- parentName: 'Parent Category',
- rootCategory: 'None (Top Level)',
- sort: 'Sort',
- status: 'Status',
- statusEnable: 'Enable',
- statusDisable: 'Disable',
- createTime: 'Created At',
- searchPlaceholder: 'Enter category code/name',
- createTitle: 'Create Category',
- editTitle: 'Edit Category',
- empty: 'No category data',
- loadEditFailed: 'Failed to load edit data',
- noId: 'Missing category ID',
- loadFailed: 'Failed to load category detail',
- placeholderCode: 'Enter category code',
- placeholderName: 'Enter category name',
- placeholderParent: 'Select parent category',
- placeholderSort: 'Enter sort order',
- placeholderStatus: 'Select status',
- validatorCodeRequired: 'Category code is required',
- validatorNameRequired: 'Category name is required',
- validatorSortRequired: 'Sort order is required',
- validatorStatusRequired: 'Status is required',
- confirmDeleteContent: 'Confirm delete category [{name}]?'
- },
- materialInfo: {
- moduleName: 'Product Material',
- subTitle: 'Product material information management',
- detailTitle: 'Material Detail',
- basicInfo: 'Basic Info',
- barCode: 'Barcode',
- name: 'Material Name',
- category: 'Category',
- unit: 'Unit',
- standard: 'Specification',
- expiryDay: 'Shelf Life (Days)',
- status: 'Status',
- statusEnable: 'Enable',
- statusDisable: 'Disable',
- remark: 'Remark',
- createTime: 'Created At',
- autoCode: 'Auto Generate',
- searchPlaceholder: 'Enter material name/barcode',
- createTitle: 'Create Material',
- editTitle: 'Edit Material',
- empty: 'No material data',
- loadEditFailed: 'Failed to load edit data',
- noId: 'Missing material ID',
- loadFailed: 'Failed to load material detail',
- placeholderBarCode: 'Enter barcode',
- placeholderName: 'Enter material name',
- placeholderCategory: 'Select category',
- placeholderUnit: 'Select unit',
- placeholderStandard: 'Enter specification',
- placeholderExpiryDay: 'Enter shelf life days',
- placeholderStatus: 'Select status',
- placeholderRemark: 'Enter remark',
- validatorBarCodeRequired: 'Barcode is required',
- validatorNameRequired: 'Material name is required',
- validatorCategoryRequired: 'Category is required',
- validatorUnitRequired: 'Unit is required',
- confirmDeleteContent: 'Confirm delete material [{name}]?'
- },
- productBom: {
- moduleName: 'Product BOM',
- subTitle: 'Product BOM management',
- detailTitle: 'BOM Detail',
- basicInfo: 'Basic Info',
- code: 'BOM Code',
- version: 'Version',
- product: 'Product',
- unit: 'Unit',
- yieldRate: 'Yield Rate',
- isEnable: 'Enabled',
- enableYes: 'Yes',
- enableNo: 'No',
- remark: 'Remark',
- createTime: 'Created At',
- searchPlaceholder: 'Enter BOM code',
- createTitle: 'Create BOM',
- editTitle: 'Edit BOM',
- empty: 'No BOM data',
- loadEditFailed: 'Failed to load edit data',
- noId: 'Missing BOM ID',
- loadFailed: 'Failed to load BOM detail',
- placeholderCode: 'Enter BOM code',
- placeholderVersion: 'Enter version',
- placeholderProduct: 'Select product',
- placeholderUnit: 'Select unit',
- placeholderYieldRate: 'Enter yield rate',
- placeholderEnable: 'Select enabled status',
- placeholderRemark: 'Enter remark',
- validatorCodeRequired: 'BOM code is required',
- validatorVersionRequired: 'Version is required',
- validatorProductRequired: 'Product is required',
- validatorUnitRequired: 'Unit is required',
- validatorEnableRequired: 'Enabled status is required',
- confirmDeleteContent: 'Confirm delete BOM [{code}]?',
- detailTab: 'BOM Details',
- detailUsageNumber: 'Usage Qty',
- detailUnit: 'Unit',
- detailLossRate: 'Loss Rate',
- detailRemark: 'Remark',
- detailEmpty: 'No BOM detail data'
- },
- equipmentCategory: {
- moduleName: 'Equipment Category',
- subTitle: 'Equipment category management',
- detailTitle: 'Category Detail',
- basicInfo: 'Basic Info',
- code: 'Category Code',
- name: 'Category Name',
- parentName: 'Parent Category',
- rootCategory: 'None (Top Level)',
- sort: 'Sort',
- remark: 'Remark',
- createTime: 'Created At',
- searchPlaceholder: 'Enter category code/name',
- createTitle: 'Create Category',
- editTitle: 'Edit Category',
- empty: 'No category data',
- loadEditFailed: 'Failed to load edit data',
- noId: 'Missing category ID',
- loadFailed: 'Failed to load category detail',
- placeholderCode: 'Enter category code',
- placeholderName: 'Enter category name',
- placeholderParent: 'Select parent category',
- placeholderSort: 'Enter sort order',
- placeholderRemark: 'Enter remark',
- validatorCodeRequired: 'Category code is required',
- validatorNameRequired: 'Category name is required',
- confirmDeleteContent: 'Confirm delete category [{name}]?'
- },
- equipmentLedger: {
- moduleName: 'Equipment Ledger11',
- subTitle: 'Equipment ledger management',
- detailTitle: 'Equipment Detail',
- basicInfo: 'Basic Info',
- deviceCode: 'Device Code',
- deviceName: 'Device Name',
- deviceType: 'Device Type',
- deviceStatus: 'Device Status',
- lineFilter: 'Line',
- scanUnrecognized: 'QR code content not recognized',
- scanTypeMismatch: 'QR code type does not match',
- scanFailed: 'Scan failed',
- deviceSpec: 'Device Spec',
- isScheduled: 'Scheduled',
- ratedCapacity: 'Rated Capacity',
- dailyAverageValue: 'Daily Avg Value',
- dataCollectionCapacity: 'Data Collection Capacity',
- productionDate: 'Production Date',
- factoryEntryDate: 'Factory Entry Date',
- deviceLocation: 'Device Location',
- deviceManagerName: 'Device Manager',
- workshop: 'Workshop',
- remark: 'Remark',
- creatorName: 'Creator',
- createTime: 'Created At',
- autoCode: 'Auto Generate',
- yes: 'Yes',
- no: 'No',
- searchPlaceholder: 'Enter device code/name',
- createTitle: 'Create Equipment',
- editTitle: 'Edit Equipment',
- empty: 'No equipment data',
- loadEditFailed: 'Failed to load edit data',
- noId: 'Missing equipment ID',
- loadFailed: 'Failed to load equipment detail',
- placeholderDeviceCode: 'Enter device code',
- placeholderDeviceName: 'Enter device name',
- placeholderDeviceType: 'Select device type',
- placeholderDeviceSpec: 'Enter device spec',
- placeholderRatedCapacity: 'Enter rated capacity',
- placeholderDailyAverageValue: 'Enter daily average value',
- placeholderDataCollectionCapacity: 'Enter data collection capacity',
- placeholderProductionDate: 'Select production date',
- placeholderFactoryEntryDate: 'Select factory entry date',
- placeholderDeviceLocation: 'Enter device location',
- placeholderRemark: 'Enter remark',
- validatorDeviceCodeRequired: 'Device code is required',
- validatorDeviceNameRequired: 'Device name is required',
- validatorDeviceTypeRequired: 'Device type is required',
- validatorProductionDateRequired: 'Production date is required',
- validatorFactoryEntryDateRequired: 'Factory entry date is required',
- validatorRatedCapacityRequired: 'Rated capacity is required',
- validatorDailyAverageValueRequired: 'Daily average value is required',
- validatorDataCollectionCapacityRequired: 'Data collection capacity is required',
- confirmDeleteContent: 'Confirm delete equipment [{name}]?',
- checkHistory: 'Inspection',
- maintainHistory: 'Maintenance',
- repairHistory: 'Repair',
- operator: 'Operator',
- inspectionMethod: 'Inspection Method',
- criteria: 'Criteria',
- inspectionTime: 'Inspection Time',
- maintainMethod: 'Maintenance Method',
- maintainTime: 'Maintenance Time',
- repairName: 'Repair Order Name',
- faultPhenomenon: 'Fault Phenomenon',
- faultDescription: 'Fault Description',
- replacementParts: 'Replacement Parts',
- repairContent: 'Repair Content',
- finishDate: 'Finish Date',
- faultImages: 'Fault Images',
- repairedImages: 'After-repair Images',
- noHistoryData: 'No history data',
- resultPending: 'Pending',
- resultPass: 'Pass',
- resultFail: 'Fail',
- repairPending: 'Pending',
- repairProcessing: 'Processing',
- repairCompleted: 'Completed',
- repairAbnormal: 'Abnormal'
- },
- equipmentMaintenance: {
- moduleName: 'Equipment Repair',
- createTitle: 'Create Equipment Repair',
- editTitle: 'Edit Equipment Repair',
- detailTitle: 'Equipment Repair Detail',
- repairTitle: 'Repair Processing',
- basicInfo: 'Basic Info',
- repairObject: 'Repair Object',
- repairCode: 'Repair Order No.',
- repairName: 'Repair Order Name',
- requireDate: 'Report Date',
- acceptedBy: 'Repair Technician',
- confirmBy: 'Inspector',
- machineryTypeId: 'Equipment Type',
- machineryTypeDevice: 'Equipment',
- machineryTypeKeyItem: 'Key Component',
- device: 'Equipment',
- component: 'Key Component',
- faultLevel: 'Failure Level',
- isShutdown: 'Shutdown Required',
- status: 'Document Status',
- faultInfo: 'Fault Info',
- faultPhenomenon: 'Fault Phenomenon',
- faultDescription: 'Fault Description',
- faultImages: 'Fault Images',
- repairResultSection: 'Repair Result',
- repairResult: 'Repair Result',
- finishDate: 'Completion Date',
- confirmDate: 'Acceptance Date',
- downtimeDuration: 'Downtime Duration',
- faultReason: 'Fault Cause',
- handlingMeasures: 'Handling Measures',
- replacementParts: 'Replacement Parts',
- repairContent: 'Repair Content',
- repairedImages: 'Post-repair Images',
- remark: 'Remark',
- autoCode: 'Auto Generate',
- deviceLabel: 'Equipment',
- reportTimeLabel: 'Report Time',
- searchPlaceholder: 'Enter order no/device code/device name',
- empty: 'No repair records',
- statusPending: 'Pending Repair',
- statusPassed: 'Passed',
- statusRejected: 'Rejected',
- placeholderRepairCode: 'Enter repair order no.',
- placeholderRepairName: 'Enter repair order name',
- placeholderRequireDate: 'Select report date',
- placeholderAcceptedBy: 'Select repair technician',
- placeholderConfirmBy: 'Select inspector',
- placeholderDevice: 'Select equipment',
- placeholderComponent: 'Select key component',
- placeholderFaultPhenomenon: 'Enter fault phenomenon',
- placeholderFaultDescription: 'Enter fault description',
- placeholderFinishDate: 'Select completion date',
- placeholderConfirmDate: 'Select acceptance date',
- placeholderDowntimeDuration: 'Enter downtime duration in hours',
- placeholderFaultReason: 'Enter fault cause',
- placeholderHandlingMeasures: 'Enter handling measures',
- placeholderReplacementParts: 'Enter replacement parts',
- placeholderRepairContent: 'Enter repair content',
- placeholderRemark: 'Enter remark',
- loadDetailFailed: 'Failed to load details',
- scanUnrecognized: 'No content recognized',
- scanEquipmentRequired: 'Please scan an equipment QR code',
- deviceNotFound: 'Matching equipment not found',
- scanFailed: 'Scan failed',
- maxUploadCount: 'You can upload up to 9 images',
- saving: 'Saving',
- saveSuccess: 'Saved successfully',
- submitSuccess: 'Submitted successfully',
- submitFailed: 'Submit failed',
- noId: 'Missing repair order ID',
- confirmDeleteContent: 'Delete repair order "{code}"?',
- validatorRepairCodeRequired: 'Please enter the repair order no.',
- validatorRepairNameRequired: 'Please enter the repair order name',
- validatorDeviceRequired: 'Please select equipment',
- validatorComponentRequired: 'Please select key component',
- validatorRequireDateRequired: 'Please select the report date',
- validatorFaultLevelRequired: 'Please select the failure level',
- validatorIsShutdownRequired: 'Please select whether shutdown is required',
- validatorFaultPhenomenonRequired: 'Please enter the fault phenomenon',
- lineFilter: 'Line',
- validatorRepairStatusRequired: 'Please select the repair result',
- validatorFinishDateRequired: 'Please select the completion date',
- validatorConfirmDateRequired: 'Please select the acceptance date'
- },
- criticalComponent: {
- moduleName: 'Critical Component',
- subTitle: 'Equipment critical component management',
- detailTitle: 'Component Detail',
- basicInfo: 'Basic Info',
- code: 'Component Code',
- name: 'Component Name',
- deviceSpec: 'Specification',
- description: 'Description',
- count: 'Count',
- remark: 'Remark',
- creatorName: 'Creator',
- createTime: 'Created At',
- autoCode: 'Auto Generate',
- searchPlaceholder: 'Enter code/name',
- createTitle: 'Create Component',
- editTitle: 'Edit Component',
- empty: 'No component data',
- loadEditFailed: 'Failed to load edit data',
- noId: 'Missing component ID',
- loadFailed: 'Failed to load component detail',
- placeholderCode: 'Enter component code',
- placeholderName: 'Enter component name',
- placeholderDeviceSpec: 'Enter specification',
- placeholderDescription: 'Enter description',
- placeholderCount: 'Enter count',
- placeholderRemark: 'Enter remark',
- validatorCodeRequired: 'Component code is required',
- validatorNameRequired: 'Component name is required',
- confirmDeleteContent: 'Confirm delete component [{name}]?'
- },
- moldLedger: {
- moduleName: 'Mold Ledger',
- subTitle: 'Mold ledger management',
- detailTitle: 'Mold Detail',
- basicInfo: 'Mold Basic Info',
- moldPlaceholder: 'Mold',
- moldName: 'Mold Name',
- product: 'Product',
- moldCode: 'Mold Code',
- status: 'Status',
- versionSpec: 'Version/Spec',
- cavityCount: 'Cavity Count',
- currentDevice: 'Current Device',
- useCount: 'Use Count',
- expand: 'Expand',
- collapse: 'Collapse',
- tabChildMold: 'Sub-molds',
- tabInspection: 'Inspection',
- tabRepair: 'Repair',
- tabMaintenance: 'Maintenance',
- tabInstall: 'Installation',
- installLocation: 'Install Location',
- material: 'Material',
- quantity: 'Quantity',
- lastReplace: 'Last Replace',
- usedDays: 'Used {days} days',
- remark: 'Remark',
- noChildMold: 'No sub-mold data',
- noInspection: 'No inspection records',
- noRepair: 'No repair records',
- noMaintenance: 'No maintenance records',
- noInstall: 'No installation records',
- inspectionMethod: 'Inspection Method',
- criteria: 'Criteria',
- inspectionTime: 'Inspection Time',
- maintainMethod: 'Maintenance Method',
- maintainTime: 'Maintenance Time',
- repairProject: 'Repair Project',
- projectContent: 'Project Content',
- finishTime: 'Finish Time',
- operateMold: 'Mold',
- operator: 'Operator',
- time: 'Time',
- upperMold: 'Mount',
- lowerMold: 'Dismount',
- missingBrandId: 'Missing mold brand ID',
- detailLoadFailed: 'Failed to load detail',
- childLoadFailed: 'Failed to load sub-molds',
- inspectionLoadFailed: 'Failed to load inspection records',
- repairLoadFailed: 'Failed to load repair records',
- maintainLoadFailed: 'Failed to load maintenance records',
- installLoadFailed: 'Failed to load installation records',
- resultPending: 'Pending',
- resultPass: 'Pass',
- resultWarning: 'Warning',
- repairCompleted: 'Completed',
- repairAbnormal: 'Abnormal',
- repairProcessing: 'Processing',
- searchPlaceholder: 'Enter mold code or name',
- allStatus: 'All',
- selectMoldStatus: 'Select Mold Status',
- clear: 'Clear',
- name: 'Name',
- createTime: 'Created At',
- confirmDeleteContent: 'Confirm delete mold brand "{name}"?',
- empty: 'No mold ledger data',
- scanUnrecognized: 'Unrecognized QR code',
- scanFormatError: 'Invalid QR code format',
- scanFailed: 'Scan failed',
- noIdView: 'Missing ID, cannot view details',
- noIdDelete: 'Missing ID, cannot delete'
- },
- moldCheck: {
- moduleName: 'Mold Inspection',
- addTitle: 'Add Inspection',
- detailTitle: 'Inspection Detail',
- searchPlaceholder: 'Enter inspection No.',
- empty: 'No inspection records',
- add: 'Add',
- moldName: 'Mold Name',
- moldCode: 'Mold Code',
- product: 'Product',
- status: 'Status',
- taskType: 'Task Type',
- taskTypeInspect: 'Inspection',
- taskTypeMaintain: 'Maintenance',
- planNo: 'Inspection No.',
- taskTime: 'Task Time',
- template: 'Template',
- operator: 'Operator',
- jobStatusPending: 'Pending',
- jobStatusProcessing: 'Processing',
- jobStatusCompleted: 'Completed',
- jobStatusTimeout: 'Timeout',
- jobStatusCancelled: 'Cancelled',
- jobResultOk: 'OK',
- jobResultNg: 'NG',
- progressTitle: 'Progress',
- noResultData: 'No inspection result data',
- requiredText: 'Required',
- inspectionMethod: 'Inspection Method',
- judgmentCriteria: 'Judgment Criteria',
- textInput: 'Input Value',
- inputPlaceholder: 'Enter value',
- images: 'Images',
- remark: 'Remark',
- resultText: 'Result',
- inspectionResultPass: 'Pass',
- inspectionResultFail: 'Fail',
- inspectionResultPending: 'Pending',
- maxUploadCount: 'Max 3 images',
- selectAllDecisionError: 'Please select all inspection results',
- currentMoldInfo: 'Mold Info',
- moldGroupCode: 'Mold Group Code',
- moldGroupName: 'Mold Group Name',
- cavityCount: 'Cavity Count',
- moldSize: 'Mold Size',
- currentDevice: 'Current Device',
- selectMold: 'Select Mold',
- reSelectMold: 'Re-select Mold',
- selectMoldError: 'Please select a mold',
- searchMold: 'Enter mold name',
- noMoldInfo: 'Please select a mold',
- noMoldData: 'No molds available',
- taskName: 'Task Name',
- taskInfo: 'Task Info',
- placeholderTaskName: 'Enter task name',
- templateSelection: 'Template/Task Selection',
- selectTemplate: 'Select Template',
- selectTemplateError: 'Please select inspection template',
- noItems: 'Please select inspection template first',
- noTemplate: 'No templates',
- resultListTitle: 'Inspection Results',
- editResult: 'Edit',
- cancelEdit: 'Cancel Edit',
- submit: 'Submit Inspection',
- submitSuccess: 'Inspection submitted successfully',
- submitFailed: 'Failed to submit inspection',
- reInspect: 'Re-inspect'
- },
- moldMaintain: {
- moduleName: 'Mold Maintenance',
- addTitle: 'Add Maintenance',
- detailTitle: 'Maintenance Detail',
- searchPlaceholder: 'Enter maintenance No.',
- empty: 'No maintenance records',
- add: 'Add',
- moldName: 'Mold Name',
- moldCode: 'Mold Code',
- product: 'Product',
- status: 'Status',
- taskType: 'Task Type',
- taskTypeInspect: 'Inspection',
- taskTypeMaintain: 'Maintenance',
- planNo: 'Maintenance No.',
- taskTime: 'Task Time',
- template: 'Template',
- operator: 'Operator',
- jobResultOk: 'OK',
- jobResultNg: 'NG',
- progressTitle: 'Progress',
- noResultData: 'No maintenance result data',
- requiredText: 'Required',
- inspectionMethod: 'Maintenance Method',
- judgmentCriteria: 'Judgment Criteria',
- textInput: 'Input Value',
- inputPlaceholder: 'Enter value',
- images: 'Images',
- remark: 'Remark',
- resultText: 'Result',
- inspectionResultPass: 'Pass',
- inspectionResultFail: 'Fail',
- inspectionResultPending: 'Pending',
- maxUploadCount: 'Max 3 images',
- selectAllDecisionError: 'Please select all maintenance results',
- currentMoldInfo: 'Mold Info',
- moldGroupCode: 'Mold Group Code',
- moldGroupName: 'Mold Group Name',
- cavityCount: 'Cavity Count',
- moldSize: 'Mold Size',
- currentDevice: 'Current Device',
- selectMold: 'Select Mold',
- reSelectMold: 'Re-select Mold',
- selectMoldError: 'Please select a mold',
- searchMold: 'Enter mold name',
- noMoldInfo: 'Please select a mold',
- noMoldData: 'No molds available',
- taskName: 'Task Name',
- taskInfo: 'Task Info',
- placeholderTaskName: 'Enter task name',
- templateSelection: 'Template/Task Selection',
- selectTemplate: 'Select Template',
- selectTemplateError: 'Please select maintenance template',
- noItems: 'Please select maintenance template first',
- noTemplate: 'No templates',
- resultListTitle: 'Inspection Results',
- editResult: 'Edit',
- cancelEdit: 'Cancel Edit',
- submit: 'Submit Maintenance',
- submitSuccess: 'Maintenance submitted successfully',
- submitFailed: 'Failed to submit maintenance',
- reInspect: 'Re-maintain'
- },
- moldPressureNet: {
- moduleName: 'Replace Pressure Net',
- recordTitle: 'Pressure Net Replacement',
- recordDesc: 'Select mold group and sub-mold, then confirm replacement time',
- history: 'History',
- historyTitle: 'Pressure Net History',
- moldGroup: 'Mold Group',
- selectMoldGroup: 'Select Mold Group',
- searchMoldGroup: 'Enter mold group name',
- noMoldGroup: 'No mold groups',
- moldGroupName: 'Mold Group Name',
- moldGroupCode: 'Mold Group Code',
- product: 'Product',
- subMold: 'Sub-mold',
- selectSubMold: 'Select Sub-mold',
- reSelectMoldGroup: 'Re-select Mold Group',
- reSelectSubMold: 'Re-select Sub-mold',
- subMoldCode: 'Sub-mold Code',
- subMoldName: 'Sub-mold Name',
- searchSubMold: 'Search sub-mold name/code',
- noSubMold: 'No sub-molds',
- replaceInfo: 'Replacement Info',
- replaceTime: 'Replacement Time',
- pressureNetTime: 'Pressure Net Time',
- selectReplaceTime: 'Select replacement time',
- operator: 'Operator',
- selectOperator: 'Select operator',
- noOperator: 'No operators',
- remark: 'Remark',
- remarkPlaceholder: 'Enter replacement reason or remark',
- confirmReplace: 'Confirm',
- selectMoldGroupError: 'Please select a mold group',
- selectSubMoldError: 'Please select a sub-mold',
- selectedCount: '{count} sub-mold(s) selected',
- selectReplaceTimeError: 'Please select replacement time',
- submitSuccess: 'Saved successfully',
- submitFailed: 'Save failed',
- historyMoldIdPlaceholder: 'Enter sub-mold ID, blank for all',
- searchBrandName: 'Mold Group Name',
- selectDate: 'Select Date',
- createTime: 'Create Time',
- noHistory: 'No pressure net history'
- },
- moldRepair: {
- moduleName: 'Mold Repair',
- createTitle: 'Create Mold Repair',
- editTitle: 'Edit Mold Repair',
- detailTitle: 'Mold Repair Detail',
- repairTitle: 'Repair Processing',
- basicInfo: 'Basic Info',
- repairObject: 'Repair Object',
- repairCode: 'Repair Code',
- repairName: 'Repair Name',
- requireDate: 'Require Date',
- acceptedBy: 'Repair User',
- confirmBy: 'Confirm User',
- mold: 'Mold',
- moldCode: 'Mold Code',
- moldName: 'Mold Name',
- specModel: 'Spec Model',
- brand: 'Brand',
- faultLevel: 'Fault Level',
- isShutdown: 'Is Shutdown',
- status: 'Status',
- faultInfo: 'Fault Info',
- faultPhenomenon: 'Fault Phenomenon',
- faultDescription: 'Fault Description',
- faultImages: 'Fault Images',
- repairResultSection: 'Repair Result',
- repairResult: 'Repair Result',
- finishDate: 'Finish Date',
- confirmDate: 'Confirm Date',
- downtimeDuration: 'Downtime Duration',
- faultReason: 'Fault Reason',
- handlingMeasures: 'Handling Measures',
- replacementParts: 'Replacement Parts',
- repairContent: 'Repair Content',
- repairedImages: 'Repaired Images',
- remark: 'Remark',
- autoCode: 'Auto Code',
- moldLabel: 'Mold',
- reportTimeLabel: 'Report Time',
- searchPlaceholder: 'Enter code or mold code',
- empty: 'No repair records',
- statusPending: 'Pending',
- statusPassed: 'Passed',
- statusRejected: 'Rejected',
- orderStatusPending: 'Pending',
- orderStatusDone: 'Completed',
- placeholderRepairCode: 'Enter repair code',
- placeholderRepairName: 'Enter repair name',
- placeholderRequireDate: 'Select require date',
- placeholderAcceptedBy: 'Select repair user',
- placeholderConfirmBy: 'Select confirm user',
- placeholderUserSearch: 'Search by nickname',
- placeholderMold: 'Select mold',
- placeholderMoldNameAuto: 'Auto filled',
- placeholderMoldCodeAuto: 'Auto filled',
- placeholderFaultPhenomenon: 'Enter fault phenomenon',
- placeholderFaultDescription: 'Enter fault description',
- placeholderFinishDate: 'Select finish date',
- placeholderConfirmDate: 'Select confirm date',
- placeholderDowntimeDuration: 'Enter downtime duration (hours)',
- placeholderFaultReason: 'Enter fault reason',
- placeholderHandlingMeasures: 'Enter handling measures',
- placeholderReplacementParts: 'Enter replacement parts',
- placeholderRepairContent: 'Enter repair content',
- placeholderRemark: 'Enter remark',
- loadDetailFailed: 'Failed to load detail',
- scanUnrecognized: 'Unrecognized content',
- scanMoldRequired: 'Please scan mold QR code',
- moldNotFound: 'Mold not found',
- scanFailed: 'Scan failed',
- maxUploadCount: 'Max 9 images',
- noUserData: 'No user data',
- saving: 'Saving',
- saveSuccess: 'Saved successfully',
- submitSuccess: 'Submitted successfully',
- submitFailed: 'Submit failed',
- noId: 'Missing repair ID',
- confirmDeleteContent: 'Confirm delete repair "{code}"?',
- validatorRepairCodeRequired: 'Repair code is required',
- validatorRepairNameRequired: 'Repair name is required',
- validatorMoldRequired: 'Mold is required',
- validatorRequireDateRequired: 'Require date is required',
- validatorFaultLevelRequired: 'Fault level is required',
- validatorIsShutdownRequired: 'Is shutdown is required',
- validatorFaultPhenomenonRequired: 'Fault phenomenon is required',
- validatorUserRequired: 'Please select a user',
- validatorRepairStatusRequired: 'Repair result is required',
- validatorFinishDateRequired: 'Finish date is required',
- validatorConfirmDateRequired: 'Confirm date is required'
- },
- productInbound: {
- moduleName: 'Product Inbound',
- createTitle: 'New Product Inbound',
- detailTitle: 'Product Inbound Detail',
- selectProductTitle: 'Select Product',
- selectTaskTitle: 'Select Task Order',
- selectTaskProductTitle: 'Select Task Product',
- selectPalletTitle: 'Select Pallet',
- createPalletTitle: 'New Pallet',
- all: 'All',
- inboundStatus: 'Inbound Status',
- reset: 'Reset',
- clear: 'Clear',
- loading: 'Loading...',
- loadingMore: 'Loading more...',
- noMoreData: 'No more data',
- confirm: 'Confirm',
- cancel: 'Cancel',
- back: 'Back',
- submit: 'OK',
- submitting: 'Submitting...',
- tip: 'Tip',
- choose: 'Please select',
- yes: 'Yes',
- no: 'No',
- statusPending: 'Pending Inbound',
- statusAuditing: 'Pending Review',
- statusStored: 'Stored',
- statusRejected: 'Rejected',
- searchDocumentPlaceholder: 'Enter inbound No.',
- searchProductPlaceholder: 'Search product name/code/spec',
- searchTaskPlaceholder: 'Search task order No.',
- searchTaskProductPlaceholder: 'Search product name/code',
- searchPalletPlaceholder: 'Search pallet code',
- productInfo: 'Product Info',
- inboundInfo: 'Inbound Info',
- inboundTime: 'Inbound Time',
- selectInboundTime: 'Select inbound time',
- operator: 'Operator',
- selectOperator: 'Select operator',
- inboundQuantity: 'Inbound Quantity',
- reviewer: 'Reviewer',
- auditor: 'Auditor',
- documentNo: 'Document No.',
- inboundType: 'Inbound Type',
- remark: 'Remark',
- remarkPlaceholder: 'Enter remark',
- attachment: 'Attachment',
- chooseFile: 'Choose File',
- itemList: 'Inbound List',
- addProduct: 'Add Product',
- product: 'Product',
- pallet: 'Pallet',
- packageCount: 'Packages',
- pieceCount: 'Pieces',
- inboundPackageCount: 'Inbound Packages',
- inboundPieceCount: 'Inbound Pieces',
- palletQuantity: 'Pallets',
- taskOrder: 'Task Order',
- taskProduct: 'Task Product',
- emptyAddProduct: 'Please add a product',
- emptyInboundList: 'No product inbound orders',
- emptyItemList: 'No inbound items',
- confirmInbound: 'Confirm Inbound',
- inboundSuccess: 'Inbound successful',
- saveFailed: 'Save failed',
- loadFailed: 'Load failed',
- detailLoadFailed: 'Failed to load detail',
- operationFailed: 'Operation failed',
- submitAudit: 'Submit Review',
- auditPass: 'Approve',
- auditReject: 'Reject',
- auditPassSuccess: 'Approved',
- auditRejectSuccess: 'Rejected',
- submitAuditSuccess: 'Review submitted',
- submitFailed: 'Submit failed',
- selectAuditor: 'Select auditor',
- selectInboundStatus: 'Select Inbound Status',
- confirmAuditPass: 'Confirm approving this product inbound order?',
- confirmAuditReject: 'Confirm rejecting this product inbound order?',
- noDetailId: 'No detail ID',
- completeProductPalletInfo: 'Complete product and pallet information',
- addProductFirst: 'Please add a product first',
- taskInfo: 'Task Info',
- relatedTask: 'Related Task Order',
- selectTask: 'Select task order',
- selectTaskProduct: 'Select task product',
- selectProduct: 'Select product',
- selectPallet: 'Select pallet',
- selectPalletFirst: 'Select pallet first',
- selectTaskFirst: 'Select task order first',
- selectProductFirst: 'Select product first',
- emptyTaskProducts: 'No products for this task order',
- completePalletInfo: 'Complete pallet warehouse/location/packages',
- productAdded: 'Product added',
- taskProductLoadFailed: 'Failed to load task products',
- workOrderNo: 'Work Order No.',
- code: 'Code',
- packagingScheme: 'Packaging Scheme',
- palletPackageQuantity: 'Packages per Pallet',
- packageQuantity: 'Pieces per Package',
- selectedPalletCount: '{count} pallet(s) selected',
- selectedCount: '{count} selected',
- packageUnit: '{count} pkg',
- pieceUnit: '{count} pcs',
- warehouse: 'Warehouse',
- area: 'Area',
- location: 'Location',
- deliveryDate: 'Delivery Date',
- emptyTask: 'No task orders',
- emptyProduct: 'No product data',
- emptyTaskProduct: 'No task products',
- emptyPallet: 'No pallets',
- spec: 'Spec',
- unit: 'Unit',
- palletCode: 'Pallet Code',
- palletType: 'Pallet Type',
- palletStatus: 'Pallet Status',
- autoCode: 'Auto Code',
- length: 'Length',
- width: 'Width',
- height: 'Height',
- productCount: 'Packages',
- ratedLoadWeight: 'Rated Load',
- enterPalletCode: 'Enter pallet code',
- selectPalletType: 'Select pallet type',
- selectPalletStatus: 'Select pallet status',
- enterPackageCount: 'Enter packages',
- selectWarehouse: 'Select warehouse',
- selectArea: 'Select area',
- selectUnit: 'Select unit',
- selectWarehouseFirst: 'Select warehouse first',
- emptyArea: 'No areas',
- enterRatedLoadWeight: 'Enter rated load',
- createSuccess: 'Created successfully',
- createPalletFailed: 'Failed to create pallet'
- },
- productCheck: {
- moduleName: 'Product Stock Check',
- createTitle: 'New Product Stock Check',
- executeTitle: 'Execute Stock Check',
- detailTitle: 'Product Stock Check Detail',
- selectProductTitle: 'Select Product',
- selectItemTitle: 'Select Check Items',
- selectWarehouseTitle: 'Select Warehouse',
- selectAreaTitle: 'Select Area',
- all: 'All',
- reset: 'Reset',
- clear: 'Clear',
- loading: 'Loading...',
- loadingMore: 'Loading more...',
- noMoreData: 'No more data',
- confirm: 'Confirm',
- cancel: 'Cancel',
- submit: 'OK',
- submitting: 'Submitting...',
- tip: 'Tip',
- choose: 'Please select',
- delete: 'Delete',
- save: 'Save',
- statusDraft: 'Pending Submit',
- statusAuditing: 'Pending Review',
- statusApproved: 'Reviewed',
- statusRejected: 'Rejected',
- searchDocumentPlaceholder: 'Enter check No.',
- searchProductPlaceholder: 'Search product name/code/spec',
- searchWarehousePlaceholder: 'Search warehouse name',
- searchAreaPlaceholder: 'Search area name/code',
- searchItemPlaceholder: 'Search product/warehouse/area',
- productInfo: 'Product Info',
- checkInfo: 'Check Info',
- checkTime: 'Check Time',
- selectCheckTime: 'Select check time',
- sourceType: 'Source Type',
- sourceTypeStock: 'By Stock',
- sourceTypeProduct: 'By Product',
- selectWarehouse: 'Select warehouse',
- selectWarehouseFirst: 'Select warehouse first',
- selectArea: 'Select area',
- warehouse: 'Warehouse',
- area: 'Area',
- warehouseAddress: 'Address',
- principal: 'Principal',
- checkStatus: 'Check Status',
- checked: 'Checked',
- unchecked: 'Unchecked',
- creator: 'Creator',
- reviewer: 'Reviewer',
- auditor: 'Reviewer',
- documentNo: 'Check No.',
- remark: 'Remark',
- remarkPlaceholder: 'Enter remark',
- productAndItems: 'Products & Items',
- selectProduct: 'Select Product',
- product: 'Product',
- checkItems: 'Check Items',
- selectAll: 'Select All',
- selectedCount: '{count} selected',
- selectedItemCount: '{count} item(s) selected',
- selectCheckItems: 'Select check items',
- stockCount: 'Book Qty',
- code: 'Code',
- spec: 'Spec',
- unit: 'Unit',
- difference: 'Difference',
- actualCount: 'Actual Qty',
- saveDraft: 'Save Draft',
- finishCheck: 'Finish Check',
- execute: 'Execute',
- submitAudit: 'Submit Review',
- auditPass: 'Approve',
- auditReject: 'Reject',
- auditPassSuccess: 'Approved',
- auditRejectSuccess: 'Rejected',
- submitAuditSuccess: 'Review submitted',
- submitFailed: 'Submit failed',
- selectAuditor: 'Select reviewer',
- selectStatus: 'Select Check Status',
- confirmAuditPass: 'Approve this product stock check?',
- confirmAuditReject: 'Reject this product stock check?',
- confirmDelete: 'Delete this product stock check?',
- deleteSuccess: 'Deleted',
- operationFailed: 'Operation failed',
- loadFailed: 'Load failed',
- detailLoadFailed: 'Failed to load detail',
- emptyList: 'No product stock checks',
- emptyProduct: 'No product data',
- emptyWarehouse: 'No warehouses',
- emptyArea: 'No areas',
- emptyItemList: 'No check items',
- emptyAddProduct: 'Please add a product',
- selectProductFirst: 'Select product first',
- completeCheckItems: 'Complete check item information',
- createSuccess: 'Created successfully',
- saveFailed: 'Save failed',
- saveSuccess: 'Saved',
- checkSuccess: 'Check completed',
- noDetailId: 'No detail ID',
- enterActualCount: 'Enter actual quantity',
- confirmActualCountZero: '{items} actual quantity is 0. Continue?'
- },
- productOutbound: {
- moduleName: 'Product Outbound',
- createTitle: 'New Product Outbound',
- detailTitle: 'Product Outbound Detail',
- selectProductTitle: 'Select Product',
- selectPalletTitle: 'Select Pallet',
- all: 'All',
- outboundStatus: 'Outbound Status',
- reset: 'Reset',
- clear: 'Clear',
- loading: 'Loading...',
- loadingMore: 'Loading more...',
- noMoreData: 'No more data',
- confirm: 'Confirm',
- cancel: 'Cancel',
- back: 'Back',
- submit: 'OK',
- submitting: 'Submitting...',
- tip: 'Tip',
- choose: 'Please select',
- statusPending: 'Pending Outbound',
- statusAuditing: 'Pending Review',
- statusStored: 'Outbounded',
- statusRejected: 'Rejected',
- searchDocumentPlaceholder: 'Enter outbound No.',
- searchProductPlaceholder: 'Search product name/code/spec',
- searchPalletPlaceholder: 'Search pallet code',
- productInfo: 'Product Info',
- outboundInfo: 'Outbound Info',
- outboundTime: 'Outbound Time',
- selectOutboundTime: 'Select outbound time',
- operator: 'Operator',
- selectOperator: 'Select operator',
- outboundQuantity: 'Outbound Qty',
- reviewer: 'Reviewer',
- auditor: 'Reviewer',
- documentNo: 'Document No.',
- outboundType: 'Outbound Type',
- remark: 'Remark',
- remarkPlaceholder: 'Enter remark',
- attachment: 'Attachment',
- chooseFile: 'Choose File',
- itemList: 'Outbound Items',
- addProduct: 'Add Product',
- product: 'Product',
- pallet: 'Pallet',
- packageCount: 'Packages',
- pieceCount: 'Pieces',
- outboundPackageCount: 'Outbound Packages',
- outboundPieceCount: 'Outbound Pieces',
- availablePackageCount: 'Available Packages',
- enterOutboundPackageCount: 'Enter outbound packages',
- palletQuantity: 'Pallet Qty',
- emptyAddProduct: 'Please add product',
- emptyOutboundList: 'No product outbound records',
- emptyItemList: 'No outbound items',
- confirmOutbound: 'Confirm Outbound',
- outboundSuccess: 'Outbound success',
- saveFailed: 'Save failed',
- loadFailed: 'Load failed',
- detailLoadFailed: 'Detail load failed',
- operationFailed: 'Operation failed',
- submitAudit: 'Submit Review',
- auditPass: 'Approve',
- auditReject: 'Reject',
- auditPassSuccess: 'Approved',
- auditRejectSuccess: 'Rejected',
- submitAuditSuccess: 'Submitted for review',
- submitFailed: 'Submit failed',
- selectAuditor: 'Select reviewer',
- selectOutboundStatus: 'Select outbound status',
- confirmAuditPass: 'Approve this product outbound order?',
- confirmAuditReject: 'Reject this product outbound order?',
- noDetailId: 'No detail ID',
- completeProductPalletInfo: 'Complete product and pallet info',
- addProductFirst: 'Add product first',
- selectProduct: 'Select product',
- selectPallet: 'Select pallet',
- selectPalletFirst: 'Select pallet first',
- selectProductFirst: 'Select product first',
- completePalletInfo: 'Complete pallet warehouse/location/package info',
- productAdded: 'Product added',
- code: 'Code',
- packagingScheme: 'Packaging Scheme',
- palletPackageQuantity: 'Packages per Pallet',
- packageQuantity: 'Pieces per Package',
- selectedPalletCount: '{count} pallets selected',
- selectedCount: '{count} selected',
- packageUnit: '{count} packages',
- pieceUnit: '{count} pieces',
- warehouse: 'Warehouse',
- area: 'Area',
- location: 'Location',
- emptyProduct: 'No product data',
- emptyPallet: 'No pallets',
- spec: 'Spec',
- unit: 'Unit',
- palletCode: 'Pallet Code',
- palletType: 'Pallet Type',
- palletStatus: 'Pallet Status',
- outMode: 'Outbound Mode',
- outModeWholePallet: 'Whole Pallet',
- outModeSplitPallet: 'Split Pallet'
- },
+export default {
+ common: {
+ submit: 'Submit',
+ close: 'Close',
+ exit: 'Exit',
+ notice: 'Notice',
+ moduleBuilding: 'This module is under construction',
+ updateSuccess: 'Updated successfully',
+ confirmLogout: 'Are you sure you want to log out?',
+ languageSwitched: 'Language switched',
+ more: 'More',
+ reset: 'Reset',
+ complete: 'Done',
+ edit: 'Edit',
+ saveFailed: 'Save failed'
+ },
+ tab: {
+ home: 'Home',
+ report: 'Reports',
+ work: 'Manage',
+ mine: 'Mine'
+ },
+ work:{
+ mold: '模具',
+ equipmentMaintenance: 'Equipment Maintenance',
+ keypart: '关键件',
+ spare: '备件',
+ },
+ nav: {
+ home: 'Home',
+ mine: 'Profile',
+ avatar: 'Edit Avatar',
+ info: 'Profile',
+ editInfo: 'Edit Profile',
+ pwd: 'Change Password',
+ setting: 'App Settings',
+ help: 'FAQ',
+ about: 'About'
+ },
+ dashboard: {
+ welcome: 'Welcome to',
+ subtitle: 'Besure Digital Intelligent Control Platform',
+ functionNav: 'Function Navigation',
+ editNavMenu: 'Edit Shortcuts',
+ configuredNav: 'Added',
+ unconfiguredNav: 'Add More',
+ dragHint: 'Drag icons to reorder, icons above will be displayed in control center',
+ clickHint: 'Tap icons to add or remove from configuration',
+ allNavMenu: 'All Functions',
+ productionOverview: 'Production Overview',
+ qualityOverview: 'Quality Overview',
+ productionPlan: 'Production Summary',
+ production: 'Production',
+ quality: 'Quality',
+ totalCount: 'Total',
+ passCount: 'Pass Count',
+ failCount: 'Fail Count',
+ qualityTrend: 'Quality Trend',
+ chartPlaceholder: 'Chart loading...',
+ totalWangongNumber: 'Total Reported',
+ totalPassNumber: 'Total Passed',
+ totalNoPassNumber: 'Total Failed',
+ totalPassRate: 'Total Pass Rate',
+ productPassRateRanking: 'Product Pass Rate Ranking',
+ passNumber: 'Pass Count',
+ noPassNumber: 'Fail Count',
+ periodLastWeek: 'Last Week',
+ periodThisWeek: 'This Week',
+ periodLast7Days: 'Last 7 Days',
+ periodLastMonth: 'Last Month',
+ periodThisMonth: 'This Month',
+ periodLastYear: 'Last Year',
+ collapseList: 'Collapse',
+ viewMore: 'View More ›',
+ productName: 'Product',
+ pipeline: 'Production Line',
+ planNumber: 'Planned Qty',
+ planStart: 'Start',
+ planEnd: 'End',
+ back: 'Back',
+ todoTitle: 'To-do Tasks',
+ noTodo: 'No pending tasks',
+ taskCode: 'Task Code: {value}',
+ taskType: 'Task Type: {value}',
+ taskTarget: 'Target: {value}',
+ createTime: 'Created At: {value}',
+ all: 'Total',
+ pending: 'Pending',
+ running: 'In Progress',
+ finished: 'Done',
+ mold: 'Mold',
+ equipment: 'Equipment',
+ keypart: 'Key Part',
+ spare: 'Spare Part',
+ product: 'Product Material',
+ statusScheduled: 'Scheduled',
+ statusTrial: 'Trial',
+ statusMass: 'Mass',
+ statusPause: 'Paused',
+ statusWaitStockIn: 'Waiting Stock-in',
+ viewPlan: 'View Plan: {code}',
+ filterTask: 'Task',
+ filterProduct: 'Product',
+ dateRange: 'Date Range',
+ startDate: 'Start Time',
+ endDate: 'End Time',
+ baogongNum: 'Reported',
+ passNum: 'Qualified',
+ noPassNum: 'Unqualified',
+ passRate: 'Pass Rate',
+ trendChart: 'Trend',
+ taskPlaceholder: 'Task mode under development',
+ totalTask: 'Total Tasks',
+ issuedNum: 'Issued',
+ partialScheduledNum: 'Partial Scheduled',
+ waitingProduction: 'Waiting',
+ producing: 'Producing',
+ completed: 'Completed',
+ taskTrend: 'Task Trend',
+ rangeYear: 'Last Year',
+ rangeMonth: 'This Month',
+ rangeWeek: 'This Week',
+ rangeToday: 'Today',
+ rangeCustom: 'Custom',
+ monday: 'Mon',
+ tuesday: 'Tue',
+ wednesday: 'Wed',
+ thursday: 'Thu',
+ friday: 'Fri',
+ saturday: 'Sat',
+ sunday: 'Sun'
+ },
+ deviceOverview: {
+ title: 'Device Overview',
+ totalDevices: 'Total',
+ runningCount: 'Running',
+ standbyCount: 'Standby',
+ faultCount: 'Fault',
+ offlineCount: 'Offline',
+ utilizationRate: 'Utilization',
+ bootRate: 'Boot Rate',
+ faultRate: 'Fault Rate',
+ rateTrend: 'Utilization / Boot Rate Trend',
+ onlyScheduled: 'Scheduled Only',
+ skipHoliday: 'Skip Holidays',
+ periodLastWeek: 'Last Week',
+ periodThisWeek: 'This Week',
+ periodLast7Days: 'Last 7 Days',
+ periodLastMonth: 'Last Month',
+ periodThisMonth: 'This Month',
+ periodLastYear: 'Last Year',
+ utilizationRanking: 'Last 7 Days Utilization Ranking',
+ utilizationRateTrend: 'Utilization Rate',
+ deviceRateTrend: 'Single Device 7-Day Utilization/Boot Rate Trend',
+ selectDevice: 'Select Device',
+ selectDeviceHint: 'Please select a device to view trend'
+ },
+ taskList: {
+ filter: 'Filter',
+ code: 'Task Code',
+ status: 'Status',
+ taskType: 'Task Type',
+ orderDate: 'Order Date',
+ deliveryDate: 'Delivery Date',
+ remark: 'Remark',
+ createTime: 'Create Time',
+ totalNumber: 'Total',
+ planNumber: 'Planned',
+ unPlanNumber: 'Unplanned',
+ storedPlanNumber: 'Stored',
+ urgent: 'Urgent',
+ noData: 'No task data',
+ viewTask: 'View Task: {code}'
+ },
+ planList: {
+ taskCode: 'Task Code',
+ planCode: 'Plan Code',
+ employeeName: 'Reporter',
+ baogongNum: 'Reported',
+ passNum: 'Passed',
+ noPassNum: 'Failed',
+ passRate: 'Pass Rate',
+ baogongTime: 'Report Time',
+ reason: 'Reason',
+ noData: 'No report data',
+ viewDetail: 'View Detail: {code}'
+ },
+ functionCommon: {
+ search: 'Search',
+ reset: 'Reset',
+ cancel: 'Cancel',
+ confirm: 'Confirm',
+ save: 'Save',
+ loading: 'Loading...',
+ loadingMore: 'Loading more...',
+ noMoreData: 'No more data',
+ noIdView: 'Missing ID, cannot view details',
+ noIdEdit: 'Missing ID, cannot edit',
+ noIdDelete: 'Missing ID, cannot delete',
+ loadFailed: 'Load failed',
+ deleteSuccess: 'Deleted successfully',
+ deleteFailed: 'Delete failed',
+ saveSuccess: 'Saved successfully',
+ saveFailed: 'Save failed',
+ createSuccess: 'Created successfully',
+ updateSuccess: 'Updated successfully',
+ confirmDelete: 'Confirm deletion',
+ uploading: 'Uploading',
+ uploadImageFailed: 'Image upload failed',
+ yes: 'Yes',
+ no: 'No',
+ all: 'All',
+ noMore: 'No more data',
+ confirmTitle: 'Confirm'
+ },
+ moldGet: {
+ moduleName: 'Mold Stock-out',
+ subTitle: 'Filter quickly by no and status',
+ detailTitle: 'Mold Stock-out Detail',
+ basicInfo: 'Basic Info',
+ outNo: 'Stock-out No',
+ outType: 'Stock-out Type',
+ outTime: 'Stock-out Time',
+ outTimeSingle: 'Stock-out Date',
+ outTimePlaceholder: 'Select stock-out date',
+ warehouse: 'Warehouse',
+ allWarehouse: 'All Warehouses',
+ warehousePlaceholder: 'Select warehouse',
+ creator: 'Creator',
+ status: 'Status',
+ allStatus: 'All Status',
+ remark: 'Remark',
+ itemRemark: 'Item Remark',
+ attachment: 'Attachment',
+ fileUrlPlaceholder: 'Enter attachment URL',
+ remarkPlaceholder: 'Enter remark',
+ moldName: 'Mold',
+ moldCode: 'Mold Code',
+ moldStatus: 'Mold Status',
+ moldUseTime: 'Use Time',
+ machineName: 'Machine',
+ isEnable: 'Enabled',
+ createTime: 'Created At',
+ searchNo: 'Enter stock-out no',
+ searchMold: 'Enter mold code or name',
+ searchCode: 'Enter mold code',
+ searchName: 'Enter mold name',
+ itemListTitle: 'Item List',
+ selectMold: 'Select Mold',
+ noItems: 'No items',
+ count: 'Count',
+ noAuto: 'Generated automatically',
+ createTitle: 'Create Mold Stock-out',
+ editTitle: 'Edit Mold Stock-out',
+ edit: 'Edit',
+ delete: 'Delete',
+ approve: 'Approve',
+ empty: 'No mold stock-out data',
+ noMoldData: 'No mold options',
+ loadEditFailed: 'Failed to load edit data',
+ validatorOutTimeRequired: 'Stock-out date is required',
+ validatorWarehouseRequired: 'Warehouse is required',
+ validatorItemRequired: 'Select at least one mold',
+ validatorCountRequired: 'Count must be greater than 0',
+ confirmDelete: 'Delete stock-out {no}?',
+ confirmApprove: 'Approve stock-out {no}?',
+ approveSuccess: 'Approved successfully'
+ },
+ moldReturn: {
+ moduleName: 'Mold Stock-in',
+ subTitle: 'Filter quickly by no and status',
+ detailTitle: 'Mold Stock-in Detail',
+ basicInfo: 'Basic Info',
+ inNo: 'Stock-in No',
+ inType: 'Stock-in Type',
+ inTime: 'Stock-in Time',
+ inTimeSingle: 'Stock-in Date',
+ inTimePlaceholder: 'Select stock-in date',
+ warehouse: 'Warehouse',
+ allWarehouse: 'All Warehouses',
+ warehousePlaceholder: 'Select warehouse',
+ creator: 'Creator',
+ status: 'Status',
+ allStatus: 'All Status',
+ remark: 'Remark',
+ itemRemark: 'Item Remark',
+ attachment: 'Attachment',
+ fileUrlPlaceholder: 'Enter attachment URL',
+ remarkPlaceholder: 'Enter remark',
+ moldName: 'Mold',
+ moldCode: 'Mold Code',
+ moldStatus: 'Mold Status',
+ moldUseTime: 'Use Time',
+ searchNo: 'Enter stock-in no',
+ searchCode: 'Enter mold code',
+ searchName: 'Enter mold name',
+ itemListTitle: 'Item List',
+ selectMold: 'Select Mold',
+ noItems: 'No items',
+ count: 'Count',
+ noAuto: 'Generated automatically',
+ createTitle: 'Create Mold Stock-in',
+ editTitle: 'Edit Mold Stock-in',
+ approve: 'Approve',
+ empty: 'No mold stock-in data',
+ noMoldData: 'No mold options',
+ loadEditFailed: 'Failed to load edit data',
+ validatorInTimeRequired: 'Stock-in date is required',
+ validatorWarehouseRequired: 'Warehouse is required',
+ validatorItemRequired: 'Select at least one mold',
+ validatorCountRequired: 'Count must be greater than 0',
+ confirmDelete: 'Delete stock-in {no}?',
+ confirmApprove: 'Approve stock-in {no}?',
+ approveSuccess: 'Approved successfully'
+ },
+ moldOperate: {
+ moduleName: 'Mold Operate',
+ subTitle: 'Mold mounting and dismounting records',
+ detailTitle: 'Mold Operate Detail',
+ basicInfo: 'Basic Info',
+ tabUp: 'Mount',
+ tabDown: 'Dismount',
+ operateType: 'Operation Type',
+ mold: 'Mold',
+ lowerMold: 'Dismount Mold',
+ selectMold: 'Select Mold',
+ noSelectedMold: 'No selected molds',
+ allMold: 'All Molds',
+ searchRemark: 'Enter remark keyword',
+ searchCode: 'Enter mold code',
+ searchName: 'Enter mold name',
+ moldCode: 'Mold Code',
+ moldName: 'Mold Name',
+ device: 'Device',
+ deviceName: 'Device Name',
+ creatorName: 'Creator',
+ remark: 'Remark',
+ createTime: 'Created At',
+ createTitle: 'Create Mold Operate',
+ editTitle: 'Edit Mold Operate',
+ empty: 'No mold operate data',
+ noMoldData: 'No mold options',
+ placeholderDevice: 'Select device',
+ placeholderRemark: 'Enter remark',
+ validatorOperateTypeRequired: 'Operation type is required',
+ validatorDeviceRequired: 'Device is required',
+ validatorMoldRequired: 'Select at least one mold for mounting',
+ validatorOperatorRequired: 'Please select operator',
+ validatorLowerMoldRequired: 'Select at least one mold for dismounting',
+ loadEditFailed: 'Failed to load edit data',
+ confirmDelete: 'Confirm delete this mold operate record?',
+ scanDevice: 'Scan Device',
+ selectDevice: 'Select Device',
+ selectedDevice: 'Selected Device',
+ deviceCode: 'Device Code',
+ productionLine: 'Production Line',
+ currentMold: 'Current Mold',
+ deviceStatus: 'Device Status',
+ statusRunning: 'Running',
+ statusStop: 'Stopped',
+ statusFault: 'Fault',
+ selectMountMold: 'Select Mold to Mount',
+ product: 'Product',
+ status: 'Status',
+ pendingMount: 'Pending Mount',
+ confirmMount: 'Confirm Mount',
+ clickSelectMold: 'Click to select mold',
+ noDeviceData: 'No device data',
+ deviceNotFound: 'Device not found',
+ deviceInfo: 'Device Info',
+ currentMoldInfo: 'Current Mold on Machine',
+ mountTime: 'Mount Time',
+ useCount: 'Usage Count',
+ countUnit: '',
+ changeMountTarget: 'Change Mount Target',
+ changeTarget: 'Change Dismount Target',
+ confirmDismount: 'Confirm Dismount',
+ clickSelectDeviceFirst: 'Please select a device first',
+ noMoldOnDevice: 'No mold on this device',
+ historySuffix: ' History',
+ historyTitle: 'Mold Operate History',
+ searchPlaceholder: 'Search device/mold name',
+ placeholderOperator: 'Select operator',
+ filterAll: 'All',
+ filterToday: 'Today',
+ filterWeek: 'This Week',
+ historyEmpty: 'No history records',
+ totalPrefix: 'Total: ',
+ totalSuffix: '',
+ confirmDeleteHistory: 'Confirm delete this history record?',
+ operateTime: 'Operate Time',
+ operator: 'Operator'
+ },
+ moldInspectionItems: {
+ moduleName: 'Inspection Items',
+ subTitle: 'Mold management inspection items',
+ detailTitle: 'Inspection Item Detail',
+ basicInfo: 'Basic Info',
+ code: 'Item Code',
+ name: 'Item Name',
+ inspectionMethod: 'Inspection Method',
+ valueType: 'Value Type',
+ isEnable: 'Enabled',
+ judgmentCriteria: 'Judgment Criteria',
+ creatorName: 'Creator',
+ createTime: 'Created At',
+ searchPlaceholder: 'Enter code/name/criteria',
+ createTitle: 'Create Inspection Item',
+ editTitle: 'Edit Inspection Item',
+ empty: 'No inspection items',
+ loadEditFailed: 'Failed to load edit data',
+ confirmDelete: 'Confirm delete this inspection item?',
+ placeholderCode: 'Enter item code',
+ placeholderName: 'Enter item name',
+ placeholderInspectionMethod: 'Select inspection method',
+ placeholderValueType: 'Select value type',
+ placeholderIsEnable: 'Select enabled status',
+ placeholderJudgmentCriteria: 'Enter judgment criteria',
+ validatorSubjectCodeRequired: 'Item code is required',
+ validatorSubjectNameRequired: 'Item name is required',
+ validatorInspectionMethodRequired: 'Inspection method is required',
+ validatorValueTypeRequired: 'Value type is required',
+ validatorIsEnableRequired: 'Enabled status is required',
+ validatorJudgmentCriteriaRequired: 'Judgment criteria is required'
+ },
+ moldInspectionPlan: {
+ moduleName: 'Inspection Plan',
+ subTitle: 'Mold management inspection plan',
+ detailTitle: 'Inspection Plan Detail',
+ basicInfo: 'Basic Info',
+ planName: 'Plan Name',
+ planType: 'Plan Type',
+ planTypeMaintain: 'Maintenance',
+ planTypeInspect: 'Inspection',
+ description: 'Description',
+ subjectName: 'Inspection Items',
+ creatorName: 'Creator',
+ createTime: 'Created At',
+ updateTime: 'Updated At',
+ searchPlaceholder: 'Enter plan name',
+ createTitle: 'Create Inspection Plan',
+ editTitle: 'Edit Inspection Plan',
+ empty: 'No inspection plan data',
+ loadEditFailed: 'Failed to load edit data',
+ confirmDelete: 'Confirm delete this inspection plan?',
+ placeholderPlanName: 'Enter plan name',
+ placeholderPlanType: 'Select plan type',
+ placeholderDescription: 'Enter description',
+ placeholderSubjectSelect: 'Select inspection items',
+ subjectSelectTitle: 'Select Inspection Items',
+ noSubjectData: 'No inspection items',
+ validatorPlanNameRequired: 'Plan name is required',
+ validatorPlanTypeRequired: 'Plan type is required',
+ subjectListTitle: 'Related Inspection Items',
+ subjectCode: 'Item Code',
+ inspectionMethod: 'Inspection Method',
+ judgmentCriteria: 'Judgment Criteria'
+ },
+ moldTaskConfig: {
+ moduleName: 'Inspection Task',
+ subTitle: 'Mold management inspection task',
+ detailTitle: 'Inspection Task Detail',
+ basicInfo: 'Basic Info',
+ name: 'Task Name',
+ taskType: 'Task Type',
+ taskTypeInspect: 'Inspection',
+ taskTypeMaintain: 'Maintenance',
+ moldList: 'Mold List',
+ projectForm: 'Inspection Plan',
+ projectFormName: 'Project Form',
+ dateRange: 'Valid Date Range',
+ startDate: 'Start Date',
+ endDate: 'End Date',
+ cronExpression: 'Cron Expression',
+ operableUsers: 'Operable Users',
+ enabled: 'Enabled',
+ creatorName: 'Creator',
+ createTime: 'Created At',
+ updateTime: 'Updated At',
+ searchPlaceholder: 'Enter task name',
+ createTitle: 'Create Inspection Task',
+ editTitle: 'Edit Inspection Task',
+ empty: 'No inspection task data',
+ loadEditFailed: 'Failed to load edit data',
+ confirmDeleteContent: 'Confirm delete this inspection task [{name}]?',
+ placeholderName: 'Enter task name',
+ placeholderTaskType: 'Select task type',
+ placeholderMoldList: 'Select molds',
+ placeholderProjectForm: 'Select inspection plans',
+ placeholderStartDate: 'Select start date',
+ placeholderEndDate: 'Select end date',
+ placeholderCron: 'Enter cron expression',
+ placeholderOperableUsers: 'Select operable users',
+ validatorNameRequired: 'Task name is required',
+ validatorTaskTypeRequired: 'Task type is required',
+ validatorMoldListRequired: 'Mold list is required',
+ validatorProjectFormRequired: 'Inspection plan is required',
+ validatorDateRangeRequired: 'Date range is required',
+ createTicketSuccess: 'Work order created successfully',
+ createTicketFail: 'Work order creation failed',
+ moldSelectTitle: 'Select Molds',
+ planSelectTitle: 'Select Inspection Plans',
+ userSelectTitle: 'Select Operable Users'
+ },
+ equipmentInspectionTasks: {
+ moduleName: 'Equipment Inspection Tasks',
+ subTitle: 'Work order management for equipment inspection tasks',
+ detailTitle: 'Equipment Inspection Task Detail',
+ basicInfo: 'Basic Info',
+ createTicket: 'Add Work Order Management',
+ name: 'Task Name',
+ taskType: 'Task Type',
+ taskTypeInspect: 'Inspection',
+ taskTypeMaintain: 'Maintenance',
+ deviceList: 'Device List',
+ projectFormName: 'Project Form',
+ dateRange: 'Valid Date Range',
+ cronExpression: 'Cron Expression',
+ operableUsers: 'Operable Users',
+ enabled: 'Enabled',
+ creatorName: 'Creator',
+ createTime: 'Created At',
+ updateTime: 'Updated At',
+ searchPlaceholder: 'Enter task name/device code/device name',
+ empty: 'No equipment inspection tasks',
+ createTicketSuccess: 'Work order created successfully',
+ createTicketFail: 'Work order creation failed',
+ lineFilter: 'Line',
},
+ equipmentInspectionRecord: {
+ moduleName: 'Equipment Inspection Records',
+ subTitle: 'Equipment inspection record list',
+ detailTitle: 'Equipment Inspection Record Detail',
+ taskType: 'Task Type',
+ taskTypeInspect: 'Inspection',
+ taskTypeMaintain: 'Maintenance',
+ taskTypeInspectShort: 'I',
+ taskTypeMaintainShort: 'M',
+ planNo: 'Task No.',
+ deviceName: 'Device Name',
+ configName: 'Inspection Template',
+ jobStatus: 'Job Status',
+ jobStatusPending: 'Pending',
+ jobStatusProcessing: 'Processing',
+ jobStatusCompleted: 'Completed',
+ jobStatusTimeout: 'Timeout',
+ jobStatusCancelled: 'Cancelled',
+ jobResult: 'Result',
+ jobResultOk: 'Pass',
+ jobResultNg: 'Fail',
+ taskTime: 'Job Time',
+ searchPlaceholder: 'Enter task no/device code/device name',
+ empty: 'No equipment inspection records',
+ progressTitle: 'Progress',
+ inspectionMethod: 'Inspection Method',
+ judgmentCriteria: 'Criteria',
+ valueType: 'Value Type',
+ resultText: 'Result',
+ requiredText: 'Required',
+ inspectionResultPending: 'Pending',
+ inspectionResultPass: 'Pass',
+ inspectionResultFail: 'Fail',
+ textInput: 'Input Value',
+ inputPlaceholder: 'Please enter',
+ remark: 'Remark',
+ images: 'Images',
+ maxUploadCount: 'You can upload up to 9 images',
+ selectAllDecisionError: 'Please choose a result for all pending items',
+ noResultData: 'No inspection items',
+ lineFilter: 'Line',
+ },
+ moldWorkOrder: {
+ moduleName: 'Inspection Records',
+ subTitle: 'Mold management inspection records',
+ detailTitle: 'Inspection Record Detail',
+ basicInfo: 'Basic Info',
+ resultListTitle: 'Inspection Results',
+ planNo: 'Ticket No.',
+ moldName: 'Mold Name',
+ planType: 'Task Type',
+ planTypeInspect: 'Inspection',
+ planTypeMaintain: 'Maintenance',
+ configName: 'Task Config',
+ jobStatus: 'Job Status',
+ jobStatusPending: 'Pending',
+ jobStatusProcessing: 'Processing',
+ jobStatusCompleted: 'Completed',
+ jobStatusTimeout: 'Timeout',
+ jobStatusCancelled: 'Cancelled',
+ jobResult: 'Job Result',
+ jobResultOk: 'OK',
+ jobResultNg: 'NG',
+ operatorName: 'Operator',
+ taskTime: 'Task Time',
+ taskEndTime: 'End Time',
+ cancelReason: 'Cancel Reason',
+ createTime: 'Created At',
+ searchPlaceholder: 'Enter ticket no.',
+ empty: 'No inspection records',
+ cancelTask: 'Cancel Task',
+ cancelSuccess: 'Cancelled successfully',
+ cancelFail: 'Cancel failed',
+ placeholderCancelReason: 'Enter cancel reason',
+ validatorCancelReasonRequired: 'Cancel reason is required',
+ inspectionItemName: 'Inspection Item',
+ inspectionMethod: 'Inspection Method',
+ judgmentCriteria: 'Judgment Criteria',
+ valueType: 'Value Type',
+ inspectionResult: 'Inspection Result',
+ inspectionResultPending: 'Pending',
+ inspectionResultPass: 'Pass',
+ inspectionResultFail: 'Fail',
+ textInput: 'Input Value',
+ remark: 'Remark',
+ images: 'Images',
+ noResultData: 'No inspection result data',
+ loadMore: 'Load More'
+ },
+ mine: {
+ clickLogin: 'Tap to sign in',
+ username: 'Username: {name}',
+ profile: 'Profile',
+ feedback: 'Feedback',
+ service: 'Support',
+ changePassword: 'Change Password',
+ logout: 'Log Out',
+ editProfile: 'Edit Profile',
+ faq: 'FAQ',
+ about: 'About',
+ appSettings: 'Settings'
+ },
+ setting: {
+ language: 'System Language',
+ currentLanguage: 'Current: {language}',
+ terminalMode: 'Terminal Mode',
+ currentTerminal: 'Current Terminal: {terminal}',
+ switchingTerminal: 'Switching terminal...',
+ terminalSwitched: 'Switched to {terminal}',
+ switchLanguage: 'Switch Language',
+ checkUpdate: 'Check Updates',
+ cleanCache: 'Clear Cache',
+ logout: 'Log Out',
+ serverAddress: 'Server Address',
+ serverAddressHint: 'Enter the backend API address for the current account',
+ serverAddressPlaceholder: 'Enter backend address',
+ serverAddressRequired: 'Please enter the backend address',
+ serverAddressSaved: 'Server address saved. Please log in again',
+ mobile: 'Mobile',
+ scanner: 'Scanner',
+ zhCN: 'Chinese',
+ enUS: 'English'
+ },
+ about: {
+ appName: 'Besure Production System',
+ version: 'Version',
+ email: 'Official Email',
+ hotline: 'Service Hotline',
+ website: 'Website'
+ },
+ help: {
+ appUserQuestion: 'App User Questions',
+ otherQuestion: 'Other Questions',
+ appFeatureQuestion: 'What business features are supported by the app?',
+ appFeatureAnswer: 'Plan start, production report, material feeding records, production records',
+ reportQuestion: 'How can I submit a production report?',
+ reportAnswer: 'You can submit it on the report page.',
+ planQuestion: 'How is plan management handled?',
+ planAnswer: 'Use the plan management module.',
+ materialQuestion: 'How to manage feeding records?',
+ materialAnswer: 'Use the feeding record module.',
+ logoutQuestion: 'How do I log out?',
+ logoutAnswer: 'Go to [Mine] - [App Settings] - [Log Out] to sign out.',
+ avatarQuestion: 'How do I change my avatar?',
+ avatarAnswer: 'Go to [Mine] - [Choose Avatar] - [Submit] to update your avatar.',
+ passwordQuestion: 'How do I change my login password?',
+ passwordAnswer: 'Go to [Mine] - [App Settings] - [Change Password] to update your password.'
+ },
+ info: {
+ username: 'Username',
+ nickname: 'Nickname',
+ gender: 'Gender',
+ male: 'Male',
+ female: 'Female',
+ phone: 'Mobile',
+ email: 'Email',
+ createdAt: 'Created At'
+ },
+ editInfo: {
+ nickname: 'Nickname',
+ nicknamePlaceholder: 'Enter nickname',
+ phone: 'Mobile',
+ phonePlaceholder: 'Enter mobile number',
+ email: 'Email',
+ emailPlaceholder: 'Enter email',
+ gender: 'Gender',
+ nicknameRequired: 'Nickname is required',
+ phoneRequired: 'Mobile number is required',
+ phoneInvalid: 'Please enter a valid mobile number',
+ emailRequired: 'Email is required',
+ emailInvalid: 'Please enter a valid email'
+ },
+ pwd: {
+ oldPassword: 'Current Password',
+ newPassword: 'New Password',
+ confirmPassword: 'Confirm Password',
+ oldPasswordPlaceholder: 'Enter current password',
+ newPasswordPlaceholder: 'Enter new password',
+ confirmPasswordPlaceholder: 'Confirm new password',
+ oldPasswordRequired: 'Current password is required',
+ newPasswordRequired: 'New password is required',
+ passwordLength: 'Length must be between 6 and 20 characters',
+ confirmPasswordRequired: 'Please confirm password',
+ passwordNotMatch: 'The two passwords do not match'
+ },
+ avatar: {
+ chooseAvatar: 'Choose Avatar'
+ },
+ materialCategory: {
+ moduleName: 'Product Category',
+ subTitle: 'Product material category management',
+ detailTitle: 'Category Detail',
+ basicInfo: 'Basic Info',
+ code: 'Category Code',
+ name: 'Category Name',
+ parentName: 'Parent Category',
+ rootCategory: 'None (Top Level)',
+ sort: 'Sort',
+ status: 'Status',
+ statusEnable: 'Enable',
+ statusDisable: 'Disable',
+ createTime: 'Created At',
+ searchPlaceholder: 'Enter category code/name',
+ createTitle: 'Create Category',
+ editTitle: 'Edit Category',
+ empty: 'No category data',
+ loadEditFailed: 'Failed to load edit data',
+ noId: 'Missing category ID',
+ loadFailed: 'Failed to load category detail',
+ placeholderCode: 'Enter category code',
+ placeholderName: 'Enter category name',
+ placeholderParent: 'Select parent category',
+ placeholderSort: 'Enter sort order',
+ placeholderStatus: 'Select status',
+ validatorCodeRequired: 'Category code is required',
+ validatorNameRequired: 'Category name is required',
+ validatorSortRequired: 'Sort order is required',
+ validatorStatusRequired: 'Status is required',
+ confirmDeleteContent: 'Confirm delete category [{name}]?'
+ },
+ materialInfo: {
+ moduleName: 'Product Material',
+ subTitle: 'Product material information management',
+ detailTitle: 'Material Detail',
+ basicInfo: 'Basic Info',
+ barCode: 'Barcode',
+ name: 'Material Name',
+ category: 'Category',
+ unit: 'Unit',
+ standard: 'Specification',
+ expiryDay: 'Shelf Life (Days)',
+ status: 'Status',
+ statusEnable: 'Enable',
+ statusDisable: 'Disable',
+ remark: 'Remark',
+ createTime: 'Created At',
+ autoCode: 'Auto Generate',
+ searchPlaceholder: 'Enter material name/barcode',
+ createTitle: 'Create Material',
+ editTitle: 'Edit Material',
+ empty: 'No material data',
+ loadEditFailed: 'Failed to load edit data',
+ noId: 'Missing material ID',
+ loadFailed: 'Failed to load material detail',
+ placeholderBarCode: 'Enter barcode',
+ placeholderName: 'Enter material name',
+ placeholderCategory: 'Select category',
+ placeholderUnit: 'Select unit',
+ placeholderStandard: 'Enter specification',
+ placeholderExpiryDay: 'Enter shelf life days',
+ placeholderStatus: 'Select status',
+ placeholderRemark: 'Enter remark',
+ validatorBarCodeRequired: 'Barcode is required',
+ validatorNameRequired: 'Material name is required',
+ validatorCategoryRequired: 'Category is required',
+ validatorUnitRequired: 'Unit is required',
+ confirmDeleteContent: 'Confirm delete material [{name}]?'
+ },
+ productBom: {
+ moduleName: 'Product BOM',
+ subTitle: 'Product BOM management',
+ detailTitle: 'BOM Detail',
+ basicInfo: 'Basic Info',
+ code: 'BOM Code',
+ version: 'Version',
+ product: 'Product',
+ unit: 'Unit',
+ yieldRate: 'Yield Rate',
+ isEnable: 'Enabled',
+ enableYes: 'Yes',
+ enableNo: 'No',
+ remark: 'Remark',
+ createTime: 'Created At',
+ searchPlaceholder: 'Enter BOM code',
+ createTitle: 'Create BOM',
+ editTitle: 'Edit BOM',
+ empty: 'No BOM data',
+ loadEditFailed: 'Failed to load edit data',
+ noId: 'Missing BOM ID',
+ loadFailed: 'Failed to load BOM detail',
+ placeholderCode: 'Enter BOM code',
+ placeholderVersion: 'Enter version',
+ placeholderProduct: 'Select product',
+ placeholderUnit: 'Select unit',
+ placeholderYieldRate: 'Enter yield rate',
+ placeholderEnable: 'Select enabled status',
+ placeholderRemark: 'Enter remark',
+ validatorCodeRequired: 'BOM code is required',
+ validatorVersionRequired: 'Version is required',
+ validatorProductRequired: 'Product is required',
+ validatorUnitRequired: 'Unit is required',
+ validatorEnableRequired: 'Enabled status is required',
+ confirmDeleteContent: 'Confirm delete BOM [{code}]?',
+ detailTab: 'BOM Details',
+ detailUsageNumber: 'Usage Qty',
+ detailUnit: 'Unit',
+ detailLossRate: 'Loss Rate',
+ detailRemark: 'Remark',
+ detailEmpty: 'No BOM detail data'
+ },
+ equipmentCategory: {
+ moduleName: 'Equipment Category',
+ subTitle: 'Equipment category management',
+ detailTitle: 'Category Detail',
+ basicInfo: 'Basic Info',
+ code: 'Category Code',
+ name: 'Category Name',
+ parentName: 'Parent Category',
+ rootCategory: 'None (Top Level)',
+ sort: 'Sort',
+ remark: 'Remark',
+ createTime: 'Created At',
+ searchPlaceholder: 'Enter category code/name',
+ createTitle: 'Create Category',
+ editTitle: 'Edit Category',
+ empty: 'No category data',
+ loadEditFailed: 'Failed to load edit data',
+ noId: 'Missing category ID',
+ loadFailed: 'Failed to load category detail',
+ placeholderCode: 'Enter category code',
+ placeholderName: 'Enter category name',
+ placeholderParent: 'Select parent category',
+ placeholderSort: 'Enter sort order',
+ placeholderRemark: 'Enter remark',
+ validatorCodeRequired: 'Category code is required',
+ validatorNameRequired: 'Category name is required',
+ confirmDeleteContent: 'Confirm delete category [{name}]?'
+ },
+ equipmentLedger: {
+ moduleName: 'Equipment Ledger11',
+ subTitle: 'Equipment ledger management',
+ detailTitle: 'Equipment Detail',
+ basicInfo: 'Basic Info',
+ deviceCode: 'Device Code',
+ deviceName: 'Device Name',
+ deviceType: 'Device Type',
+ deviceStatus: 'Device Status',
+ lineFilter: 'Line',
+ allFilter: 'All Filters',
+ categoryStatus: 'Category & Status',
+ dateFilter: 'Date Filter',
+ deviceBrand: 'Device Brand',
+ sn: 'Serial No.',
+ scanUnrecognized: 'QR code content not recognized',
+ scanTypeMismatch: 'QR code type does not match',
+ scanFailed: 'Scan failed',
+ deviceSpec: 'Device Spec',
+ isScheduled: 'Scheduled',
+ ratedCapacity: 'Rated Capacity',
+ dailyAverageValue: 'Daily Avg Value',
+ dataCollectionCapacity: 'Data Collection Capacity',
+ productionDate: 'Production Date',
+ outgoingTime: 'Outgoing Date',
+ factoryEntryDate: 'Factory Entry Date',
+ deviceLocation: 'Device Location',
+ deviceManagerName: 'Device Manager',
+ workshop: 'Workshop',
+ remark: 'Remark',
+ creatorName: 'Creator',
+ createTime: 'Created At',
+ autoCode: 'Auto Generate',
+ yes: 'Yes',
+ no: 'No',
+ searchPlaceholder: 'Enter device code/name',
+ createTitle: 'Create Equipment',
+ editTitle: 'Edit Equipment',
+ empty: 'No equipment data',
+ loadEditFailed: 'Failed to load edit data',
+ noId: 'Missing equipment ID',
+ loadFailed: 'Failed to load equipment detail',
+ placeholderDeviceCode: 'Enter device code',
+ placeholderDeviceName: 'Enter device name',
+ placeholderDeviceBrand: 'Enter device brand',
+ placeholderSn: 'Enter serial number',
+ placeholderDeviceType: 'Select device type',
+ placeholderDeviceSpec: 'Enter device spec',
+ placeholderRatedCapacity: 'Enter rated capacity',
+ placeholderDailyAverageValue: 'Enter daily average value',
+ placeholderDataCollectionCapacity: 'Enter data collection capacity',
+ placeholderProductionDate: 'Select production date',
+ placeholderOutgoingTime: 'Select outgoing date',
+ placeholderFactoryEntryDate: 'Select factory entry date',
+ placeholderDeviceLocation: 'Enter device location',
+ placeholderRemark: 'Enter remark',
+ validatorDeviceCodeRequired: 'Device code is required',
+ validatorDeviceNameRequired: 'Device name is required',
+ validatorDeviceTypeRequired: 'Device type is required',
+ validatorProductionDateRequired: 'Production date is required',
+ validatorFactoryEntryDateRequired: 'Factory entry date is required',
+ validatorRatedCapacityRequired: 'Rated capacity is required',
+ validatorDailyAverageValueRequired: 'Daily average value is required',
+ validatorDataCollectionCapacityRequired: 'Data collection capacity is required',
+ confirmDeleteContent: 'Confirm delete equipment [{name}]?',
+ checkHistory: 'Inspection',
+ maintainHistory: 'Maintenance',
+ repairHistory: 'Repair',
+ operator: 'Operator',
+ inspectionMethod: 'Inspection Method',
+ criteria: 'Criteria',
+ inspectionTime: 'Inspection Time',
+ maintainMethod: 'Maintenance Method',
+ maintainTime: 'Maintenance Time',
+ repairName: 'Repair Order Name',
+ faultPhenomenon: 'Fault Phenomenon',
+ faultDescription: 'Fault Description',
+ replacementParts: 'Replacement Parts',
+ repairContent: 'Repair Content',
+ finishDate: 'Finish Date',
+ faultImages: 'Fault Images',
+ repairedImages: 'After-repair Images',
+ noHistoryData: 'No history data',
+ resultPending: 'Pending',
+ resultPass: 'Pass',
+ resultFail: 'Fail',
+ repairPending: 'Pending',
+ repairProcessing: 'Processing',
+ repairCompleted: 'Completed',
+ repairAbnormal: 'Abnormal'
+ },
+ equipmentMaintenance: {
+ moduleName: 'Equipment Repair',
+ createTitle: 'Create Equipment Repair',
+ editTitle: 'Edit Equipment Repair',
+ detailTitle: 'Equipment Repair Detail',
+ repairTitle: 'Repair Processing',
+ basicInfo: 'Basic Info',
+ repairObject: 'Repair Object',
+ repairCode: 'Repair Order No.',
+ repairName: 'Repair Order Name',
+ requireDate: 'Report Date',
+ acceptedBy: 'Repair Technician',
+ confirmBy: 'Inspector',
+ machineryTypeId: 'Equipment Type',
+ machineryTypeDevice: 'Equipment',
+ machineryTypeKeyItem: 'Key Component',
+ device: 'Equipment',
+ component: 'Key Component',
+ faultLevel: 'Failure Level',
+ isShutdown: 'Shutdown Required',
+ status: 'Document Status',
+ faultInfo: 'Fault Info',
+ faultPhenomenon: 'Fault Phenomenon',
+ faultDescription: 'Fault Description',
+ faultImages: 'Fault Images',
+ repairResultSection: 'Repair Result',
+ repairResult: 'Repair Result',
+ finishDate: 'Completion Date',
+ confirmDate: 'Acceptance Date',
+ downtimeDuration: 'Downtime Duration',
+ faultReason: 'Fault Cause',
+ handlingMeasures: 'Handling Measures',
+ replacementParts: 'Replacement Parts',
+ repairContent: 'Repair Content',
+ repairedImages: 'Post-repair Images',
+ remark: 'Remark',
+ autoCode: 'Auto Generate',
+ deviceLabel: 'Equipment',
+ reportTimeLabel: 'Report Time',
+ searchPlaceholder: 'Enter order no/device code/device name',
+ empty: 'No repair records',
+ statusPending: 'Pending Repair',
+ statusPassed: 'Passed',
+ statusRejected: 'Rejected',
+ placeholderRepairCode: 'Enter repair order no.',
+ placeholderRepairName: 'Enter repair order name',
+ placeholderRequireDate: 'Select report date',
+ placeholderAcceptedBy: 'Select repair technician',
+ placeholderConfirmBy: 'Select inspector',
+ placeholderDevice: 'Select equipment',
+ placeholderComponent: 'Select key component',
+ placeholderFaultPhenomenon: 'Enter fault phenomenon',
+ placeholderFaultDescription: 'Enter fault description',
+ placeholderFinishDate: 'Select completion date',
+ placeholderConfirmDate: 'Select acceptance date',
+ placeholderDowntimeDuration: 'Enter downtime duration in hours',
+ placeholderFaultReason: 'Enter fault cause',
+ placeholderHandlingMeasures: 'Enter handling measures',
+ placeholderReplacementParts: 'Enter replacement parts',
+ placeholderRepairContent: 'Enter repair content',
+ placeholderRemark: 'Enter remark',
+ loadDetailFailed: 'Failed to load details',
+ scanUnrecognized: 'No content recognized',
+ scanEquipmentRequired: 'Please scan an equipment QR code',
+ deviceNotFound: 'Matching equipment not found',
+ scanFailed: 'Scan failed',
+ maxUploadCount: 'You can upload up to 9 images',
+ saving: 'Saving',
+ saveSuccess: 'Saved successfully',
+ submitSuccess: 'Submitted successfully',
+ submitFailed: 'Submit failed',
+ noId: 'Missing repair order ID',
+ confirmDeleteContent: 'Delete repair order "{code}"?',
+ validatorRepairCodeRequired: 'Please enter the repair order no.',
+ validatorRepairNameRequired: 'Please enter the repair order name',
+ validatorDeviceRequired: 'Please select equipment',
+ validatorComponentRequired: 'Please select key component',
+ validatorRequireDateRequired: 'Please select the report date',
+ validatorFaultLevelRequired: 'Please select the failure level',
+ validatorIsShutdownRequired: 'Please select whether shutdown is required',
+ validatorFaultPhenomenonRequired: 'Please enter the fault phenomenon',
+ lineFilter: 'Line',
+ validatorRepairStatusRequired: 'Please select the repair result',
+ validatorFinishDateRequired: 'Please select the completion date',
+ validatorConfirmDateRequired: 'Please select the acceptance date'
+ },
+ criticalComponent: {
+ moduleName: 'Critical Component',
+ subTitle: 'Equipment critical component management',
+ detailTitle: 'Component Detail',
+ basicInfo: 'Basic Info',
+ code: 'Component Code',
+ name: 'Component Name',
+ deviceSpec: 'Specification',
+ description: 'Description',
+ count: 'Count',
+ remark: 'Remark',
+ creatorName: 'Creator',
+ createTime: 'Created At',
+ autoCode: 'Auto Generate',
+ searchPlaceholder: 'Enter code/name',
+ createTitle: 'Create Component',
+ editTitle: 'Edit Component',
+ empty: 'No component data',
+ loadEditFailed: 'Failed to load edit data',
+ noId: 'Missing component ID',
+ loadFailed: 'Failed to load component detail',
+ placeholderCode: 'Enter component code',
+ placeholderName: 'Enter component name',
+ placeholderDeviceSpec: 'Enter specification',
+ placeholderDescription: 'Enter description',
+ placeholderCount: 'Enter count',
+ placeholderRemark: 'Enter remark',
+ validatorCodeRequired: 'Component code is required',
+ validatorNameRequired: 'Component name is required',
+ confirmDeleteContent: 'Confirm delete component [{name}]?'
+ },
+ moldLedger: {
+ moduleName: 'Mold Ledger',
+ subTitle: 'Mold ledger management',
+ detailTitle: 'Mold Detail',
+ basicInfo: 'Mold Basic Info',
+ moldPlaceholder: 'Mold',
+ moldName: 'Mold Name',
+ product: 'Product',
+ moldCode: 'Mold Code',
+ status: 'Status',
+ versionSpec: 'Version/Spec',
+ cavityCount: 'Cavity Count',
+ currentDevice: 'Current Device',
+ useCount: 'Use Count',
+ expand: 'Expand',
+ collapse: 'Collapse',
+ tabChildMold: 'Sub-molds',
+ tabInspection: 'Inspection',
+ tabRepair: 'Repair',
+ tabMaintenance: 'Maintenance',
+ tabInstall: 'Installation',
+ installLocation: 'Install Location',
+ material: 'Material',
+ quantity: 'Quantity',
+ lastReplace: 'Last Replace',
+ usedDays: 'Used {days} days',
+ remark: 'Remark',
+ noChildMold: 'No sub-mold data',
+ noInspection: 'No inspection records',
+ noRepair: 'No repair records',
+ noMaintenance: 'No maintenance records',
+ noInstall: 'No installation records',
+ inspectionMethod: 'Inspection Method',
+ criteria: 'Criteria',
+ inspectionTime: 'Inspection Time',
+ maintainMethod: 'Maintenance Method',
+ maintainTime: 'Maintenance Time',
+ repairProject: 'Repair Project',
+ projectContent: 'Project Content',
+ finishTime: 'Finish Time',
+ operateMold: 'Mold',
+ operator: 'Operator',
+ time: 'Time',
+ upperMold: 'Mount',
+ lowerMold: 'Dismount',
+ missingBrandId: 'Missing mold brand ID',
+ detailLoadFailed: 'Failed to load detail',
+ childLoadFailed: 'Failed to load sub-molds',
+ inspectionLoadFailed: 'Failed to load inspection records',
+ repairLoadFailed: 'Failed to load repair records',
+ maintainLoadFailed: 'Failed to load maintenance records',
+ installLoadFailed: 'Failed to load installation records',
+ resultPending: 'Pending',
+ resultPass: 'Pass',
+ resultWarning: 'Warning',
+ repairCompleted: 'Completed',
+ repairAbnormal: 'Abnormal',
+ repairProcessing: 'Processing',
+ searchPlaceholder: 'Enter mold code or name',
+ allStatus: 'All',
+ selectMoldStatus: 'Select Mold Status',
+ clear: 'Clear',
+ name: 'Name',
+ createTime: 'Created At',
+ confirmDeleteContent: 'Confirm delete mold brand "{name}"?',
+ empty: 'No mold ledger data',
+ scanUnrecognized: 'Unrecognized QR code',
+ scanFormatError: 'Invalid QR code format',
+ scanFailed: 'Scan failed',
+ noIdView: 'Missing ID, cannot view details',
+ noIdDelete: 'Missing ID, cannot delete'
+ },
+ moldCheck: {
+ moduleName: 'Mold Inspection',
+ addTitle: 'Add Inspection',
+ detailTitle: 'Inspection Detail',
+ searchPlaceholder: 'Enter inspection No.',
+ empty: 'No inspection records',
+ add: 'Add',
+ moldName: 'Mold Name',
+ moldCode: 'Mold Code',
+ product: 'Product',
+ status: 'Status',
+ taskType: 'Task Type',
+ taskTypeInspect: 'Inspection',
+ taskTypeMaintain: 'Maintenance',
+ planNo: 'Inspection No.',
+ taskTime: 'Task Time',
+ template: 'Template',
+ operator: 'Operator',
+ jobStatusPending: 'Pending',
+ jobStatusProcessing: 'Processing',
+ jobStatusCompleted: 'Completed',
+ jobStatusTimeout: 'Timeout',
+ jobStatusCancelled: 'Cancelled',
+ jobResultOk: 'OK',
+ jobResultNg: 'NG',
+ progressTitle: 'Progress',
+ noResultData: 'No inspection result data',
+ requiredText: 'Required',
+ inspectionMethod: 'Inspection Method',
+ judgmentCriteria: 'Judgment Criteria',
+ textInput: 'Input Value',
+ inputPlaceholder: 'Enter value',
+ images: 'Images',
+ remark: 'Remark',
+ resultText: 'Result',
+ inspectionResultPass: 'Pass',
+ inspectionResultFail: 'Fail',
+ inspectionResultPending: 'Pending',
+ maxUploadCount: 'Max 3 images',
+ selectAllDecisionError: 'Please select all inspection results',
+ currentMoldInfo: 'Mold Info',
+ moldGroupCode: 'Mold Group Code',
+ moldGroupName: 'Mold Group Name',
+ cavityCount: 'Cavity Count',
+ moldSize: 'Mold Size',
+ currentDevice: 'Current Device',
+ selectMold: 'Select Mold',
+ reSelectMold: 'Re-select Mold',
+ selectMoldError: 'Please select a mold',
+ searchMold: 'Enter mold name',
+ noMoldInfo: 'Please select a mold',
+ noMoldData: 'No molds available',
+ taskName: 'Task Name',
+ taskInfo: 'Task Info',
+ placeholderTaskName: 'Enter task name',
+ templateSelection: 'Template/Task Selection',
+ selectTemplate: 'Select Template',
+ selectTemplateError: 'Please select inspection template',
+ noItems: 'Please select inspection template first',
+ noTemplate: 'No templates',
+ resultListTitle: 'Inspection Results',
+ editResult: 'Edit',
+ cancelEdit: 'Cancel Edit',
+ submit: 'Submit Inspection',
+ submitSuccess: 'Inspection submitted successfully',
+ submitFailed: 'Failed to submit inspection',
+ reInspect: 'Re-inspect'
+ },
+ moldMaintain: {
+ moduleName: 'Mold Maintenance',
+ addTitle: 'Add Maintenance',
+ detailTitle: 'Maintenance Detail',
+ searchPlaceholder: 'Enter maintenance No.',
+ empty: 'No maintenance records',
+ add: 'Add',
+ moldName: 'Mold Name',
+ moldCode: 'Mold Code',
+ product: 'Product',
+ status: 'Status',
+ taskType: 'Task Type',
+ taskTypeInspect: 'Inspection',
+ taskTypeMaintain: 'Maintenance',
+ planNo: 'Maintenance No.',
+ taskTime: 'Task Time',
+ template: 'Template',
+ operator: 'Operator',
+ jobResultOk: 'OK',
+ jobResultNg: 'NG',
+ progressTitle: 'Progress',
+ noResultData: 'No maintenance result data',
+ requiredText: 'Required',
+ inspectionMethod: 'Maintenance Method',
+ judgmentCriteria: 'Judgment Criteria',
+ textInput: 'Input Value',
+ inputPlaceholder: 'Enter value',
+ images: 'Images',
+ remark: 'Remark',
+ resultText: 'Result',
+ inspectionResultPass: 'Pass',
+ inspectionResultFail: 'Fail',
+ inspectionResultPending: 'Pending',
+ maxUploadCount: 'Max 3 images',
+ selectAllDecisionError: 'Please select all maintenance results',
+ currentMoldInfo: 'Mold Info',
+ moldGroupCode: 'Mold Group Code',
+ moldGroupName: 'Mold Group Name',
+ cavityCount: 'Cavity Count',
+ moldSize: 'Mold Size',
+ currentDevice: 'Current Device',
+ selectMold: 'Select Mold',
+ reSelectMold: 'Re-select Mold',
+ selectMoldError: 'Please select a mold',
+ searchMold: 'Enter mold name',
+ noMoldInfo: 'Please select a mold',
+ noMoldData: 'No molds available',
+ taskName: 'Task Name',
+ taskInfo: 'Task Info',
+ placeholderTaskName: 'Enter task name',
+ templateSelection: 'Template/Task Selection',
+ selectTemplate: 'Select Template',
+ selectTemplateError: 'Please select maintenance template',
+ noItems: 'Please select maintenance template first',
+ noTemplate: 'No templates',
+ resultListTitle: 'Inspection Results',
+ editResult: 'Edit',
+ cancelEdit: 'Cancel Edit',
+ submit: 'Submit Maintenance',
+ submitSuccess: 'Maintenance submitted successfully',
+ submitFailed: 'Failed to submit maintenance',
+ reInspect: 'Re-maintain'
+ },
+ moldPressureNet: {
+ moduleName: 'Replace Pressure Net',
+ recordTitle: 'Pressure Net Replacement',
+ recordDesc: 'Select mold group and sub-mold, then confirm replacement time',
+ history: 'History',
+ historyTitle: 'Pressure Net History',
+ moldGroup: 'Mold Group',
+ selectMoldGroup: 'Select Mold Group',
+ searchMoldGroup: 'Enter mold group name',
+ noMoldGroup: 'No mold groups',
+ moldGroupName: 'Mold Group Name',
+ moldGroupCode: 'Mold Group Code',
+ product: 'Product',
+ subMold: 'Sub-mold',
+ selectSubMold: 'Select Sub-mold',
+ reSelectMoldGroup: 'Re-select Mold Group',
+ reSelectSubMold: 'Re-select Sub-mold',
+ subMoldCode: 'Sub-mold Code',
+ subMoldName: 'Sub-mold Name',
+ searchSubMold: 'Search sub-mold name/code',
+ noSubMold: 'No sub-molds',
+ replaceInfo: 'Replacement Info',
+ replaceTime: 'Replacement Time',
+ pressureNetTime: 'Pressure Net Time',
+ selectReplaceTime: 'Select replacement time',
+ operator: 'Operator',
+ selectOperator: 'Select operator',
+ noOperator: 'No operators',
+ remark: 'Remark',
+ remarkPlaceholder: 'Enter replacement reason or remark',
+ confirmReplace: 'Confirm',
+ selectMoldGroupError: 'Please select a mold group',
+ selectSubMoldError: 'Please select a sub-mold',
+ selectedCount: '{count} sub-mold(s) selected',
+ selectReplaceTimeError: 'Please select replacement time',
+ submitSuccess: 'Saved successfully',
+ submitFailed: 'Save failed',
+ historyMoldIdPlaceholder: 'Enter sub-mold ID, blank for all',
+ searchBrandName: 'Mold Group Name',
+ selectDate: 'Select Date',
+ createTime: 'Create Time',
+ noHistory: 'No pressure net history'
+ },
+ moldRepair: {
+ moduleName: 'Mold Repair',
+ createTitle: 'Create Mold Repair',
+ editTitle: 'Edit Mold Repair',
+ detailTitle: 'Mold Repair Detail',
+ repairTitle: 'Repair Processing',
+ basicInfo: 'Basic Info',
+ repairObject: 'Repair Object',
+ repairCode: 'Repair Code',
+ repairName: 'Repair Name',
+ requireDate: 'Require Date',
+ acceptedBy: 'Repair User',
+ confirmBy: 'Confirm User',
+ mold: 'Mold',
+ moldCode: 'Mold Code',
+ moldName: 'Mold Name',
+ specModel: 'Spec Model',
+ brand: 'Brand',
+ faultLevel: 'Fault Level',
+ isShutdown: 'Is Shutdown',
+ status: 'Status',
+ faultInfo: 'Fault Info',
+ faultPhenomenon: 'Fault Phenomenon',
+ faultDescription: 'Fault Description',
+ faultImages: 'Fault Images',
+ repairResultSection: 'Repair Result',
+ repairResult: 'Repair Result',
+ finishDate: 'Finish Date',
+ confirmDate: 'Confirm Date',
+ downtimeDuration: 'Downtime Duration',
+ faultReason: 'Fault Reason',
+ handlingMeasures: 'Handling Measures',
+ replacementParts: 'Replacement Parts',
+ repairContent: 'Repair Content',
+ repairedImages: 'Repaired Images',
+ remark: 'Remark',
+ autoCode: 'Auto Code',
+ moldLabel: 'Mold',
+ reportTimeLabel: 'Report Time',
+ searchPlaceholder: 'Enter code or mold code',
+ empty: 'No repair records',
+ statusPending: 'Pending',
+ statusPassed: 'Passed',
+ statusRejected: 'Rejected',
+ orderStatusPending: 'Pending',
+ orderStatusDone: 'Completed',
+ placeholderRepairCode: 'Enter repair code',
+ placeholderRepairName: 'Enter repair name',
+ placeholderRequireDate: 'Select require date',
+ placeholderAcceptedBy: 'Select repair user',
+ placeholderConfirmBy: 'Select confirm user',
+ placeholderUserSearch: 'Search by nickname',
+ placeholderMold: 'Select mold',
+ placeholderMoldNameAuto: 'Auto filled',
+ placeholderMoldCodeAuto: 'Auto filled',
+ placeholderFaultPhenomenon: 'Enter fault phenomenon',
+ placeholderFaultDescription: 'Enter fault description',
+ placeholderFinishDate: 'Select finish date',
+ placeholderConfirmDate: 'Select confirm date',
+ placeholderDowntimeDuration: 'Enter downtime duration (hours)',
+ placeholderFaultReason: 'Enter fault reason',
+ placeholderHandlingMeasures: 'Enter handling measures',
+ placeholderReplacementParts: 'Enter replacement parts',
+ placeholderRepairContent: 'Enter repair content',
+ placeholderRemark: 'Enter remark',
+ loadDetailFailed: 'Failed to load detail',
+ scanUnrecognized: 'Unrecognized content',
+ scanMoldRequired: 'Please scan mold QR code',
+ moldNotFound: 'Mold not found',
+ scanFailed: 'Scan failed',
+ maxUploadCount: 'Max 9 images',
+ noUserData: 'No user data',
+ saving: 'Saving',
+ saveSuccess: 'Saved successfully',
+ submitSuccess: 'Submitted successfully',
+ submitFailed: 'Submit failed',
+ noId: 'Missing repair ID',
+ confirmDeleteContent: 'Confirm delete repair "{code}"?',
+ validatorRepairCodeRequired: 'Repair code is required',
+ validatorRepairNameRequired: 'Repair name is required',
+ validatorMoldRequired: 'Mold is required',
+ validatorRequireDateRequired: 'Require date is required',
+ validatorFaultLevelRequired: 'Fault level is required',
+ validatorIsShutdownRequired: 'Is shutdown is required',
+ validatorFaultPhenomenonRequired: 'Fault phenomenon is required',
+ validatorUserRequired: 'Please select a user',
+ validatorRepairStatusRequired: 'Repair result is required',
+ validatorFinishDateRequired: 'Finish date is required',
+ validatorConfirmDateRequired: 'Confirm date is required'
+ },
+ productInbound: {
+ moduleName: 'Product Inbound',
+ createTitle: 'New Product Inbound',
+ detailTitle: 'Product Inbound Detail',
+ selectProductTitle: 'Select Product',
+ selectTaskTitle: 'Select Task Order',
+ selectTaskProductTitle: 'Select Task Product',
+ selectPalletTitle: 'Select Pallet',
+ createPalletTitle: 'New Pallet',
+ all: 'All',
+ inboundStatus: 'Inbound Status',
+ reset: 'Reset',
+ clear: 'Clear',
+ loading: 'Loading...',
+ loadingMore: 'Loading more...',
+ noMoreData: 'No more data',
+ confirm: 'Confirm',
+ cancel: 'Cancel',
+ back: 'Back',
+ submit: 'OK',
+ submitting: 'Submitting...',
+ tip: 'Tip',
+ choose: 'Please select',
+ yes: 'Yes',
+ no: 'No',
+ statusPending: 'Pending Inbound',
+ statusAuditing: 'Pending Review',
+ statusStored: 'Stored',
+ statusRejected: 'Rejected',
+ searchDocumentPlaceholder: 'Enter inbound No.',
+ searchProductPlaceholder: 'Search product name/code/spec',
+ searchTaskPlaceholder: 'Search task order No.',
+ searchTaskProductPlaceholder: 'Search product name/code',
+ searchPalletPlaceholder: 'Search pallet code',
+ productInfo: 'Product Info',
+ inboundInfo: 'Inbound Info',
+ inboundTime: 'Inbound Time',
+ selectInboundTime: 'Select inbound time',
+ operator: 'Operator',
+ selectOperator: 'Select operator',
+ inboundQuantity: 'Inbound Quantity',
+ reviewer: 'Reviewer',
+ auditor: 'Auditor',
+ documentNo: 'Document No.',
+ inboundType: 'Inbound Type',
+ remark: 'Remark',
+ remarkPlaceholder: 'Enter remark',
+ attachment: 'Attachment',
+ chooseFile: 'Choose File',
+ itemList: 'Inbound List',
+ addProduct: 'Add Product',
+ product: 'Product',
+ pallet: 'Pallet',
+ packageCount: 'Packages',
+ pieceCount: 'Pieces',
+ inboundPackageCount: 'Inbound Packages',
+ inboundPieceCount: 'Inbound Pieces',
+ palletQuantity: 'Pallets',
+ taskOrder: 'Task Order',
+ taskProduct: 'Task Product',
+ emptyAddProduct: 'Please add a product',
+ emptyInboundList: 'No product inbound orders',
+ emptyItemList: 'No inbound items',
+ confirmInbound: 'Confirm Inbound',
+ inboundSuccess: 'Inbound successful',
+ saveFailed: 'Save failed',
+ loadFailed: 'Load failed',
+ detailLoadFailed: 'Failed to load detail',
+ operationFailed: 'Operation failed',
+ submitAudit: 'Submit Review',
+ auditPass: 'Approve',
+ auditReject: 'Reject',
+ auditPassSuccess: 'Approved',
+ auditRejectSuccess: 'Rejected',
+ submitAuditSuccess: 'Review submitted',
+ submitFailed: 'Submit failed',
+ selectAuditor: 'Select auditor',
+ selectInboundStatus: 'Select Inbound Status',
+ confirmAuditPass: 'Confirm approving this product inbound order?',
+ confirmAuditReject: 'Confirm rejecting this product inbound order?',
+ noDetailId: 'No detail ID',
+ completeProductPalletInfo: 'Complete product and pallet information',
+ addProductFirst: 'Please add a product first',
+ taskInfo: 'Task Info',
+ relatedTask: 'Related Task Order',
+ selectTask: 'Select task order',
+ selectTaskProduct: 'Select task product',
+ selectProduct: 'Select product',
+ selectPallet: 'Select pallet',
+ selectPalletFirst: 'Select pallet first',
+ selectTaskFirst: 'Select task order first',
+ selectProductFirst: 'Select product first',
+ emptyTaskProducts: 'No products for this task order',
+ completePalletInfo: 'Complete pallet warehouse/location/packages',
+ productAdded: 'Product added',
+ taskProductLoadFailed: 'Failed to load task products',
+ workOrderNo: 'Work Order No.',
+ code: 'Code',
+ packagingScheme: 'Packaging Scheme',
+ palletPackageQuantity: 'Packages per Pallet',
+ packageQuantity: 'Pieces per Package',
+ selectedPalletCount: '{count} pallet(s) selected',
+ selectedCount: '{count} selected',
+ packageUnit: '{count} pkg',
+ pieceUnit: '{count} pcs',
+ warehouse: 'Warehouse',
+ area: 'Area',
+ location: 'Location',
+ deliveryDate: 'Delivery Date',
+ emptyTask: 'No task orders',
+ emptyProduct: 'No product data',
+ emptyTaskProduct: 'No task products',
+ emptyPallet: 'No pallets',
+ spec: 'Spec',
+ unit: 'Unit',
+ palletCode: 'Pallet Code',
+ palletType: 'Pallet Type',
+ palletStatus: 'Pallet Status',
+ autoCode: 'Auto Code',
+ length: 'Length',
+ width: 'Width',
+ height: 'Height',
+ productCount: 'Packages',
+ ratedLoadWeight: 'Rated Load',
+ enterPalletCode: 'Enter pallet code',
+ selectPalletType: 'Select pallet type',
+ selectPalletStatus: 'Select pallet status',
+ enterPackageCount: 'Enter packages',
+ selectWarehouse: 'Select warehouse',
+ selectArea: 'Select area',
+ selectUnit: 'Select unit',
+ selectWarehouseFirst: 'Select warehouse first',
+ emptyArea: 'No areas',
+ enterRatedLoadWeight: 'Enter rated load',
+ createSuccess: 'Created successfully',
+ createPalletFailed: 'Failed to create pallet'
+ },
+ productCheck: {
+ moduleName: 'Product Stock Check',
+ createTitle: 'New Product Stock Check',
+ executeTitle: 'Execute Stock Check',
+ detailTitle: 'Product Stock Check Detail',
+ selectProductTitle: 'Select Product',
+ selectItemTitle: 'Select Check Items',
+ selectWarehouseTitle: 'Select Warehouse',
+ selectAreaTitle: 'Select Area',
+ all: 'All',
+ reset: 'Reset',
+ clear: 'Clear',
+ loading: 'Loading...',
+ loadingMore: 'Loading more...',
+ noMoreData: 'No more data',
+ confirm: 'Confirm',
+ cancel: 'Cancel',
+ submit: 'OK',
+ submitting: 'Submitting...',
+ tip: 'Tip',
+ choose: 'Please select',
+ delete: 'Delete',
+ save: 'Save',
+ statusDraft: 'Pending Submit',
+ statusAuditing: 'Pending Review',
+ statusApproved: 'Reviewed',
+ statusRejected: 'Rejected',
+ searchDocumentPlaceholder: 'Enter check No.',
+ searchProductPlaceholder: 'Search product name/code/spec',
+ searchWarehousePlaceholder: 'Search warehouse name',
+ searchAreaPlaceholder: 'Search area name/code',
+ searchItemPlaceholder: 'Search product/warehouse/area',
+ productInfo: 'Product Info',
+ checkInfo: 'Check Info',
+ checkTime: 'Check Time',
+ selectCheckTime: 'Select check time',
+ sourceType: 'Source Type',
+ sourceTypeStock: 'By Stock',
+ sourceTypeProduct: 'By Product',
+ selectWarehouse: 'Select warehouse',
+ selectWarehouseFirst: 'Select warehouse first',
+ selectArea: 'Select area',
+ warehouse: 'Warehouse',
+ area: 'Area',
+ warehouseAddress: 'Address',
+ principal: 'Principal',
+ checkStatus: 'Check Status',
+ checked: 'Checked',
+ unchecked: 'Unchecked',
+ creator: 'Creator',
+ reviewer: 'Reviewer',
+ auditor: 'Reviewer',
+ documentNo: 'Check No.',
+ remark: 'Remark',
+ remarkPlaceholder: 'Enter remark',
+ productAndItems: 'Products & Items',
+ selectProduct: 'Select Product',
+ product: 'Product',
+ checkItems: 'Check Items',
+ selectAll: 'Select All',
+ selectedCount: '{count} selected',
+ selectedItemCount: '{count} item(s) selected',
+ selectCheckItems: 'Select check items',
+ stockCount: 'Book Qty',
+ code: 'Code',
+ spec: 'Spec',
+ unit: 'Unit',
+ difference: 'Difference',
+ actualCount: 'Actual Qty',
+ saveDraft: 'Save Draft',
+ finishCheck: 'Finish Check',
+ execute: 'Execute',
+ submitAudit: 'Submit Review',
+ auditPass: 'Approve',
+ auditReject: 'Reject',
+ auditPassSuccess: 'Approved',
+ auditRejectSuccess: 'Rejected',
+ submitAuditSuccess: 'Review submitted',
+ submitFailed: 'Submit failed',
+ selectAuditor: 'Select reviewer',
+ selectStatus: 'Select Check Status',
+ confirmAuditPass: 'Approve this product stock check?',
+ confirmAuditReject: 'Reject this product stock check?',
+ confirmDelete: 'Delete this product stock check?',
+ deleteSuccess: 'Deleted',
+ operationFailed: 'Operation failed',
+ loadFailed: 'Load failed',
+ detailLoadFailed: 'Failed to load detail',
+ emptyList: 'No product stock checks',
+ emptyProduct: 'No product data',
+ emptyWarehouse: 'No warehouses',
+ emptyArea: 'No areas',
+ emptyItemList: 'No check items',
+ emptyAddProduct: 'Please add a product',
+ selectProductFirst: 'Select product first',
+ completeCheckItems: 'Complete check item information',
+ createSuccess: 'Created successfully',
+ saveFailed: 'Save failed',
+ saveSuccess: 'Saved',
+ checkSuccess: 'Check completed',
+ noDetailId: 'No detail ID',
+ enterActualCount: 'Enter actual quantity',
+ confirmActualCountZero: '{items} actual quantity is 0. Continue?'
+ },
+ productOutbound: {
+ moduleName: 'Product Outbound',
+ createTitle: 'New Product Outbound',
+ detailTitle: 'Product Outbound Detail',
+ selectProductTitle: 'Select Product',
+ selectPalletTitle: 'Select Pallet',
+ all: 'All',
+ outboundStatus: 'Outbound Status',
+ reset: 'Reset',
+ clear: 'Clear',
+ loading: 'Loading...',
+ loadingMore: 'Loading more...',
+ noMoreData: 'No more data',
+ confirm: 'Confirm',
+ cancel: 'Cancel',
+ back: 'Back',
+ submit: 'OK',
+ submitting: 'Submitting...',
+ tip: 'Tip',
+ choose: 'Please select',
+ statusPending: 'Pending Outbound',
+ statusAuditing: 'Pending Review',
+ statusStored: 'Outbounded',
+ statusRejected: 'Rejected',
+ searchDocumentPlaceholder: 'Enter outbound No.',
+ searchProductPlaceholder: 'Search product name/code/spec',
+ searchPalletPlaceholder: 'Search pallet code',
+ productInfo: 'Product Info',
+ outboundInfo: 'Outbound Info',
+ outboundTime: 'Outbound Time',
+ selectOutboundTime: 'Select outbound time',
+ operator: 'Operator',
+ selectOperator: 'Select operator',
+ outboundQuantity: 'Outbound Qty',
+ reviewer: 'Reviewer',
+ auditor: 'Reviewer',
+ documentNo: 'Document No.',
+ outboundType: 'Outbound Type',
+ remark: 'Remark',
+ remarkPlaceholder: 'Enter remark',
+ attachment: 'Attachment',
+ chooseFile: 'Choose File',
+ itemList: 'Outbound Items',
+ addProduct: 'Add Product',
+ product: 'Product',
+ pallet: 'Pallet',
+ packageCount: 'Packages',
+ pieceCount: 'Pieces',
+ outboundPackageCount: 'Outbound Packages',
+ outboundPieceCount: 'Outbound Pieces',
+ availablePackageCount: 'Available Packages',
+ enterOutboundPackageCount: 'Enter outbound packages',
+ palletQuantity: 'Pallet Qty',
+ emptyAddProduct: 'Please add product',
+ emptyOutboundList: 'No product outbound records',
+ emptyItemList: 'No outbound items',
+ confirmOutbound: 'Confirm Outbound',
+ outboundSuccess: 'Outbound success',
+ saveFailed: 'Save failed',
+ loadFailed: 'Load failed',
+ detailLoadFailed: 'Detail load failed',
+ operationFailed: 'Operation failed',
+ submitAudit: 'Submit Review',
+ auditPass: 'Approve',
+ auditReject: 'Reject',
+ auditPassSuccess: 'Approved',
+ auditRejectSuccess: 'Rejected',
+ submitAuditSuccess: 'Submitted for review',
+ submitFailed: 'Submit failed',
+ selectAuditor: 'Select reviewer',
+ selectOutboundStatus: 'Select outbound status',
+ confirmAuditPass: 'Approve this product outbound order?',
+ confirmAuditReject: 'Reject this product outbound order?',
+ noDetailId: 'No detail ID',
+ completeProductPalletInfo: 'Complete product and pallet info',
+ addProductFirst: 'Add product first',
+ selectProduct: 'Select product',
+ selectPallet: 'Select pallet',
+ selectPalletFirst: 'Select pallet first',
+ selectProductFirst: 'Select product first',
+ completePalletInfo: 'Complete pallet warehouse/location/package info',
+ productAdded: 'Product added',
+ code: 'Code',
+ packagingScheme: 'Packaging Scheme',
+ palletPackageQuantity: 'Packages per Pallet',
+ packageQuantity: 'Pieces per Package',
+ selectedPalletCount: '{count} pallets selected',
+ selectedCount: '{count} selected',
+ packageUnit: '{count} packages',
+ pieceUnit: '{count} pieces',
+ warehouse: 'Warehouse',
+ area: 'Area',
+ location: 'Location',
+ emptyProduct: 'No product data',
+ emptyPallet: 'No pallets',
+ spec: 'Spec',
+ unit: 'Unit',
+ palletCode: 'Pallet Code',
+ palletType: 'Pallet Type',
+ palletStatus: 'Pallet Status',
+ outMode: 'Outbound Mode',
+ outModeWholePallet: 'Whole Pallet',
+ outModeSplitPallet: 'Split Pallet'
+ },
productInventory: {
moduleName: 'Product Inventory',
detailTitle: 'Product Inventory Detail',
diff --git a/src/locales/zh-CN.js b/src/locales/zh-CN.js
index 3ec6af9..a5cb438 100644
--- a/src/locales/zh-CN.js
+++ b/src/locales/zh-CN.js
@@ -1,1824 +1,1830 @@
-export default {
- common: {
- submit: '提交',
- close: '关闭',
- exit: '退出',
- notice: '通知',
- moduleBuilding: '模块建设中~',
- updateSuccess: '修改成功',
- confirmLogout: '确定注销并退出系统吗',
- languageSwitched: '语言已切换',
- more: '更多',
- reset: '重置',
- complete: '完成',
- edit: '编辑',
- saveFailed: '保存失败'
- },
- tab: {
- home: '首页',
- report: '报表',
- work: '管理',
- mine: '我的'
- },
- work:{
- mold: '模具',
- equipmentMaintenance: '设备运维',
- keypart: '关键件',
- spare: '备件',
- },
- nav: {
- home: '首页',
- mine: '个人中心',
- avatar: '修改头像',
- info: '个人信息',
- editInfo: '编辑资料',
- pwd: '修改密码',
- setting: '应用设置',
- help: '常见问题',
- about: '关于我们'
- },
- dashboard: {
- welcome: '欢迎您使用',
- subtitle: '必硕数字化智能中控平台',
- functionNav: '功能导航',
- editNavMenu: '编辑快捷开关',
- configuredNav: '已添加',
- unconfiguredNav: '添加更多',
- dragHint: '拖动图标进行排序,上方图标将显示在控制中心',
- clickHint: '点击图标添加到已配置或取消配置',
- allNavMenu: '全部功能',
- productionOverview: '生产整体概况',
- qualityOverview: '质量概况',
- productionPlan: '生产概括',
- production: '生产',
- quality: '质量',
- totalCount: '总数',
- passCount: '合格数',
- failCount: '不合格数',
- qualityTrend: '质量趋势',
- chartPlaceholder: '图表加载中...',
- totalWangongNumber: '报工总数',
- totalPassNumber: '合格总数',
- totalNoPassNumber: '不合格总数',
- totalPassRate: '总合格率',
- productPassRateRanking: '产品合格率排行',
- passNumber: '合格数',
- noPassNumber: '不合格数',
- periodLastWeek: '上周',
- periodThisWeek: '本周',
- periodLast7Days: '近7日',
- periodLastMonth: '上月',
- periodThisMonth: '本月',
- periodLastYear: '近一年',
- collapseList: '收起列表',
- viewMore: '查看更多 ›',
- productName: '产品名称',
- pipeline: '生产线',
- planNumber: '计划数量',
- planStart: '计划开始',
- planEnd: '计划结束',
- back: '返回',
- todoTitle: '待办任务',
- noTodo: '暂无待办任务',
- taskCode: '任务编号:{value}',
- taskType: '任务类型:{value}',
- taskTarget: '目标:{value}',
- createTime: '创建时间:{value}',
- all: '总数',
- pending: '未开工',
- running: '生产中',
- finished: '已完成',
- mold: '模具',
- equipment: '设备',
- keypart: '关键件',
- spare: '备件',
- product: '产品物料',
- statusScheduled: '已排产',
- statusTrial: '试产',
- statusMass: '量产',
- statusPause: '暂停',
- statusWaitStockIn: '待入库',
- viewPlan: '查看计划: {code}',
- filterTask: '任务',
- filterProduct: '产品',
- dateRange: '日期范围',
- startDate: '开始时间',
- endDate: '结束时间',
- baogongNum: '报工数',
- passNum: '合格数',
- noPassNum: '不合格数',
- passRate: '合格率',
- trendChart: '趋势图',
- taskPlaceholder: '任务模式开发中',
- totalTask: '任务总数',
- issuedNum: '下达数',
- partialScheduledNum: '部分排产数',
- waitingProduction: '待生产',
- producing: '生产中',
- completed: '已完成',
- taskTrend: '任务趋势',
- rangeYear: '近一年',
- rangeMonth: '本月',
- rangeWeek: '本周',
- rangeToday: '今日',
- rangeCustom: '自定义',
- monday: '周一',
- tuesday: '周二',
- wednesday: '周三',
- thursday: '周四',
- friday: '周五',
- saturday: '周六',
- sunday: '周日'
- },
- deviceOverview: {
- title: '设备概括',
- totalDevices: '设备总数',
- runningCount: '运行',
- standbyCount: '待机',
- faultCount: '故障',
- offlineCount: '离线',
- utilizationRate: '利用率',
- bootRate: '开机率',
- faultRate: '故障率',
- rateTrend: '稼动率/开机率趋势',
- onlyScheduled: '只统计排产设备',
- skipHoliday: '跳过节假日',
- periodLastWeek: '上周',
- periodThisWeek: '本周',
- periodLast7Days: '近7日',
- periodLastMonth: '上月',
- periodThisMonth: '本月',
- periodLastYear: '近一年',
- utilizationRanking: '近7日平均稼动率排名',
- utilizationRateTrend: '稼动率',
- deviceRateTrend: '单设备近7日稼动率/开机率趋势',
- selectDevice: '选择设备',
- selectDeviceHint: '请选择设备查看趋势'
- },
- taskList: {
- filter: '筛选条件',
- code: '任务单编码',
- status: '状态',
- taskType: '任务类型',
- orderDate: '下单日期',
- deliveryDate: '交付日期',
- remark: '备注',
- createTime: '创建时间',
- totalNumber: '总数量',
- planNumber: '已排产',
- unPlanNumber: '未排产',
- storedPlanNumber: '已入库',
- urgent: '紧急',
- noData: '暂无任务数据',
- viewTask: '查看任务: {code}'
- },
- planList: {
- taskCode: '任务编号',
- planCode: '计划编号',
- employeeName: '报工人',
- baogongNum: '报工数',
- passNum: '合格数',
- noPassNum: '不合格数',
- passRate: '合格率',
- baogongTime: '报工时间',
- reason: '原因',
- noData: '暂无报工数据',
- viewDetail: '查看详情: {code}'
- },
- functionCommon: {
- search: '查询',
- reset: '重置',
- cancel: '取消',
- confirm: '确认',
- save: '保存',
- loading: '加载中...',
- loadingMore: '正在加载更多...',
- noMoreData: '没有更多数据了',
- noIdView: '缺少ID,无法查看详情',
- noIdEdit: '缺少ID,无法编辑',
- noIdDelete: '缺少ID,无法删除',
- loadFailed: '加载失败',
- deleteSuccess: '删除成功',
- deleteFailed: '删除失败',
- saveSuccess: '保存成功',
- saveFailed: '保存失败',
- createSuccess: '新增成功',
- updateSuccess: '更新成功',
- confirmDelete: '确认删除',
- uploading: '上传中',
- uploadImageFailed: '图片上传失败',
- yes: '是',
- no: '否',
- all: '全部',
- noMore: '没有更多数据了',
- confirmTitle: '提示'
- },
- moldGet: {
- moduleName: '模具出库',
- subTitle: '按出库单号与状态快速筛选',
- detailTitle: '模具出库详情',
- basicInfo: '基础信息',
- outNo: '出库单号',
- outType: '出库类型',
- outTime: '出库时间',
- outTimeSingle: '出库日期',
- outTimePlaceholder: '请选择出库日期',
- warehouse: '仓库',
- allWarehouse: '全部仓库',
- warehousePlaceholder: '请选择仓库',
- creator: '创建人',
- status: '状态',
- allStatus: '全部状态',
- remark: '备注',
- itemRemark: '明细备注',
- attachment: '附件',
- fileUrlPlaceholder: '请输入附件地址',
- remarkPlaceholder: '请输入备注',
- moldName: '模具',
- moldCode: '模具编码',
- moldStatus: '模具状态',
- moldUseTime: '使用次数',
- machineName: '使用设备',
- isEnable: '是否启用',
- createTime: '创建时间',
- searchNo: '请输入出库单号',
- searchMold: '请输入模具编码或名称',
- searchCode: '请输入模具编码',
- searchName: '请输入模具名称',
- itemListTitle: '出库明细',
- selectMold: '选择模具',
- noItems: '暂无出库明细',
- count: '数量',
- noAuto: '系统自动生成',
- createTitle: '新增模具出库',
- editTitle: '编辑模具出库',
- edit: '编辑',
- delete: '删除',
- approve: '审批',
- empty: '暂无模具出库数据',
- noMoldData: '暂无可选模具',
- loadEditFailed: '加载编辑数据失败',
- validatorOutTimeRequired: '出库日期不能为空',
- validatorWarehouseRequired: '仓库不能为空',
- validatorItemRequired: '请至少选择一个模具',
- validatorCountRequired: '数量必须大于0',
- confirmDelete: '确认删除出库单 {no} 吗?',
- confirmApprove: '确认审批出库单 {no} 吗?',
- approveSuccess: '审批成功'
- },
- moldReturn: {
- moduleName: '模具入库',
- subTitle: '按入库单号与状态快速筛选',
- detailTitle: '模具入库详情',
- basicInfo: '基础信息',
- inNo: '入库单号',
- inType: '入库类型',
- inTime: '入库时间',
- inTimeSingle: '入库日期',
- inTimePlaceholder: '请选择入库日期',
- warehouse: '仓库',
- allWarehouse: '全部仓库',
- warehousePlaceholder: '请选择仓库',
- creator: '创建人',
- status: '状态',
- allStatus: '全部状态',
- remark: '备注',
- itemRemark: '明细备注',
- attachment: '附件',
- fileUrlPlaceholder: '请输入附件地址',
- remarkPlaceholder: '请输入备注',
- moldName: '模具',
- moldCode: '模具编码',
- moldStatus: '模具状态',
- moldUseTime: '使用次数',
- searchNo: '请输入入库单号',
- searchCode: '请输入模具编码',
- searchName: '请输入模具名称',
- itemListTitle: '入库明细',
- selectMold: '选择模具',
- noItems: '暂无入库明细',
- count: '数量',
- noAuto: '系统自动生成',
- createTitle: '新增模具入库',
- editTitle: '编辑模具入库',
- approve: '审批',
- empty: '暂无模具入库数据',
- noMoldData: '暂无可选模具',
- loadEditFailed: '加载编辑数据失败',
- validatorInTimeRequired: '入库日期不能为空',
- validatorWarehouseRequired: '仓库不能为空',
- validatorItemRequired: '请至少选择一个模具',
- validatorCountRequired: '数量必须大于0',
- confirmDelete: '确认删除入库单 {no} 吗?',
- confirmApprove: '确认审批入库单 {no} 吗?',
- approveSuccess: '审批成功'
- },
- moldOperate: {
- moduleName: '上下模',
- subTitle: '模具上模/下模操作记录',
- detailTitle: '上下模详情',
- basicInfo: '基础信息',
- tabUp: '上模',
- tabDown: '下模',
- operateType: '操作类型',
- mold: '模具',
- lowerMold: '下模模具',
- selectMold: '选择模具',
- noSelectedMold: '暂无已选模具',
- allMold: '全部模具',
- searchRemark: '请输入备注关键字',
- searchCode: '请输入模具编码',
- searchName: '请输入模具名称',
- moldCode: '模具编码',
- moldName: '模具名称',
- device: '设备',
- deviceName: '设备名称',
- creatorName: '创建人',
- remark: '备注',
- createTime: '创建时间',
- createTitle: '新增上下模',
- editTitle: '编辑上下模',
- empty: '暂无上下模数据',
- noMoldData: '暂无可选模具',
- placeholderDevice: '请选择设备',
- placeholderRemark: '请输入备注',
- validatorOperateTypeRequired: '操作类型不能为空',
- validatorDeviceRequired: '设备不能为空',
- validatorMoldRequired: '请至少选择一个上模模具',
- validatorOperatorRequired: '请选择操作人',
- validatorLowerMoldRequired: '请至少选择一个下模模具',
- loadEditFailed: '加载编辑数据失败',
- confirmDelete: '确认删除该上下模记录吗?',
- scanDevice: '扫设备码',
- selectDevice: '选择设备',
- selectedDevice: '已选设备',
- deviceCode: '设备编码',
- productionLine: '所属产线',
- currentMold: '当前在机模具',
- deviceStatus: '设备状态',
- statusRunning: '正常',
- statusStop: '停用',
- statusFault: '故障',
- selectMountMold: '选择待上模模具',
- product: '产品',
- status: '状态',
- pendingMount: '待上模',
- confirmMount: '确认上模',
- clickSelectMold: '点击选择模具',
- noDeviceData: '暂无设备数据',
- deviceNotFound: '未找到对应设备',
- deviceInfo: '设备信息',
- currentMoldInfo: '当前在机模具',
- mountTime: '上模时间',
- useCount: '使用次数',
- countUnit: '次',
- changeMountTarget: '更换上模对象',
- changeTarget: '更换下模对象',
- confirmDismount: '确认下模',
- clickSelectDeviceFirst: '请先选择设备',
- noMoldOnDevice: '该设备暂无在机模具',
- historySuffix: '历史',
- historyTitle: '上下模历史',
- searchPlaceholder: '搜索设备/模具名称',
- placeholderOperator: '请选择操作人',
- filterAll: '全部',
- filterToday: '今天',
- filterWeek: '本周',
- historyEmpty: '暂无历史记录',
- totalPrefix: '共 ',
- totalSuffix: ' 条',
- confirmDeleteHistory: '确认删除该历史记录吗?',
- operateTime: '操作时间',
- operator: '操作人'
- },
- moldInspectionItems: {
- moduleName: '点检项库',
- subTitle: '模具管理点检项维护',
- detailTitle: '点检项库详情',
- basicInfo: '基础信息',
- code: '项目编码',
- name: '项目名称',
- inspectionMethod: '检验方式',
- valueType: '值类型',
- isEnable: '是否启用',
- judgmentCriteria: '判定基准',
- creatorName: '创建人',
- createTime: '创建时间',
- searchPlaceholder: '请输入编码/名称/判定基准',
- createTitle: '新增点检项',
- editTitle: '编辑点检项',
- empty: '暂无点检项数据',
- loadEditFailed: '加载编辑数据失败',
- confirmDelete: '确认删除该点检项吗?',
- placeholderCode: '请输入项目编码',
- placeholderName: '请输入项目名称',
- placeholderInspectionMethod: '请选择检验方式',
- placeholderValueType: '请选择值类型',
- placeholderIsEnable: '请选择是否启用',
- placeholderJudgmentCriteria: '请输入判定基准',
- validatorSubjectCodeRequired: '项目编码不能为空',
- validatorSubjectNameRequired: '项目名称不能为空',
- validatorInspectionMethodRequired: '检验方式不能为空',
- validatorValueTypeRequired: '值类型不能为空',
- validatorIsEnableRequired: '是否启用不能为空',
- validatorJudgmentCriteriaRequired: '判定基准不能为空'
- },
- moldInspectionPlan: {
- moduleName: '点检模板',
- subTitle: '模具管理点检模板维护',
- detailTitle: '点检模板详情',
- basicInfo: '基础信息',
- planName: '模板名称',
- planType: '模板类型',
- planTypeMaintain: '保养',
- planTypeInspect: '点检',
- description: '描述',
- subjectName: '点检项',
- creatorName: '创建人',
- createTime: '创建时间',
- updateTime: '更新时间',
- searchPlaceholder: '请输入模板名称',
- createTitle: '新增点检模板',
- editTitle: '编辑点检模板',
- empty: '暂无点检模板数据',
- loadEditFailed: '加载编辑数据失败',
- confirmDelete: '确认删除该点检模板吗?',
- placeholderPlanName: '请输入模板名称',
- placeholderPlanType: '请选择模板类型',
- placeholderDescription: '请输入描述',
- placeholderSubjectSelect: '请选择点检项',
- subjectSelectTitle: '选择点检项',
- noSubjectData: '暂无点检项数据',
- validatorPlanNameRequired: '模板名称不能为空',
- validatorPlanTypeRequired: '模板类型不能为空',
- subjectListTitle: '关联点检项',
- subjectCode: '项目编码',
- inspectionMethod: '检验方式',
- judgmentCriteria: '判定基准'
- },
- moldTaskConfig: {
- moduleName: '点检任务',
- subTitle: '模具管理点检任务维护',
- detailTitle: '点检任务详情',
- basicInfo: '基础信息',
- name: '任务名称',
- taskType: '任务类型',
- taskTypeInspect: '点检',
- taskTypeMaintain: '保养',
- moldList: '模具列表',
- projectForm: '点检模板',
- projectFormName: '项目方案',
- dateRange: '有效日期',
- startDate: '开始日期',
- endDate: '结束日期',
- cronExpression: 'Cron表达式',
- operableUsers: '可操作用户',
- enabled: '是否启用',
- creatorName: '创建人',
- createTime: '创建时间',
- updateTime: '更新时间',
- searchPlaceholder: '请输入任务名称',
- createTitle: '新增点检任务',
- editTitle: '编辑点检任务',
- empty: '暂无点检任务数据',
- loadEditFailed: '加载编辑数据失败',
- confirmDeleteContent: '确认删除该点检任务【{name}】吗?',
- placeholderName: '请输入任务名称',
- placeholderTaskType: '请选择任务类型',
- placeholderMoldList: '请选择模具',
- placeholderProjectForm: '请选择点检模板',
- placeholderStartDate: '选择开始日期',
- placeholderEndDate: '选择结束日期',
- placeholderCron: '请输入Cron表达式',
- placeholderOperableUsers: '请选择可操作用户',
- validatorNameRequired: '任务名称不能为空',
- validatorTaskTypeRequired: '任务类型不能为空',
- validatorMoldListRequired: '模具列表不能为空',
- validatorProjectFormRequired: '点检模板不能为空',
- validatorDateRangeRequired: '有效日期不能为空',
- createTicketSuccess: '工单创建成功',
- createTicketFail: '工单创建失败',
- moldSelectTitle: '选择模具',
- planSelectTitle: '选择点检模板',
- userSelectTitle: '选择可操作用户'
- },
- equipmentInspectionTasks: {
- moduleName: '设备点检任务',
- subTitle: '设备点检任务工单管理',
- detailTitle: '设备点检任务详情',
- basicInfo: '基础信息',
- createTicket: '新增工单管理',
- name: '任务名称',
- taskType: '任务类型',
- taskTypeInspect: '点检',
- taskTypeMaintain: '保养',
- deviceList: '设备列表',
- projectFormName: '项目方案',
- dateRange: '有效日期',
- cronExpression: 'Cron表达式',
- operableUsers: '可操作用户',
- enabled: '是否启用',
- creatorName: '创建人',
- createTime: '创建时间',
- updateTime: '更新时间',
- searchPlaceholder: '请输入任务名称/设备编码/设备名称',
- empty: '暂无设备点检任务数据',
- createTicketSuccess: '工单创建成功',
- createTicketFail: '工单创建失败',
- lineFilter: '产线',
- },
- equipmentInspectionRecord: {
- moduleName: '设备点检记录',
- subTitle: '设备点检记录查询',
- detailTitle: '设备点检记录详情',
- taskType: '任务类型',
- taskTypeInspect: '点检',
- taskTypeMaintain: '保养',
- taskTypeInspectShort: '检',
- taskTypeMaintainShort: '养',
- planNo: '任务编号',
- deviceName: '设备名称',
- configName: '点检模板',
- jobStatus: '作业状态',
- jobStatusPending: '待处理',
- jobStatusProcessing: '处理中',
- jobStatusCompleted: '已完成',
- jobStatusTimeout: '已超时',
- jobStatusCancelled: '已取消',
- jobResult: '结果',
- jobResultOk: '通过',
- jobResultNg: '不通过',
- taskTime: '作业时间',
- searchPlaceholder: '请输入任务编号/设备编码/设备名称',
- empty: '暂无设备点检记录数据',
- progressTitle: '执行进度',
- inspectionMethod: '检验方式',
- judgmentCriteria: '标准要求',
- valueType: '值类型',
- resultText: '结果',
- requiredText: '必检',
- inspectionResultPending: '待检',
- inspectionResultPass: '通过',
- inspectionResultFail: '不通过',
- textInput: '输入值',
- inputPlaceholder: '请输入',
- remark: '备注',
- images: '图片',
- maxUploadCount: '最多上传 9 张图片',
- selectAllDecisionError: '请为所有待检项选择结果',
- noResultData: '暂无点检项数据',
- lineFilter: '产线',
- },
- moldWorkOrder: {
- moduleName: '点检记录',
- subTitle: '模具管理点检记录查询',
- detailTitle: '点检记录详情',
- basicInfo: '基础信息',
- resultListTitle: '检验结果',
- planNo: '工单编号',
- moldName: '模具名称',
- planType: '任务类型',
- planTypeInspect: '点检',
- planTypeMaintain: '保养',
- configName: '任务配置',
- jobStatus: '作业状态',
- jobStatusPending: '待处理',
- jobStatusProcessing: '处理中',
- jobStatusCompleted: '已完成',
- jobStatusTimeout: '已超时',
- jobStatusCancelled: '已取消',
- jobResult: '作业结果',
- jobResultOk: 'OK',
- jobResultNg: 'NG',
- operatorName: '操作人',
- taskTime: '任务时间',
- taskEndTime: '结束时间',
- cancelReason: '取消原因',
- createTime: '创建时间',
- searchPlaceholder: '请输入工单编号',
- empty: '暂无点检记录数据',
- cancelTask: '取消任务',
- cancelSuccess: '取消成功',
- cancelFail: '取消失败',
- placeholderCancelReason: '请输入取消原因',
- validatorCancelReasonRequired: '取消原因不能为空',
- inspectionItemName: '检验项名称',
- inspectionMethod: '检验方式',
- judgmentCriteria: '判定基准',
- valueType: '值类型',
- inspectionResult: '检验结果',
- inspectionResultPending: '待检',
- inspectionResultPass: '合格',
- inspectionResultFail: '不合格',
- textInput: '输入值',
- remark: '备注',
- images: '图片',
- noResultData: '暂无检验结果数据',
- loadMore: '加载更多'
- },
- mine: {
- clickLogin: '点击登录',
- username: '用户名:{name}',
- profile: '个人信息',
- feedback: '反馈中心',
- service: '在线客服',
- changePassword: '修改密码',
- logout: '退出登录',
- editProfile: '编辑资料',
- faq: '常见问题',
- about: '关于我们',
- appSettings: '应用设置'
- },
- setting: {
- language: '系统语言',
- currentLanguage: '当前语言:{language}',
- terminalMode: '终端模式',
- currentTerminal: '当前终端:{terminal}',
- switchingTerminal: '正在切换终端...',
- terminalSwitched: '已切换到{terminal}',
- switchLanguage: '切换语言',
- checkUpdate: '检查更新',
- cleanCache: '清理缓存',
- logout: '退出登录',
- serverAddress: '服务器地址',
- serverAddressHint: '请输入当前账号对应的后端接口地址',
- serverAddressPlaceholder: '请输入后端访问地址',
- serverAddressRequired: '请输入后端访问地址',
- serverAddressSaved: '服务器地址已保存,请重新登录',
- mobile: '手机',
- scanner: '扫码器',
- zhCN: '中文',
- enUS: '英文'
- },
- about: {
- appName: '必硕生管系统',
- version: '版本信息',
- email: '官方邮箱',
- hotline: '服务热线',
- website: '公司网站'
- },
- help: {
- appUserQuestion: 'APP用户问题',
- otherQuestion: '其他问题',
- appFeatureQuestion: 'APP支持的功能业务有哪些?',
- appFeatureAnswer: '计划开工、生产报工、投料记录、生产记录',
- reportQuestion: '生产报工如何报工?',
- reportAnswer: '可以',
- planQuestion: '计划管理如何进行?',
- planAnswer: '计划管理',
- materialQuestion: '投料记录如何进行?',
- materialAnswer: '投料记录',
- logoutQuestion: '如何退出登录?',
- logoutAnswer: '请点击[我的] - [应用设置] - [退出登录]即可退出登录',
- avatarQuestion: '如何修改用户头像?',
- avatarAnswer: '请点击[我的] - [选择头像] - [点击提交]即可更换用户头像',
- passwordQuestion: '如何修改登录密码?',
- passwordAnswer: '请点击[我的] - [应用设置] - [修改密码]即可修改登录密码'
- },
- info: {
- username: '用户名称',
- nickname: '昵称',
- gender: '性别',
- male: '男',
- female: '女',
- phone: '手机号码',
- email: '邮箱',
- createdAt: '创建日期'
- },
- editInfo: {
- nickname: '用户昵称',
- nicknamePlaceholder: '请输入昵称',
- phone: '手机号码',
- phonePlaceholder: '请输入手机号码',
- email: '邮箱',
- emailPlaceholder: '请输入邮箱',
- gender: '性别',
- nicknameRequired: '用户昵称不能为空',
- phoneRequired: '手机号码不能为空',
- phoneInvalid: '请输入正确的手机号码',
- emailRequired: '邮箱地址不能为空',
- emailInvalid: '请输入正确的邮箱地址'
- },
- pwd: {
- oldPassword: '旧密码',
- newPassword: '新密码',
- confirmPassword: '确认密码',
- oldPasswordPlaceholder: '请输入旧密码',
- newPasswordPlaceholder: '请输入新密码',
- confirmPasswordPlaceholder: '请确认新密码',
- oldPasswordRequired: '旧密码不能为空',
- newPasswordRequired: '新密码不能为空',
- passwordLength: '长度在 6 到 20 个字符',
- confirmPasswordRequired: '确认密码不能为空',
- passwordNotMatch: '两次输入的密码不一致'
- },
- avatar: {
- chooseAvatar: '选择头像'
- },
- materialCategory: {
- moduleName: '产品物料分类',
- subTitle: '产品物料分类管理',
- detailTitle: '分类详情',
- basicInfo: '基础信息',
- code: '分类编码',
- name: '分类名称',
- parentName: '上级分类',
- rootCategory: '无(顶级分类)',
- sort: '排序',
- status: '状态',
- statusEnable: '启用',
- statusDisable: '禁用',
- createTime: '创建时间',
- searchPlaceholder: '请输入分类编码/名称',
- createTitle: '新增分类',
- editTitle: '编辑分类',
- empty: '暂无分类数据',
- loadEditFailed: '加载编辑数据失败',
- noId: '缺少分类ID',
- loadFailed: '加载分类详情失败',
- placeholderCode: '请输入分类编码',
- placeholderName: '请输入分类名称',
- placeholderParent: '请选择上级分类',
- placeholderSort: '请输入排序',
- placeholderStatus: '请选择状态',
- validatorCodeRequired: '分类编码不能为空',
- validatorNameRequired: '分类名称不能为空',
- validatorSortRequired: '排序不能为空',
- validatorStatusRequired: '状态不能为空',
- confirmDeleteContent: '确认删除分类【{name}】吗?'
- },
- materialInfo: {
- moduleName: '产品物料信息',
- subTitle: '产品物料信息管理',
- detailTitle: '物料详情',
- basicInfo: '基础信息',
- barCode: '物料条码',
- name: '物料名称',
- category: '物料小类',
- unit: '库存单位',
- standard: '规格',
- expiryDay: '保质期天数',
- status: '状态',
- statusEnable: '启用',
- statusDisable: '禁用',
- remark: '备注',
- createTime: '创建时间',
- autoCode: '自动生成',
- searchPlaceholder: '请输入物料名称/条码',
- createTitle: '新增物料',
- editTitle: '编辑物料',
- empty: '暂无物料数据',
- loadEditFailed: '加载编辑数据失败',
- noId: '缺少物料ID',
- loadFailed: '加载物料详情失败',
- placeholderBarCode: '请输入物料条码',
- placeholderName: '请输入物料名称',
- placeholderCategory: '请选择物料分类',
- placeholderUnit: '请选择单位',
- placeholderStandard: '请输入规格',
- placeholderExpiryDay: '请输入保质期天数',
- placeholderStatus: '请选择状态',
- placeholderRemark: '请输入备注',
- validatorBarCodeRequired: '物料条码不能为空',
- validatorNameRequired: '物料名称不能为空',
- validatorCategoryRequired: '物料分类不能为空',
- validatorUnitRequired: '单位不能为空',
- confirmDeleteContent: '确认删除物料【{name}】吗?'
- },
- productBom: {
- moduleName: '产品BOM',
- subTitle: '产品BOM管理',
- detailTitle: 'BOM详情',
- basicInfo: '基础信息',
- code: 'BOM编码',
- version: '版本',
- product: '产品',
- unit: '库存单位',
- yieldRate: '良品率',
- isEnable: '是否启用',
- enableYes: '是',
- enableNo: '否',
- remark: '备注',
- createTime: '创建时间',
- searchPlaceholder: '请输入BOM编码',
- createTitle: '新增BOM',
- editTitle: '编辑BOM',
- empty: '暂无BOM数据',
- loadEditFailed: '加载编辑数据失败',
- noId: '缺少BOM ID',
- loadFailed: '加载BOM详情失败',
- placeholderCode: '请输入BOM编码',
- placeholderVersion: '请输入版本',
- placeholderProduct: '请选择产品',
- placeholderUnit: '请选择单位',
- placeholderYieldRate: '请输入良品率',
- placeholderEnable: '请选择是否启用',
- placeholderRemark: '请输入备注',
- validatorCodeRequired: 'BOM编码不能为空',
- validatorVersionRequired: '版本不能为空',
- validatorProductRequired: '产品不能为空',
- validatorUnitRequired: '单位不能为空',
- validatorEnableRequired: '是否启用不能为空',
- confirmDeleteContent: '确认删除BOM【{code}】吗?',
- detailTab: 'BOM明细',
- detailUsageNumber: '用量',
- detailUnit: '单位',
- detailLossRate: '损耗率',
- detailRemark: '备注',
- detailEmpty: '暂无BOM明细数据'
- },
- equipmentCategory: {
- moduleName: '设备分类',
- subTitle: '设备分类管理',
- detailTitle: '设备分类详情',
- basicInfo: '基础信息',
- code: '分类编码',
- name: '分类名称',
- parentName: '上级分类',
- rootCategory: '无(顶级分类)',
- sort: '排序',
- remark: '备注',
- createTime: '创建时间',
- searchPlaceholder: '请输入分类编码/名称',
- createTitle: '新增设备分类',
- editTitle: '编辑设备分类',
- empty: '暂无设备分类数据',
- loadEditFailed: '加载编辑数据失败',
- noId: '缺少分类ID',
- loadFailed: '加载分类详情失败',
- placeholderCode: '请输入分类编码',
- placeholderName: '请输入分类名称',
- placeholderParent: '请选择上级分类',
- placeholderSort: '请输入排序',
- placeholderRemark: '请输入备注',
- validatorCodeRequired: '分类编码不能为空',
- validatorNameRequired: '分类名称不能为空',
- confirmDeleteContent: '确认删除分类【{name}】吗?'
- },
- equipmentLedger: {
- moduleName: '设备台账',
- subTitle: '设备台账管理',
- detailTitle: '设备台账详情',
- basicInfo: '基础信息',
- deviceCode: '设备编码',
- deviceName: '设备名称',
- deviceType: '设备类型',
- deviceStatus: '设备状态',
- lineFilter: '产线',
- scanUnrecognized: '未识别二维码内容',
- scanTypeMismatch: '二维码类型不匹配',
- scanFailed: '扫码失败',
- deviceSpec: '设备规格',
- isScheduled: '是否排产',
- ratedCapacity: '额定产能',
- dailyAverageValue: '每日报工平均值',
- dataCollectionCapacity: '数据采集产能',
- productionDate: '生产日期',
- outgoingTime: '出厂日期',
- factoryEntryDate: '入厂日期',
- deviceLocation: '设备位置',
- deviceManagerName: '设备负责人',
- workshop: '所属车间',
- remark: '备注',
- creatorName: '创建人',
- createTime: '创建时间',
- autoCode: '自动生成',
- yes: '是',
- no: '否',
- searchPlaceholder: '请输入设备编码/名称',
- createTitle: '新增设备台账',
- editTitle: '编辑设备台账',
- empty: '暂无设备台账数据',
- loadEditFailed: '加载编辑数据失败',
- noId: '缺少设备ID',
- loadFailed: '加载设备详情失败',
- placeholderDeviceCode: '请输入设备编码',
- placeholderDeviceName: '请输入设备名称',
- placeholderDeviceType: '请选择设备类型',
- placeholderDeviceSpec: '请输入设备规格',
- placeholderRatedCapacity: '请输入额定产能',
- placeholderDailyAverageValue: '请输入每日报工平均值',
- placeholderDataCollectionCapacity: '请输入数据采集产能',
- placeholderProductionDate: '请选择生产日期',
- placeholderOutgoingTime: '请选择出厂日期',
- placeholderFactoryEntryDate: '请选择入厂日期',
- placeholderDeviceLocation: '请输入设备位置',
- placeholderRemark: '请输入备注',
- validatorDeviceCodeRequired: '设备编码不能为空',
- validatorDeviceNameRequired: '设备名称不能为空',
- validatorDeviceTypeRequired: '设备类型不能为空',
- validatorProductionDateRequired: '生产日期不能为空',
- validatorOutgoingTimeRequired: '出厂日期不能为空',
- validatorFactoryEntryDateRequired: '入厂日期不能为空',
- validatorRatedCapacityRequired: '额定产能不能为空',
- validatorDailyAverageValueRequired: '每日报工平均值不能为空',
- validatorDataCollectionCapacityRequired: '数据采集产能不能为空',
- confirmDeleteContent: '确认删除设备【{name}】吗?',
- checkHistory: '点检记录',
- maintainHistory: '保养记录',
- repairHistory: '报修记录',
- operator: '操作人',
- inspectionMethod: '点检方式',
- criteria: '判定标准',
- inspectionTime: '点检时间',
- maintainMethod: '保养方式',
- maintainTime: '保养时间',
- repairName: '维修单名称',
- faultPhenomenon: '故障现象',
- faultDescription: '故障描述',
- replacementParts: '更换配件',
- repairContent: '维修内容',
- finishDate: '完成日期',
- faultImages: '故障图片',
- repairedImages: '维修后图片',
- noHistoryData: '暂无历史记录',
- resultPending: '待处理',
- resultPass: '合格',
- resultFail: '不合格',
- repairPending: '待处理',
- repairProcessing: '处理中',
- repairCompleted: '已完成',
- repairAbnormal: '异常'
- },
- equipmentMaintenance: {
- moduleName: '设备维修',
- createTitle: '新增设备维修',
- editTitle: '编辑设备维修',
- detailTitle: '设备维修详情',
- repairTitle: '维修处理',
- basicInfo: '基本信息',
- repairObject: '维修对象',
- repairCode: '维修单编号',
- repairName: '维修单名称',
- requireDate: '报修日期',
- acceptedBy: '维修人员',
- confirmBy: '验收人员',
- machineryTypeId: '设备类型',
- machineryTypeDevice: '设备',
- machineryTypeKeyItem: '关键件',
- device: '设备',
- component: '关键件',
- faultLevel: '故障等级',
- isShutdown: '是否停机',
- status: '单据状态',
- faultInfo: '故障信息',
- faultPhenomenon: '故障现象',
- faultDescription: '故障描述',
- faultImages: '故障图片',
- repairResultSection: '处理结果',
- repairResult: '维修结果',
- finishDate: '完成日期',
- confirmDate: '验收日期',
- downtimeDuration: '停机时长',
- faultReason: '故障原因',
- handlingMeasures: '处理措施',
- replacementParts: '更换配件',
- repairContent: '维修内容',
- repairedImages: '维修后图片',
- remark: '备注',
- autoCode: '自动生成',
- deviceLabel: '设备',
- reportTimeLabel: '报修时间',
- searchPlaceholder: '请输入单号/设备编码/设备名称',
- empty: '暂无维修记录',
- statusPending: '待维修',
- statusPassed: '通过',
- statusRejected: '不通过',
- placeholderRepairCode: '请输入维修单编号',
- placeholderRepairName: '请输入维修单名称',
- placeholderRequireDate: '请选择报修日期',
- placeholderAcceptedBy: '请选择维修人员',
- placeholderConfirmBy: '请选择验收人员',
- placeholderDevice: '请选择设备',
- placeholderComponent: '请选择关键件',
- placeholderFaultPhenomenon: '请输入故障现象',
- placeholderFaultDescription: '请输入故障描述',
- placeholderFinishDate: '请选择完成日期',
- placeholderConfirmDate: '请选择验收日期',
- placeholderDowntimeDuration: '请输入停机时长,单位小时',
- placeholderFaultReason: '请输入故障原因',
- placeholderHandlingMeasures: '请输入处理措施',
- placeholderReplacementParts: '请输入更换配件',
- placeholderRepairContent: '请输入维修内容',
- placeholderRemark: '请输入备注',
- loadDetailFailed: '加载详情失败',
- scanUnrecognized: '未识别到内容',
- scanEquipmentRequired: '请扫描设备二维码',
- deviceNotFound: '未找到对应设备',
- scanFailed: '扫码失败',
- maxUploadCount: '最多上传 9 张图片',
- saving: '保存中',
- saveSuccess: '保存成功',
- submitSuccess: '提交成功',
- submitFailed: '提交失败',
- noId: '缺少维修单 ID',
- confirmDeleteContent: '确定删除维修单“{code}”吗?',
- validatorRepairCodeRequired: '请输入维修单编号',
- validatorRepairNameRequired: '请输入维修单名称',
- validatorDeviceRequired: '请选择设备',
- validatorComponentRequired: '请选择关键件',
- validatorRequireDateRequired: '请选择报修日期',
- validatorFaultLevelRequired: '请选择故障等级',
- validatorIsShutdownRequired: '请选择是否停机',
- validatorFaultPhenomenonRequired: '请输入故障现象',
- lineFilter: '产线',
- validatorRepairStatusRequired: '请选择维修结果',
- validatorFinishDateRequired: '请选择完成日期',
- validatorConfirmDateRequired: '请选择验收日期'
- },
- criticalComponent: {
- moduleName: '设备关键件',
- subTitle: '设备关键件管理',
- detailTitle: '设备关键件详情',
- basicInfo: '基础信息',
- code: '关键件编码',
- name: '关键件名称',
- deviceSpec: '规格',
- description: '描述',
- count: '数量',
- remark: '备注',
- creatorName: '创建人',
- createTime: '创建时间',
- autoCode: '自动生成',
- searchPlaceholder: '请输入编码/名称',
- createTitle: '新增设备关键件',
- editTitle: '编辑设备关键件',
- empty: '暂无设备关键件数据',
- loadEditFailed: '加载编辑数据失败',
- noId: '缺少关键件ID',
- loadFailed: '加载关键件详情失败',
- placeholderCode: '请输入关键件编码',
- placeholderName: '请输入关键件名称',
- placeholderDeviceSpec: '请输入规格',
- placeholderDescription: '请输入描述',
- placeholderCount: '请输入数量',
- placeholderRemark: '请输入备注',
- validatorCodeRequired: '关键件编码不能为空',
- validatorNameRequired: '关键件名称不能为空',
- confirmDeleteContent: '确认删除关键件【{name}】吗?'
- },
- moldLedger: {
- moduleName: '模具台账',
- subTitle: '模具台账管理',
- detailTitle: '模具详情',
- basicInfo: '模具基本信息',
- moldPlaceholder: '模具',
- moldName: '模具名称',
- product: '产品',
- moldCode: '模具编号',
- status: '状态',
- versionSpec: '版本/规格',
- cavityCount: '模穴数',
- currentDevice: '当前设备',
- useCount: '使用次数',
- expand: '展开',
- collapse: '收起',
- tabChildMold: '子模具',
- tabInspection: '点检记录',
- tabRepair: '维修记录',
- tabMaintenance: '保养记录',
- tabInstall: '安装记录',
- installLocation: '安装位置',
- material: '材质',
- quantity: '数量',
- lastReplace: '上次更换',
- usedDays: '已使用{days}天',
- remark: '备注',
- noChildMold: '暂无子模具数据',
- noInspection: '暂无点检记录',
- noRepair: '暂无维修记录',
- noMaintenance: '暂无保养记录',
- noInstall: '暂无安装记录',
- inspectionMethod: '点检方式',
- criteria: '判定标准',
- inspectionTime: '点检时间',
- maintainMethod: '保养方式',
- maintainTime: '保养时间',
- repairProject: '维修项目',
- projectContent: '项目内容',
- finishTime: '完成时间',
- operateMold: '模具',
- operator: '操作人',
- time: '时间',
- upperMold: '上模',
- lowerMold: '下模',
- missingBrandId: '缺少模具组ID',
- detailLoadFailed: '详情加载失败',
- childLoadFailed: '子模具加载失败',
- inspectionLoadFailed: '点检记录加载失败',
- repairLoadFailed: '维修记录加载失败',
- maintainLoadFailed: '保养记录加载失败',
- installLoadFailed: '安装记录加载失败',
- resultPending: '待处理',
- resultPass: '合格',
- resultWarning: '警告',
- repairCompleted: '完成',
- repairAbnormal: '异常',
- repairProcessing: '处理中',
- searchPlaceholder: '请输入模具组编码或名称',
- allStatus: '全部',
- selectMoldStatus: '选择模具状态',
- clear: '清空',
- name: '名称',
- createTime: '创建时间',
- confirmDeleteContent: '确认删除模具组"{name}"吗?',
- empty: '暂无模具台账数据',
- scanUnrecognized: '无法识别二维码',
- scanFormatError: '二维码格式不正确',
- scanFailed: '扫描失败',
- noIdView: '缺少ID,无法查看详情',
- noIdDelete: '缺少ID,无法删除'
- },
- moldCheck: {
- moduleName: '模具点检',
- addTitle: '新增点检',
- detailTitle: '点检详情',
- searchPlaceholder: '请输入点检单号',
- empty: '暂无点检记录',
- add: '新增',
- moldName: '模具名称',
- moldCode: '模具编号',
- product: '产品',
- status: '状态',
- taskType: '任务类型',
- taskTypeInspect: '点检',
- taskTypeMaintain: '保养',
- planNo: '点检单号',
- taskTime: '执行时间',
- template: '配置模板',
- operator: '操作员',
- jobStatusPending: '待执行',
- jobStatusProcessing: '执行中',
- jobStatusCompleted: '已完成',
- jobStatusTimeout: '已超时',
- jobStatusCancelled: '已取消',
- jobResultOk: '通过',
- jobResultNg: '不通过',
- progressTitle: '进度',
- noResultData: '暂无点检结果数据',
- requiredText: '必检',
- inspectionMethod: '点检方式',
- judgmentCriteria: '判定标准',
- textInput: '输入值',
- inputPlaceholder: '请输入',
- images: '图片',
- remark: '备注',
- resultText: '结果',
- inspectionResultPass: '通过',
- inspectionResultFail: '不通过',
- inspectionResultPending: '待判定',
- maxUploadCount: '最多上传3张图片',
- selectAllDecisionError: '请选择所有点检项的判定结果',
- currentMoldInfo: '模具信息',
- moldGroupCode: '模具组编码',
- moldGroupName: '模具组名称',
- cavityCount: '模穴数',
- moldSize: '模具尺寸',
- currentDevice: '当前设备',
- selectMold: '选择模具',
- reSelectMold: '重新选择模具',
- selectMoldError: '请选择模具',
- searchMold: '请输入模具名称',
- noMoldInfo: '请选择模具',
- noMoldData: '暂无可选模具',
- taskName: '任务名称',
- taskInfo: '任务信息',
- placeholderTaskName: '请输入任务名称',
- templateSelection: '模板/任务选择',
- selectTemplate: '请选择模板',
- selectTemplateError: '请选择点检模板',
- noItems: '请先选择点检模板',
- noTemplate: '暂无模板',
- resultListTitle: '检验结果',
- editResult: '编辑',
- cancelEdit: '取消编辑',
- submit: '提交点检',
- submitSuccess: '点检提交成功',
- submitFailed: '点检提交失败',
- reInspect: '再次点检'
- },
- moldMaintain: {
- moduleName: '模具保养',
- addTitle: '新增保养',
- detailTitle: '保养详情',
- searchPlaceholder: '请输入保养单号',
- empty: '暂无保养记录',
- add: '新增',
- moldName: '模具名称',
- moldCode: '模具编号',
- product: '产品',
- status: '状态',
- taskType: '任务类型',
- taskTypeInspect: '点检',
- taskTypeMaintain: '保养',
- planNo: '保养单号',
- taskTime: '执行时间',
- template: '配置模板',
- operator: '操作员',
- jobResultOk: '通过',
- jobResultNg: '不通过',
- progressTitle: '进度',
- noResultData: '暂无保养结果数据',
- requiredText: '必检',
- inspectionMethod: '保养方式',
- judgmentCriteria: '判定基准',
- textInput: '输入值',
- inputPlaceholder: '请输入',
- images: '图片',
- remark: '备注',
- resultText: '结果',
- inspectionResultPass: '通过',
- inspectionResultFail: '不通过',
- inspectionResultPending: '待判定',
- maxUploadCount: '最多上传3张图片',
- selectAllDecisionError: '请选择所有保养项的判定结果',
- currentMoldInfo: '模具信息',
- moldGroupCode: '模具组编码',
- moldGroupName: '模具组名称',
- cavityCount: '模穴数',
- moldSize: '模具尺寸',
- currentDevice: '当前设备',
- selectMold: '选择模具',
- reSelectMold: '重新选择模具',
- selectMoldError: '请选择模具',
- searchMold: '请输入模具名称',
- noMoldInfo: '请选择模具',
- noMoldData: '暂无可选模具',
- taskName: '任务名称',
- taskInfo: '任务信息',
- placeholderTaskName: '请输入任务名称',
- templateSelection: '模板/任务选择',
- selectTemplate: '请选择模板',
- selectTemplateError: '请选择保养模板',
- noItems: '请先选择保养模板',
- noTemplate: '暂无模板',
- resultListTitle: '检验结果',
- editResult: '编辑',
- cancelEdit: '取消编辑',
- submit: '提交保养',
- submitSuccess: '保养提交成功',
- submitFailed: '保养提交失败',
- reInspect: '再次保养'
- },
- moldPressureNet: {
- moduleName: '更换压网',
- recordTitle: '压网更换记录',
- recordDesc: '请选择模具组和子模,确认更换时间',
- history: '历史数据',
- historyTitle: '压网历史',
- moldGroup: '模具组',
- selectMoldGroup: '选择模具组',
- searchMoldGroup: '请输入模具组名称',
- noMoldGroup: '暂无模具组',
- moldGroupName: '模具组名称',
- moldGroupCode: '模具组编号',
- product: '产品',
- subMold: '子模',
- selectSubMold: '选择子模',
- reSelectMoldGroup: '重新选择模具组',
- reSelectSubMold: '重新选择子模',
- subMoldCode: '子模编码',
- subMoldName: '子模名称',
- searchSubMold: '搜索子模名称/编号',
- noSubMold: '暂无子模',
- replaceInfo: '更换信息',
- replaceTime: '更换时间',
- pressureNetTime: '压网时间',
- selectReplaceTime: '请选择更换时间',
- operator: '操作人',
- selectOperator: '请选择操作人',
- noOperator: '暂无操作人',
- remark: '备注',
- remarkPlaceholder: '请输入更换原因或备注',
- confirmReplace: '确认更换',
- selectMoldGroupError: '请选择模具组',
- selectSubMoldError: '请选择子模',
- selectedCount: '已选{count}个子模',
- selectReplaceTimeError: '请选择更换时间',
- submitSuccess: '压网更换保存成功',
- submitFailed: '压网更换保存失败',
- historyMoldIdPlaceholder: '输入子模ID筛选,不填查全部',
- searchBrandName: '模具组名称',
- selectDate: '选择日期',
- createTime: '创建时间',
- noHistory: '暂无压网历史记录'
- },
- moldRepair: {
- moduleName: '模具维修',
- createTitle: '新增模具维修',
- editTitle: '编辑模具维修',
- detailTitle: '模具维修详情',
- repairTitle: '维修处理',
- basicInfo: '基本信息',
- repairObject: '维修对象',
- repairCode: '维修单编号',
- repairName: '维修单名称',
- requireDate: '报修日期',
- acceptedBy: '维修人员',
- confirmBy: '验收人员',
- mold: '模具',
- moldCode: '模具编码',
- moldName: '模具名称',
- specModel: '规格型号',
- brand: '品牌',
- faultLevel: '故障等级',
- isShutdown: '是否停机',
- status: '单据状态',
- faultInfo: '故障信息',
- faultPhenomenon: '故障现象',
- faultDescription: '故障描述',
- faultImages: '故障图片',
- repairResultSection: '处理结果',
- repairResult: '维修结果',
- finishDate: '完成日期',
- confirmDate: '验收日期',
- downtimeDuration: '停机时长',
- faultReason: '故障原因',
- handlingMeasures: '处理措施',
- replacementParts: '更换配件',
- repairContent: '维修内容',
- repairedImages: '维修后图片',
- remark: '备注',
- autoCode: '自动生成',
- moldLabel: '模具',
- reportTimeLabel: '报修时间',
- searchPlaceholder: '请输入单号或模具编码',
- empty: '暂无维修记录',
- statusPending: '待维修',
- statusPassed: '通过',
- statusRejected: '不通过',
- orderStatusPending: '待处理',
- orderStatusDone: '已完成',
- placeholderRepairCode: '请输入维修单编号',
- placeholderRepairName: '请输入维修单名称',
- placeholderRequireDate: '请选择报修日期',
- placeholderAcceptedBy: '请选择维修人员',
- placeholderConfirmBy: '请选择验收人员',
- placeholderUserSearch: '请输入姓名搜索',
- placeholderMold: '请选择模具',
- placeholderMoldNameAuto: '自动带出',
- placeholderMoldCodeAuto: '自动带出',
- placeholderFaultPhenomenon: '请输入故障现象',
- placeholderFaultDescription: '请输入故障描述',
- placeholderFinishDate: '请选择完成日期',
- placeholderConfirmDate: '请选择验收日期',
- placeholderDowntimeDuration: '请输入停机时长,单位小时',
- placeholderFaultReason: '请输入故障原因',
- placeholderHandlingMeasures: '请输入处理措施',
- placeholderReplacementParts: '请输入更换配件',
- placeholderRepairContent: '请输入维修内容',
- placeholderRemark: '请输入备注',
- loadDetailFailed: '加载详情失败',
- scanUnrecognized: '未识别到内容',
- scanMoldRequired: '请扫描模具二维码',
- moldNotFound: '未找到对应模具',
- scanFailed: '扫码失败',
- maxUploadCount: '最多上传 9 张图片',
- noUserData: '暂无人员数据',
- saving: '保存中',
- saveSuccess: '保存成功',
- submitSuccess: '提交成功',
- submitFailed: '提交失败',
- noId: '缺少维修单 ID',
- confirmDeleteContent: '确定删除维修单"{code}"吗?',
- validatorRepairCodeRequired: '请输入维修单编号',
- validatorRepairNameRequired: '请输入维修单名称',
- validatorMoldRequired: '请选择模具',
- validatorRequireDateRequired: '请选择报修日期',
- validatorFaultLevelRequired: '请选择故障等级',
- validatorIsShutdownRequired: '请选择是否停机',
- validatorFaultPhenomenonRequired: '请输入故障现象',
- validatorUserRequired: '请选择人员',
- validatorRepairStatusRequired: '请选择维修结果',
- validatorFinishDateRequired: '请选择完成日期',
- validatorConfirmDateRequired: '请选择验收日期'
- },
- productInbound: {
- moduleName: '产品入库',
- createTitle: '新增产品入库',
- detailTitle: '产品入库详情',
- selectProductTitle: '选择产品',
- selectTaskTitle: '选择任务单',
- selectTaskProductTitle: '选择任务产品',
- selectPalletTitle: '选择托盘',
- createPalletTitle: '新增托盘',
- all: '全部',
- inboundStatus: '入库状态',
- reset: '重置',
- clear: '清空',
- loading: '加载中...',
- loadingMore: '加载更多...',
- noMoreData: '没有更多数据',
- confirm: '确认',
- cancel: '取消',
- back: '返回',
- submit: '确定',
- submitting: '提交中...',
- tip: '提示',
- choose: '请选择',
- yes: '是',
- no: '否',
- statusPending: '待入库',
- statusAuditing: '待审核',
- statusStored: '已入库',
- statusRejected: '已驳回',
- searchDocumentPlaceholder: '请输入入库单号',
- searchProductPlaceholder: '搜索产品名称/编码/规格',
- searchTaskPlaceholder: '搜索任务单号',
- searchTaskProductPlaceholder: '搜索产品名称/编码',
- searchPalletPlaceholder: '搜索托盘码',
- productInfo: '产品信息',
- inboundInfo: '入库信息',
- inboundTime: '入库时间',
- selectInboundTime: '请选择入库时间',
- operator: '经办人',
- selectOperator: '请选择经办人',
- inboundQuantity: '入库数量',
- reviewer: '审核人',
- auditor: '审核人',
- documentNo: '单据编号',
- inboundType: '入库类型',
- remark: '备注',
- remarkPlaceholder: '请输入备注',
- attachment: '附件',
- chooseFile: '选择文件',
- itemList: '入库清单',
- addProduct: '添加产品',
- product: '产品',
- pallet: '托盘',
- packageCount: '包数',
- pieceCount: '个数',
- inboundPackageCount: '入库包数',
- inboundPieceCount: '入库个数',
- palletQuantity: '托盘数量',
- taskOrder: '任务单',
- taskProduct: '任务产品',
- emptyAddProduct: '请添加产品',
- emptyInboundList: '暂无产品入库单',
- emptyItemList: '暂无入库清单',
- confirmInbound: '确认入库',
- inboundSuccess: '入库成功',
- saveFailed: '保存失败',
- loadFailed: '加载失败',
- detailLoadFailed: '详情加载失败',
- operationFailed: '操作失败',
- submitAudit: '提交审核',
- auditPass: '审核通过',
- auditReject: '审核驳回',
- auditPassSuccess: '审核通过',
- auditRejectSuccess: '已驳回',
- submitAuditSuccess: '提交审核成功',
- submitFailed: '提交失败',
- selectAuditor: '请选择审核人',
- selectInboundStatus: '选择入库状态',
- confirmAuditPass: '确认审核通过该产品入库单?',
- confirmAuditReject: '确认驳回该产品入库单?',
- noDetailId: '暂无详情ID',
- completeProductPalletInfo: '请完善产品和托盘信息',
- addProductFirst: '请先添加产品',
- taskInfo: '任务信息',
- relatedTask: '关联任务单',
- selectTask: '请选择任务单',
- selectTaskProduct: '请选择任务产品',
- selectProduct: '请选择产品',
- selectPallet: '请选择托盘',
- selectPalletFirst: '请先选择托盘',
- selectTaskFirst: '请先选择任务单',
- selectProductFirst: '请先选择产品',
- emptyTaskProducts: '当前任务单暂无产品',
- completePalletInfo: '请完善托盘仓库/库位/包数',
- productAdded: '已添加产品',
- taskProductLoadFailed: '任务产品加载失败',
- workOrderNo: '工单号',
- code: '编码',
- packagingScheme: '包装方案',
- palletPackageQuantity: '每托包数',
- packageQuantity: '每包个数',
- selectedPalletCount: '已选择 {count} 个托盘',
- selectedCount: '已选 {count} 个',
- packageUnit: '{count} 包',
- pieceUnit: '{count} 个',
- warehouse: '仓库',
- area: '库区',
- location: '库位',
- deliveryDate: '交付日期',
- emptyTask: '暂无任务单',
- emptyProduct: '暂无产品数据',
- emptyTaskProduct: '暂无任务产品',
- emptyPallet: '暂无托盘',
- spec: '规格',
- unit: '单位',
- palletCode: '托盘码',
- palletType: '托盘类型',
- palletStatus: '托盘状态',
- autoCode: '自动编码',
- length: '长',
- width: '宽',
- height: '高',
- productCount: '包数',
- ratedLoadWeight: '额定载重',
- enterPalletCode: '请输入托盘码',
- selectPalletType: '请选择托盘类型',
- selectPalletStatus: '请选择托盘状态',
- enterPackageCount: '请输入包数',
- selectWarehouse: '请选择仓库',
- selectArea: '请选择库区',
- selectUnit: '请选择单位',
- selectWarehouseFirst: '请先选择仓库',
- emptyArea: '暂无库区',
- enterRatedLoadWeight: '请输入额定载重',
- createSuccess: '新增成功',
- createPalletFailed: '新增托盘失败'
- },
- productCheck: {
- moduleName: '产品盘点执行',
- createTitle: '新增产品盘点',
- executeTitle: '执行盘点',
- detailTitle: '\u4ea7\u54c1\u76d8\u70b9\u8be6\u60c5',
- selectProductTitle: '选择产品',
- selectItemTitle: '选择盘点项',
- selectWarehouseTitle: '选择仓库',
- selectAreaTitle: '选择库区',
- all: '全部',
- reset: '重置',
- clear: '清空',
- loading: '加载中...',
- loadingMore: '加载更多...',
- noMoreData: '没有更多数据',
- confirm: '确认',
- cancel: '取消',
- submit: '确定',
- submitting: '提交中...',
- tip: '提示',
- choose: '请选择',
- delete: '删除',
- save: '保存',
- statusDraft: '待提交',
- statusAuditing: '待审核',
- statusApproved: '已审核',
- statusRejected: '已驳回',
- searchDocumentPlaceholder: '请输入盘点单号',
- searchProductPlaceholder: '搜索产品名称/编码/规格',
- searchWarehousePlaceholder: '搜索仓库名称',
- searchAreaPlaceholder: '搜索库区名称/编码',
- searchItemPlaceholder: '搜索产品/仓库/库区',
- productInfo: '产品信息',
- checkInfo: '盘点信息',
- checkTime: '盘点时间',
- selectCheckTime: '请选择盘点时间',
- sourceType: '生成来源',
- sourceTypeStock: '按库存',
- sourceTypeProduct: '按产品',
- selectWarehouse: '请选择仓库',
- selectWarehouseFirst: '请先选择仓库',
- selectArea: '请选择库区',
- warehouse: '仓库',
- area: '库区',
- warehouseAddress: '地址',
- principal: '负责人',
- checkStatus: '盘点状态',
- checked: '已盘点',
- unchecked: '未盘点',
- creator: '创建人',
- reviewer: '审核人',
- auditor: '审核人',
- documentNo: '盘点单号',
- remark: '备注',
- remarkPlaceholder: '请输入备注',
- productAndItems: '产品与盘点项',
- selectProduct: '选择产品',
- product: '产品',
- checkItems: '盘点项',
- selectAll: '全选',
- selectedCount: '已选 {count} 个',
- selectedItemCount: '已选 {count} 项',
- selectCheckItems: '请选择盘点项',
- stockCount: '账面数量',
- code: '编码',
- spec: '规格',
- unit: '单位',
- difference: '差异',
- actualCount: '实盘数量',
- saveDraft: '保存草稿',
- finishCheck: '完成盘点',
- execute: '执行盘点',
- submitAudit: '提交审核',
- auditPass: '审核通过',
- auditReject: '审核驳回',
- auditPassSuccess: '审核通过',
- auditRejectSuccess: '已驳回',
- submitAuditSuccess: '提交审核成功',
- submitFailed: '提交失败',
- selectAuditor: '请选择审核人',
- selectStatus: '选择盘点状态',
- confirmAuditPass: '确认审核通过该产品盘点单?',
- confirmAuditReject: '确认驳回该产品盘点单?',
- confirmDelete: '确认删除该产品盘点单?',
- deleteSuccess: '删除成功',
- operationFailed: '操作失败',
- loadFailed: '加载失败',
- detailLoadFailed: '详情加载失败',
- emptyList: '暂无产品盘点单',
- emptyProduct: '暂无产品数据',
- emptyWarehouse: '暂无仓库',
- emptyArea: '暂无库区',
- emptyItemList: '暂无盘点项',
- emptyAddProduct: '请添加产品',
- selectProductFirst: '请先选择产品',
- completeCheckItems: '请完善盘点项信息',
- createSuccess: '创建成功',
- saveFailed: '保存失败',
- saveSuccess: '保存成功',
- checkSuccess: '盘点完成',
- noDetailId: '暂无详情ID',
- enterActualCount: '请输入实盘数量',
- confirmActualCountZero: '{items} 实盘数量为 0,确认继续?'
- },
- productOutbound: {
- moduleName: '产品出库',
- createTitle: '新增产品出库',
- detailTitle: '产品出库详情',
- selectProductTitle: '选择产品',
- selectPalletTitle: '选择托盘',
- all: '全部',
- outboundStatus: '出库状态',
- reset: '重置',
- clear: '清空',
- loading: '加载中...',
- loadingMore: '加载更多...',
- noMoreData: '没有更多数据',
- confirm: '确认',
- cancel: '取消',
- back: '返回',
- submit: '确定',
- submitting: '提交中...',
- tip: '提示',
- choose: '请选择',
- statusPending: '待出库',
- statusAuditing: '待审核',
- statusStored: '已出库',
- statusRejected: '已驳回',
- searchDocumentPlaceholder: '请输入出库单号',
- searchProductPlaceholder: '搜索产品名称/编码/规格',
- searchPalletPlaceholder: '搜索托盘码',
- productInfo: '产品信息',
- outboundInfo: '出库信息',
- outboundTime: '出库时间',
- selectOutboundTime: '请选择出库时间',
- operator: '经办人',
- selectOperator: '请选择经办人',
- outboundQuantity: '出库数量',
- reviewer: '审核人',
- auditor: '审核人',
- documentNo: '单据编号',
- outboundType: '出库类型',
- remark: '备注',
- remarkPlaceholder: '请输入备注',
- attachment: '附件',
- chooseFile: '选择文件',
- itemList: '出库清单',
- addProduct: '添加产品',
- product: '产品',
- pallet: '托盘',
- packageCount: '包数',
- pieceCount: '个数',
- outboundPackageCount: '出库包数',
- outboundPieceCount: '出库个数',
- availablePackageCount: '可用包数',
- enterOutboundPackageCount: '请输入出库包数',
- palletQuantity: '托盘数量',
- emptyAddProduct: '请添加产品',
- emptyOutboundList: '暂无产品出库单',
- emptyItemList: '暂无出库清单',
- confirmOutbound: '确认出库',
- outboundSuccess: '出库成功',
- saveFailed: '保存失败',
- loadFailed: '加载失败',
- detailLoadFailed: '详情加载失败',
- operationFailed: '操作失败',
- submitAudit: '提交审核',
- auditPass: '审核通过',
- auditReject: '审核驳回',
- auditPassSuccess: '审核通过',
- auditRejectSuccess: '已驳回',
- submitAuditSuccess: '提交审核成功',
- submitFailed: '提交失败',
- selectAuditor: '请选择审核人',
- selectOutboundStatus: '选择出库状态',
- confirmAuditPass: '确认审核通过该产品出库单?',
- confirmAuditReject: '确认驳回该产品出库单?',
- noDetailId: '暂无详情ID',
- completeProductPalletInfo: '请完善产品和托盘信息',
- addProductFirst: '请先添加产品',
- selectProduct: '请选择产品',
- selectPallet: '请选择托盘',
- selectPalletFirst: '请先选择托盘',
- selectProductFirst: '请先选择产品',
- completePalletInfo: '请完善托盘仓库/库位/包数',
- productAdded: '已添加产品',
- code: '编码',
- packagingScheme: '包装方案',
- palletPackageQuantity: '每托包数',
- packageQuantity: '每包个数',
- selectedPalletCount: '已选择 {count} 个托盘',
- selectedCount: '已选 {count} 个',
- packageUnit: '{count} 包',
- pieceUnit: '{count} 个',
- warehouse: '仓库',
- area: '库区',
- location: '库位',
- emptyProduct: '暂无产品数据',
- emptyPallet: '暂无托盘',
- spec: '规格',
- unit: '单位',
- palletCode: '托盘码',
- palletType: '托盘类型',
- palletStatus: '托盘状态',
- outMode: '出库方式',
- outModeWholePallet: '整托出库',
- outModeSplitPallet: '拆托出库'
- },
- sparepartInbound: {
- moduleName: '备件入库',
- tabPending: '待入库',
- tabAuditing: '待审核',
- searchPlaceholder: '搜索入库单号',
- sparepartInfo: '备件信息',
- inboundTime: '入库时间',
- creator: '创建人',
- quantity: '数量',
- reviewer: '审核人',
- approve: '已入库',
- reject: '驳回',
- confirmApprove: '确定审核通过该入库单吗?',
- confirmReject: '确定驳回该入库单吗?',
- approveSuccess: '审核通过',
- rejectSuccess: '已驳回',
- deleteSuccess: '删除成功',
- empty: '暂无入库单据',
- createTitle: '新增备件入库',
- scanSparepart: '扫备件码',
- selectSparepart: '选择备件',
- searchSparepartPlaceholder: '搜索备件编码/名称',
- sparepartCode: '备件编码',
- category: '分类',
- spec: '规格',
- unit: '库存单位',
- purchaseUnit: '采购单位',
- convertRatio: '换算关系',
- defaultWarehouse: '默认仓库/库区',
- selectedSpareparts: '已选备件',
- noSelectedSparepart: '请扫码或选择备件',
- alreadySelected: '该备件已添加',
- confirmRemove: '确定移除此备件吗?',
- currentStock: '当前库存',
- minStockUnit: '最小库存单位',
- inboundQuantity: '入库数量',
- qtyPlaceholder: '请输入',
- noSparepartData: '暂无备件数据',
- validatorSparepartRequired: '请选择备件'
- },
- sparepartOutbound: {
- moduleName: '备件出库',
- tabPending: '待出库',
- tabAuditing: '待审核',
- searchPlaceholder: '搜索出库单号',
- sparepartInfo: '备件信息',
- outboundTime: '出库时间',
- creator: '创建人',
- quantity: '数量',
- reviewer: '审核人',
- approve: '已出库',
- reject: '驳回',
- confirmApprove: '确定审核通过该出库单吗?',
- confirmReject: '确定驳回该出库单吗?',
- approveSuccess: '审核通过',
- rejectSuccess: '已驳回',
- deleteSuccess: '删除成功',
- empty: '暂无出库单据',
- createTitle: '新增备件出库'
- },
- materialOutbound: {
- moduleName: '物料出库',
- tabPending: '待出库',
- tabAuditing: '待审核',
- searchPlaceholder: '搜索出库单号',
- sparepartInfo: '物料信息',
- materialInfo: '物料信息',
- outboundTime: '出库时间',
- creator: '创建人',
- quantity: '数量',
- reviewer: '审核人',
- approve: '已出库',
- reject: '驳回',
- confirmApprove: '确定审核通过该出库单吗?',
- confirmReject: '确定驳回该出库单吗?',
- approveSuccess: '审核通过',
- rejectSuccess: '已驳回',
- deleteSuccess: '删除成功',
- empty: '暂无出库单据',
- createTitle: '新增物料出库'
- },
+export default {
+ common: {
+ submit: '提交',
+ close: '关闭',
+ exit: '退出',
+ notice: '通知',
+ moduleBuilding: '模块建设中~',
+ updateSuccess: '修改成功',
+ confirmLogout: '确定注销并退出系统吗',
+ languageSwitched: '语言已切换',
+ more: '更多',
+ reset: '重置',
+ complete: '完成',
+ edit: '编辑',
+ saveFailed: '保存失败'
+ },
+ tab: {
+ home: '首页',
+ report: '报表',
+ work: '管理',
+ mine: '我的'
+ },
+ work:{
+ mold: '模具',
+ equipmentMaintenance: '设备运维',
+ keypart: '关键件',
+ spare: '备件',
+ },
+ nav: {
+ home: '首页',
+ mine: '个人中心',
+ avatar: '修改头像',
+ info: '个人信息',
+ editInfo: '编辑资料',
+ pwd: '修改密码',
+ setting: '应用设置',
+ help: '常见问题',
+ about: '关于我们'
+ },
+ dashboard: {
+ welcome: '欢迎您使用',
+ subtitle: '必硕数字化智能中控平台',
+ functionNav: '功能导航',
+ editNavMenu: '编辑快捷开关',
+ configuredNav: '已添加',
+ unconfiguredNav: '添加更多',
+ dragHint: '拖动图标进行排序,上方图标将显示在控制中心',
+ clickHint: '点击图标添加到已配置或取消配置',
+ allNavMenu: '全部功能',
+ productionOverview: '生产整体概况',
+ qualityOverview: '质量概况',
+ productionPlan: '生产概括',
+ production: '生产',
+ quality: '质量',
+ totalCount: '总数',
+ passCount: '合格数',
+ failCount: '不合格数',
+ qualityTrend: '质量趋势',
+ chartPlaceholder: '图表加载中...',
+ totalWangongNumber: '报工总数',
+ totalPassNumber: '合格总数',
+ totalNoPassNumber: '不合格总数',
+ totalPassRate: '总合格率',
+ productPassRateRanking: '产品合格率排行',
+ passNumber: '合格数',
+ noPassNumber: '不合格数',
+ periodLastWeek: '上周',
+ periodThisWeek: '本周',
+ periodLast7Days: '近7日',
+ periodLastMonth: '上月',
+ periodThisMonth: '本月',
+ periodLastYear: '近一年',
+ collapseList: '收起列表',
+ viewMore: '查看更多 ›',
+ productName: '产品名称',
+ pipeline: '生产线',
+ planNumber: '计划数量',
+ planStart: '计划开始',
+ planEnd: '计划结束',
+ back: '返回',
+ todoTitle: '待办任务',
+ noTodo: '暂无待办任务',
+ taskCode: '任务编号:{value}',
+ taskType: '任务类型:{value}',
+ taskTarget: '目标:{value}',
+ createTime: '创建时间:{value}',
+ all: '总数',
+ pending: '未开工',
+ running: '生产中',
+ finished: '已完成',
+ mold: '模具',
+ equipment: '设备',
+ keypart: '关键件',
+ spare: '备件',
+ product: '产品物料',
+ statusScheduled: '已排产',
+ statusTrial: '试产',
+ statusMass: '量产',
+ statusPause: '暂停',
+ statusWaitStockIn: '待入库',
+ viewPlan: '查看计划: {code}',
+ filterTask: '任务',
+ filterProduct: '产品',
+ dateRange: '日期范围',
+ startDate: '开始时间',
+ endDate: '结束时间',
+ baogongNum: '报工数',
+ passNum: '合格数',
+ noPassNum: '不合格数',
+ passRate: '合格率',
+ trendChart: '趋势图',
+ taskPlaceholder: '任务模式开发中',
+ totalTask: '任务总数',
+ issuedNum: '下达数',
+ partialScheduledNum: '部分排产数',
+ waitingProduction: '待生产',
+ producing: '生产中',
+ completed: '已完成',
+ taskTrend: '任务趋势',
+ rangeYear: '近一年',
+ rangeMonth: '本月',
+ rangeWeek: '本周',
+ rangeToday: '今日',
+ rangeCustom: '自定义',
+ monday: '周一',
+ tuesday: '周二',
+ wednesday: '周三',
+ thursday: '周四',
+ friday: '周五',
+ saturday: '周六',
+ sunday: '周日'
+ },
+ deviceOverview: {
+ title: '设备概括',
+ totalDevices: '设备总数',
+ runningCount: '运行',
+ standbyCount: '待机',
+ faultCount: '故障',
+ offlineCount: '离线',
+ utilizationRate: '利用率',
+ bootRate: '开机率',
+ faultRate: '故障率',
+ rateTrend: '稼动率/开机率趋势',
+ onlyScheduled: '只统计排产设备',
+ skipHoliday: '跳过节假日',
+ periodLastWeek: '上周',
+ periodThisWeek: '本周',
+ periodLast7Days: '近7日',
+ periodLastMonth: '上月',
+ periodThisMonth: '本月',
+ periodLastYear: '近一年',
+ utilizationRanking: '近7日平均稼动率排名',
+ utilizationRateTrend: '稼动率',
+ deviceRateTrend: '单设备近7日稼动率/开机率趋势',
+ selectDevice: '选择设备',
+ selectDeviceHint: '请选择设备查看趋势'
+ },
+ taskList: {
+ filter: '筛选条件',
+ code: '任务单编码',
+ status: '状态',
+ taskType: '任务类型',
+ orderDate: '下单日期',
+ deliveryDate: '交付日期',
+ remark: '备注',
+ createTime: '创建时间',
+ totalNumber: '总数量',
+ planNumber: '已排产',
+ unPlanNumber: '未排产',
+ storedPlanNumber: '已入库',
+ urgent: '紧急',
+ noData: '暂无任务数据',
+ viewTask: '查看任务: {code}'
+ },
+ planList: {
+ taskCode: '任务编号',
+ planCode: '计划编号',
+ employeeName: '报工人',
+ baogongNum: '报工数',
+ passNum: '合格数',
+ noPassNum: '不合格数',
+ passRate: '合格率',
+ baogongTime: '报工时间',
+ reason: '原因',
+ noData: '暂无报工数据',
+ viewDetail: '查看详情: {code}'
+ },
+ functionCommon: {
+ search: '查询',
+ reset: '重置',
+ cancel: '取消',
+ confirm: '确认',
+ save: '保存',
+ loading: '加载中...',
+ loadingMore: '正在加载更多...',
+ noMoreData: '没有更多数据了',
+ noIdView: '缺少ID,无法查看详情',
+ noIdEdit: '缺少ID,无法编辑',
+ noIdDelete: '缺少ID,无法删除',
+ loadFailed: '加载失败',
+ deleteSuccess: '删除成功',
+ deleteFailed: '删除失败',
+ saveSuccess: '保存成功',
+ saveFailed: '保存失败',
+ createSuccess: '新增成功',
+ updateSuccess: '更新成功',
+ confirmDelete: '确认删除',
+ uploading: '上传中',
+ uploadImageFailed: '图片上传失败',
+ yes: '是',
+ no: '否',
+ all: '全部',
+ noMore: '没有更多数据了',
+ confirmTitle: '提示'
+ },
+ moldGet: {
+ moduleName: '模具出库',
+ subTitle: '按出库单号与状态快速筛选',
+ detailTitle: '模具出库详情',
+ basicInfo: '基础信息',
+ outNo: '出库单号',
+ outType: '出库类型',
+ outTime: '出库时间',
+ outTimeSingle: '出库日期',
+ outTimePlaceholder: '请选择出库日期',
+ warehouse: '仓库',
+ allWarehouse: '全部仓库',
+ warehousePlaceholder: '请选择仓库',
+ creator: '创建人',
+ status: '状态',
+ allStatus: '全部状态',
+ remark: '备注',
+ itemRemark: '明细备注',
+ attachment: '附件',
+ fileUrlPlaceholder: '请输入附件地址',
+ remarkPlaceholder: '请输入备注',
+ moldName: '模具',
+ moldCode: '模具编码',
+ moldStatus: '模具状态',
+ moldUseTime: '使用次数',
+ machineName: '使用设备',
+ isEnable: '是否启用',
+ createTime: '创建时间',
+ searchNo: '请输入出库单号',
+ searchMold: '请输入模具编码或名称',
+ searchCode: '请输入模具编码',
+ searchName: '请输入模具名称',
+ itemListTitle: '出库明细',
+ selectMold: '选择模具',
+ noItems: '暂无出库明细',
+ count: '数量',
+ noAuto: '系统自动生成',
+ createTitle: '新增模具出库',
+ editTitle: '编辑模具出库',
+ edit: '编辑',
+ delete: '删除',
+ approve: '审批',
+ empty: '暂无模具出库数据',
+ noMoldData: '暂无可选模具',
+ loadEditFailed: '加载编辑数据失败',
+ validatorOutTimeRequired: '出库日期不能为空',
+ validatorWarehouseRequired: '仓库不能为空',
+ validatorItemRequired: '请至少选择一个模具',
+ validatorCountRequired: '数量必须大于0',
+ confirmDelete: '确认删除出库单 {no} 吗?',
+ confirmApprove: '确认审批出库单 {no} 吗?',
+ approveSuccess: '审批成功'
+ },
+ moldReturn: {
+ moduleName: '模具入库',
+ subTitle: '按入库单号与状态快速筛选',
+ detailTitle: '模具入库详情',
+ basicInfo: '基础信息',
+ inNo: '入库单号',
+ inType: '入库类型',
+ inTime: '入库时间',
+ inTimeSingle: '入库日期',
+ inTimePlaceholder: '请选择入库日期',
+ warehouse: '仓库',
+ allWarehouse: '全部仓库',
+ warehousePlaceholder: '请选择仓库',
+ creator: '创建人',
+ status: '状态',
+ allStatus: '全部状态',
+ remark: '备注',
+ itemRemark: '明细备注',
+ attachment: '附件',
+ fileUrlPlaceholder: '请输入附件地址',
+ remarkPlaceholder: '请输入备注',
+ moldName: '模具',
+ moldCode: '模具编码',
+ moldStatus: '模具状态',
+ moldUseTime: '使用次数',
+ searchNo: '请输入入库单号',
+ searchCode: '请输入模具编码',
+ searchName: '请输入模具名称',
+ itemListTitle: '入库明细',
+ selectMold: '选择模具',
+ noItems: '暂无入库明细',
+ count: '数量',
+ noAuto: '系统自动生成',
+ createTitle: '新增模具入库',
+ editTitle: '编辑模具入库',
+ approve: '审批',
+ empty: '暂无模具入库数据',
+ noMoldData: '暂无可选模具',
+ loadEditFailed: '加载编辑数据失败',
+ validatorInTimeRequired: '入库日期不能为空',
+ validatorWarehouseRequired: '仓库不能为空',
+ validatorItemRequired: '请至少选择一个模具',
+ validatorCountRequired: '数量必须大于0',
+ confirmDelete: '确认删除入库单 {no} 吗?',
+ confirmApprove: '确认审批入库单 {no} 吗?',
+ approveSuccess: '审批成功'
+ },
+ moldOperate: {
+ moduleName: '上下模',
+ subTitle: '模具上模/下模操作记录',
+ detailTitle: '上下模详情',
+ basicInfo: '基础信息',
+ tabUp: '上模',
+ tabDown: '下模',
+ operateType: '操作类型',
+ mold: '模具',
+ lowerMold: '下模模具',
+ selectMold: '选择模具',
+ noSelectedMold: '暂无已选模具',
+ allMold: '全部模具',
+ searchRemark: '请输入备注关键字',
+ searchCode: '请输入模具编码',
+ searchName: '请输入模具名称',
+ moldCode: '模具编码',
+ moldName: '模具名称',
+ device: '设备',
+ deviceName: '设备名称',
+ creatorName: '创建人',
+ remark: '备注',
+ createTime: '创建时间',
+ createTitle: '新增上下模',
+ editTitle: '编辑上下模',
+ empty: '暂无上下模数据',
+ noMoldData: '暂无可选模具',
+ placeholderDevice: '请选择设备',
+ placeholderRemark: '请输入备注',
+ validatorOperateTypeRequired: '操作类型不能为空',
+ validatorDeviceRequired: '设备不能为空',
+ validatorMoldRequired: '请至少选择一个上模模具',
+ validatorOperatorRequired: '请选择操作人',
+ validatorLowerMoldRequired: '请至少选择一个下模模具',
+ loadEditFailed: '加载编辑数据失败',
+ confirmDelete: '确认删除该上下模记录吗?',
+ scanDevice: '扫设备码',
+ selectDevice: '选择设备',
+ selectedDevice: '已选设备',
+ deviceCode: '设备编码',
+ productionLine: '所属产线',
+ currentMold: '当前在机模具',
+ deviceStatus: '设备状态',
+ statusRunning: '正常',
+ statusStop: '停用',
+ statusFault: '故障',
+ selectMountMold: '选择待上模模具',
+ product: '产品',
+ status: '状态',
+ pendingMount: '待上模',
+ confirmMount: '确认上模',
+ clickSelectMold: '点击选择模具',
+ noDeviceData: '暂无设备数据',
+ deviceNotFound: '未找到对应设备',
+ deviceInfo: '设备信息',
+ currentMoldInfo: '当前在机模具',
+ mountTime: '上模时间',
+ useCount: '使用次数',
+ countUnit: '次',
+ changeMountTarget: '更换上模对象',
+ changeTarget: '更换下模对象',
+ confirmDismount: '确认下模',
+ clickSelectDeviceFirst: '请先选择设备',
+ noMoldOnDevice: '该设备暂无在机模具',
+ historySuffix: '历史',
+ historyTitle: '上下模历史',
+ searchPlaceholder: '搜索设备/模具名称',
+ placeholderOperator: '请选择操作人',
+ filterAll: '全部',
+ filterToday: '今天',
+ filterWeek: '本周',
+ historyEmpty: '暂无历史记录',
+ totalPrefix: '共 ',
+ totalSuffix: ' 条',
+ confirmDeleteHistory: '确认删除该历史记录吗?',
+ operateTime: '操作时间',
+ operator: '操作人'
+ },
+ moldInspectionItems: {
+ moduleName: '点检项库',
+ subTitle: '模具管理点检项维护',
+ detailTitle: '点检项库详情',
+ basicInfo: '基础信息',
+ code: '项目编码',
+ name: '项目名称',
+ inspectionMethod: '检验方式',
+ valueType: '值类型',
+ isEnable: '是否启用',
+ judgmentCriteria: '判定基准',
+ creatorName: '创建人',
+ createTime: '创建时间',
+ searchPlaceholder: '请输入编码/名称/判定基准',
+ createTitle: '新增点检项',
+ editTitle: '编辑点检项',
+ empty: '暂无点检项数据',
+ loadEditFailed: '加载编辑数据失败',
+ confirmDelete: '确认删除该点检项吗?',
+ placeholderCode: '请输入项目编码',
+ placeholderName: '请输入项目名称',
+ placeholderInspectionMethod: '请选择检验方式',
+ placeholderValueType: '请选择值类型',
+ placeholderIsEnable: '请选择是否启用',
+ placeholderJudgmentCriteria: '请输入判定基准',
+ validatorSubjectCodeRequired: '项目编码不能为空',
+ validatorSubjectNameRequired: '项目名称不能为空',
+ validatorInspectionMethodRequired: '检验方式不能为空',
+ validatorValueTypeRequired: '值类型不能为空',
+ validatorIsEnableRequired: '是否启用不能为空',
+ validatorJudgmentCriteriaRequired: '判定基准不能为空'
+ },
+ moldInspectionPlan: {
+ moduleName: '点检模板',
+ subTitle: '模具管理点检模板维护',
+ detailTitle: '点检模板详情',
+ basicInfo: '基础信息',
+ planName: '模板名称',
+ planType: '模板类型',
+ planTypeMaintain: '保养',
+ planTypeInspect: '点检',
+ description: '描述',
+ subjectName: '点检项',
+ creatorName: '创建人',
+ createTime: '创建时间',
+ updateTime: '更新时间',
+ searchPlaceholder: '请输入模板名称',
+ createTitle: '新增点检模板',
+ editTitle: '编辑点检模板',
+ empty: '暂无点检模板数据',
+ loadEditFailed: '加载编辑数据失败',
+ confirmDelete: '确认删除该点检模板吗?',
+ placeholderPlanName: '请输入模板名称',
+ placeholderPlanType: '请选择模板类型',
+ placeholderDescription: '请输入描述',
+ placeholderSubjectSelect: '请选择点检项',
+ subjectSelectTitle: '选择点检项',
+ noSubjectData: '暂无点检项数据',
+ validatorPlanNameRequired: '模板名称不能为空',
+ validatorPlanTypeRequired: '模板类型不能为空',
+ subjectListTitle: '关联点检项',
+ subjectCode: '项目编码',
+ inspectionMethod: '检验方式',
+ judgmentCriteria: '判定基准'
+ },
+ moldTaskConfig: {
+ moduleName: '点检任务',
+ subTitle: '模具管理点检任务维护',
+ detailTitle: '点检任务详情',
+ basicInfo: '基础信息',
+ name: '任务名称',
+ taskType: '任务类型',
+ taskTypeInspect: '点检',
+ taskTypeMaintain: '保养',
+ moldList: '模具列表',
+ projectForm: '点检模板',
+ projectFormName: '项目方案',
+ dateRange: '有效日期',
+ startDate: '开始日期',
+ endDate: '结束日期',
+ cronExpression: 'Cron表达式',
+ operableUsers: '可操作用户',
+ enabled: '是否启用',
+ creatorName: '创建人',
+ createTime: '创建时间',
+ updateTime: '更新时间',
+ searchPlaceholder: '请输入任务名称',
+ createTitle: '新增点检任务',
+ editTitle: '编辑点检任务',
+ empty: '暂无点检任务数据',
+ loadEditFailed: '加载编辑数据失败',
+ confirmDeleteContent: '确认删除该点检任务【{name}】吗?',
+ placeholderName: '请输入任务名称',
+ placeholderTaskType: '请选择任务类型',
+ placeholderMoldList: '请选择模具',
+ placeholderProjectForm: '请选择点检模板',
+ placeholderStartDate: '选择开始日期',
+ placeholderEndDate: '选择结束日期',
+ placeholderCron: '请输入Cron表达式',
+ placeholderOperableUsers: '请选择可操作用户',
+ validatorNameRequired: '任务名称不能为空',
+ validatorTaskTypeRequired: '任务类型不能为空',
+ validatorMoldListRequired: '模具列表不能为空',
+ validatorProjectFormRequired: '点检模板不能为空',
+ validatorDateRangeRequired: '有效日期不能为空',
+ createTicketSuccess: '工单创建成功',
+ createTicketFail: '工单创建失败',
+ moldSelectTitle: '选择模具',
+ planSelectTitle: '选择点检模板',
+ userSelectTitle: '选择可操作用户'
+ },
+ equipmentInspectionTasks: {
+ moduleName: '设备点检任务',
+ subTitle: '设备点检任务工单管理',
+ detailTitle: '设备点检任务详情',
+ basicInfo: '基础信息',
+ createTicket: '新增工单管理',
+ name: '任务名称',
+ taskType: '任务类型',
+ taskTypeInspect: '点检',
+ taskTypeMaintain: '保养',
+ deviceList: '设备列表',
+ projectFormName: '项目方案',
+ dateRange: '有效日期',
+ cronExpression: 'Cron表达式',
+ operableUsers: '可操作用户',
+ enabled: '是否启用',
+ creatorName: '创建人',
+ createTime: '创建时间',
+ updateTime: '更新时间',
+ searchPlaceholder: '请输入任务名称/设备编码/设备名称',
+ empty: '暂无设备点检任务数据',
+ createTicketSuccess: '工单创建成功',
+ createTicketFail: '工单创建失败',
+ lineFilter: '产线',
},
+ equipmentInspectionRecord: {
+ moduleName: '设备点检记录',
+ subTitle: '设备点检记录查询',
+ detailTitle: '设备点检记录详情',
+ taskType: '任务类型',
+ taskTypeInspect: '点检',
+ taskTypeMaintain: '保养',
+ taskTypeInspectShort: '检',
+ taskTypeMaintainShort: '养',
+ planNo: '任务编号',
+ deviceName: '设备名称',
+ configName: '点检模板',
+ jobStatus: '作业状态',
+ jobStatusPending: '待处理',
+ jobStatusProcessing: '处理中',
+ jobStatusCompleted: '已完成',
+ jobStatusTimeout: '已超时',
+ jobStatusCancelled: '已取消',
+ jobResult: '结果',
+ jobResultOk: '通过',
+ jobResultNg: '不通过',
+ taskTime: '作业时间',
+ searchPlaceholder: '请输入任务编号/设备编码/设备名称',
+ empty: '暂无设备点检记录数据',
+ progressTitle: '执行进度',
+ inspectionMethod: '检验方式',
+ judgmentCriteria: '标准要求',
+ valueType: '值类型',
+ resultText: '结果',
+ requiredText: '必检',
+ inspectionResultPending: '待检',
+ inspectionResultPass: '通过',
+ inspectionResultFail: '不通过',
+ textInput: '输入值',
+ inputPlaceholder: '请输入',
+ remark: '备注',
+ images: '图片',
+ maxUploadCount: '最多上传 9 张图片',
+ selectAllDecisionError: '请为所有待检项选择结果',
+ noResultData: '暂无点检项数据',
+ lineFilter: '产线',
+ },
+ moldWorkOrder: {
+ moduleName: '点检记录',
+ subTitle: '模具管理点检记录查询',
+ detailTitle: '点检记录详情',
+ basicInfo: '基础信息',
+ resultListTitle: '检验结果',
+ planNo: '工单编号',
+ moldName: '模具名称',
+ planType: '任务类型',
+ planTypeInspect: '点检',
+ planTypeMaintain: '保养',
+ configName: '任务配置',
+ jobStatus: '作业状态',
+ jobStatusPending: '待处理',
+ jobStatusProcessing: '处理中',
+ jobStatusCompleted: '已完成',
+ jobStatusTimeout: '已超时',
+ jobStatusCancelled: '已取消',
+ jobResult: '作业结果',
+ jobResultOk: 'OK',
+ jobResultNg: 'NG',
+ operatorName: '操作人',
+ taskTime: '任务时间',
+ taskEndTime: '结束时间',
+ cancelReason: '取消原因',
+ createTime: '创建时间',
+ searchPlaceholder: '请输入工单编号',
+ empty: '暂无点检记录数据',
+ cancelTask: '取消任务',
+ cancelSuccess: '取消成功',
+ cancelFail: '取消失败',
+ placeholderCancelReason: '请输入取消原因',
+ validatorCancelReasonRequired: '取消原因不能为空',
+ inspectionItemName: '检验项名称',
+ inspectionMethod: '检验方式',
+ judgmentCriteria: '判定基准',
+ valueType: '值类型',
+ inspectionResult: '检验结果',
+ inspectionResultPending: '待检',
+ inspectionResultPass: '合格',
+ inspectionResultFail: '不合格',
+ textInput: '输入值',
+ remark: '备注',
+ images: '图片',
+ noResultData: '暂无检验结果数据',
+ loadMore: '加载更多'
+ },
+ mine: {
+ clickLogin: '点击登录',
+ username: '用户名:{name}',
+ profile: '个人信息',
+ feedback: '反馈中心',
+ service: '在线客服',
+ changePassword: '修改密码',
+ logout: '退出登录',
+ editProfile: '编辑资料',
+ faq: '常见问题',
+ about: '关于我们',
+ appSettings: '应用设置'
+ },
+ setting: {
+ language: '系统语言',
+ currentLanguage: '当前语言:{language}',
+ terminalMode: '终端模式',
+ currentTerminal: '当前终端:{terminal}',
+ switchingTerminal: '正在切换终端...',
+ terminalSwitched: '已切换到{terminal}',
+ switchLanguage: '切换语言',
+ checkUpdate: '检查更新',
+ cleanCache: '清理缓存',
+ logout: '退出登录',
+ serverAddress: '服务器地址',
+ serverAddressHint: '请输入当前账号对应的后端接口地址',
+ serverAddressPlaceholder: '请输入后端访问地址',
+ serverAddressRequired: '请输入后端访问地址',
+ serverAddressSaved: '服务器地址已保存,请重新登录',
+ mobile: '手机',
+ scanner: '扫码器',
+ zhCN: '中文',
+ enUS: '英文'
+ },
+ about: {
+ appName: '必硕生管系统',
+ version: '版本信息',
+ email: '官方邮箱',
+ hotline: '服务热线',
+ website: '公司网站'
+ },
+ help: {
+ appUserQuestion: 'APP用户问题',
+ otherQuestion: '其他问题',
+ appFeatureQuestion: 'APP支持的功能业务有哪些?',
+ appFeatureAnswer: '计划开工、生产报工、投料记录、生产记录',
+ reportQuestion: '生产报工如何报工?',
+ reportAnswer: '可以',
+ planQuestion: '计划管理如何进行?',
+ planAnswer: '计划管理',
+ materialQuestion: '投料记录如何进行?',
+ materialAnswer: '投料记录',
+ logoutQuestion: '如何退出登录?',
+ logoutAnswer: '请点击[我的] - [应用设置] - [退出登录]即可退出登录',
+ avatarQuestion: '如何修改用户头像?',
+ avatarAnswer: '请点击[我的] - [选择头像] - [点击提交]即可更换用户头像',
+ passwordQuestion: '如何修改登录密码?',
+ passwordAnswer: '请点击[我的] - [应用设置] - [修改密码]即可修改登录密码'
+ },
+ info: {
+ username: '用户名称',
+ nickname: '昵称',
+ gender: '性别',
+ male: '男',
+ female: '女',
+ phone: '手机号码',
+ email: '邮箱',
+ createdAt: '创建日期'
+ },
+ editInfo: {
+ nickname: '用户昵称',
+ nicknamePlaceholder: '请输入昵称',
+ phone: '手机号码',
+ phonePlaceholder: '请输入手机号码',
+ email: '邮箱',
+ emailPlaceholder: '请输入邮箱',
+ gender: '性别',
+ nicknameRequired: '用户昵称不能为空',
+ phoneRequired: '手机号码不能为空',
+ phoneInvalid: '请输入正确的手机号码',
+ emailRequired: '邮箱地址不能为空',
+ emailInvalid: '请输入正确的邮箱地址'
+ },
+ pwd: {
+ oldPassword: '旧密码',
+ newPassword: '新密码',
+ confirmPassword: '确认密码',
+ oldPasswordPlaceholder: '请输入旧密码',
+ newPasswordPlaceholder: '请输入新密码',
+ confirmPasswordPlaceholder: '请确认新密码',
+ oldPasswordRequired: '旧密码不能为空',
+ newPasswordRequired: '新密码不能为空',
+ passwordLength: '长度在 6 到 20 个字符',
+ confirmPasswordRequired: '确认密码不能为空',
+ passwordNotMatch: '两次输入的密码不一致'
+ },
+ avatar: {
+ chooseAvatar: '选择头像'
+ },
+ materialCategory: {
+ moduleName: '产品物料分类',
+ subTitle: '产品物料分类管理',
+ detailTitle: '分类详情',
+ basicInfo: '基础信息',
+ code: '分类编码',
+ name: '分类名称',
+ parentName: '上级分类',
+ rootCategory: '无(顶级分类)',
+ sort: '排序',
+ status: '状态',
+ statusEnable: '启用',
+ statusDisable: '禁用',
+ createTime: '创建时间',
+ searchPlaceholder: '请输入分类编码/名称',
+ createTitle: '新增分类',
+ editTitle: '编辑分类',
+ empty: '暂无分类数据',
+ loadEditFailed: '加载编辑数据失败',
+ noId: '缺少分类ID',
+ loadFailed: '加载分类详情失败',
+ placeholderCode: '请输入分类编码',
+ placeholderName: '请输入分类名称',
+ placeholderParent: '请选择上级分类',
+ placeholderSort: '请输入排序',
+ placeholderStatus: '请选择状态',
+ validatorCodeRequired: '分类编码不能为空',
+ validatorNameRequired: '分类名称不能为空',
+ validatorSortRequired: '排序不能为空',
+ validatorStatusRequired: '状态不能为空',
+ confirmDeleteContent: '确认删除分类【{name}】吗?'
+ },
+ materialInfo: {
+ moduleName: '产品物料信息',
+ subTitle: '产品物料信息管理',
+ detailTitle: '物料详情',
+ basicInfo: '基础信息',
+ barCode: '物料条码',
+ name: '物料名称',
+ category: '物料小类',
+ unit: '库存单位',
+ standard: '规格',
+ expiryDay: '保质期天数',
+ status: '状态',
+ statusEnable: '启用',
+ statusDisable: '禁用',
+ remark: '备注',
+ createTime: '创建时间',
+ autoCode: '自动生成',
+ searchPlaceholder: '请输入物料名称/条码',
+ createTitle: '新增物料',
+ editTitle: '编辑物料',
+ empty: '暂无物料数据',
+ loadEditFailed: '加载编辑数据失败',
+ noId: '缺少物料ID',
+ loadFailed: '加载物料详情失败',
+ placeholderBarCode: '请输入物料条码',
+ placeholderName: '请输入物料名称',
+ placeholderCategory: '请选择物料分类',
+ placeholderUnit: '请选择单位',
+ placeholderStandard: '请输入规格',
+ placeholderExpiryDay: '请输入保质期天数',
+ placeholderStatus: '请选择状态',
+ placeholderRemark: '请输入备注',
+ validatorBarCodeRequired: '物料条码不能为空',
+ validatorNameRequired: '物料名称不能为空',
+ validatorCategoryRequired: '物料分类不能为空',
+ validatorUnitRequired: '单位不能为空',
+ confirmDeleteContent: '确认删除物料【{name}】吗?'
+ },
+ productBom: {
+ moduleName: '产品BOM',
+ subTitle: '产品BOM管理',
+ detailTitle: 'BOM详情',
+ basicInfo: '基础信息',
+ code: 'BOM编码',
+ version: '版本',
+ product: '产品',
+ unit: '库存单位',
+ yieldRate: '良品率',
+ isEnable: '是否启用',
+ enableYes: '是',
+ enableNo: '否',
+ remark: '备注',
+ createTime: '创建时间',
+ searchPlaceholder: '请输入BOM编码',
+ createTitle: '新增BOM',
+ editTitle: '编辑BOM',
+ empty: '暂无BOM数据',
+ loadEditFailed: '加载编辑数据失败',
+ noId: '缺少BOM ID',
+ loadFailed: '加载BOM详情失败',
+ placeholderCode: '请输入BOM编码',
+ placeholderVersion: '请输入版本',
+ placeholderProduct: '请选择产品',
+ placeholderUnit: '请选择单位',
+ placeholderYieldRate: '请输入良品率',
+ placeholderEnable: '请选择是否启用',
+ placeholderRemark: '请输入备注',
+ validatorCodeRequired: 'BOM编码不能为空',
+ validatorVersionRequired: '版本不能为空',
+ validatorProductRequired: '产品不能为空',
+ validatorUnitRequired: '单位不能为空',
+ validatorEnableRequired: '是否启用不能为空',
+ confirmDeleteContent: '确认删除BOM【{code}】吗?',
+ detailTab: 'BOM明细',
+ detailUsageNumber: '用量',
+ detailUnit: '单位',
+ detailLossRate: '损耗率',
+ detailRemark: '备注',
+ detailEmpty: '暂无BOM明细数据'
+ },
+ equipmentCategory: {
+ moduleName: '设备分类',
+ subTitle: '设备分类管理',
+ detailTitle: '设备分类详情',
+ basicInfo: '基础信息',
+ code: '分类编码',
+ name: '分类名称',
+ parentName: '上级分类',
+ rootCategory: '无(顶级分类)',
+ sort: '排序',
+ remark: '备注',
+ createTime: '创建时间',
+ searchPlaceholder: '请输入分类编码/名称',
+ createTitle: '新增设备分类',
+ editTitle: '编辑设备分类',
+ empty: '暂无设备分类数据',
+ loadEditFailed: '加载编辑数据失败',
+ noId: '缺少分类ID',
+ loadFailed: '加载分类详情失败',
+ placeholderCode: '请输入分类编码',
+ placeholderName: '请输入分类名称',
+ placeholderParent: '请选择上级分类',
+ placeholderSort: '请输入排序',
+ placeholderRemark: '请输入备注',
+ validatorCodeRequired: '分类编码不能为空',
+ validatorNameRequired: '分类名称不能为空',
+ confirmDeleteContent: '确认删除分类【{name}】吗?'
+ },
+ equipmentLedger: {
+ moduleName: '设备台账',
+ subTitle: '设备台账管理',
+ detailTitle: '设备台账详情',
+ basicInfo: '基础信息',
+ deviceCode: '设备编码',
+ deviceName: '设备名称',
+ deviceType: '设备类型',
+ deviceStatus: '设备状态',
+ lineFilter: '产线',
+ allFilter: '\u5168\u90e8\u7b5b\u9009',
+ categoryStatus: '\u5206\u7c7b\u72b6\u6001',
+ dateFilter: '\u65e5\u671f\u7b5b\u9009',
+ deviceBrand: '\u8bbe\u5907\u54c1\u724c',
+ sn: '\u5e8f\u5217\u53f7',
+ scanUnrecognized: '未识别二维码内容',
+ scanTypeMismatch: '二维码类型不匹配',
+ scanFailed: '扫码失败',
+ deviceSpec: '设备规格',
+ isScheduled: '是否排产',
+ ratedCapacity: '额定产能',
+ dailyAverageValue: '每日报工平均值',
+ dataCollectionCapacity: '数据采集产能',
+ productionDate: '生产日期',
+ outgoingTime: '出厂日期',
+ factoryEntryDate: '入厂日期',
+ deviceLocation: '设备位置',
+ deviceManagerName: '设备负责人',
+ workshop: '所属车间',
+ remark: '备注',
+ creatorName: '创建人',
+ createTime: '创建时间',
+ autoCode: '自动生成',
+ yes: '是',
+ no: '否',
+ searchPlaceholder: '请输入设备编码/名称',
+ createTitle: '新增设备台账',
+ editTitle: '编辑设备台账',
+ empty: '暂无设备台账数据',
+ loadEditFailed: '加载编辑数据失败',
+ noId: '缺少设备ID',
+ loadFailed: '加载设备详情失败',
+ placeholderDeviceCode: '请输入设备编码',
+ placeholderDeviceName: '请输入设备名称',
+ placeholderDeviceBrand: '\u8bf7\u8f93\u5165\u8bbe\u5907\u54c1\u724c',
+ placeholderSn: '\u8bf7\u8f93\u5165\u5e8f\u5217\u53f7',
+ placeholderDeviceType: '请选择设备类型',
+ placeholderDeviceSpec: '请输入设备规格',
+ placeholderRatedCapacity: '请输入额定产能',
+ placeholderDailyAverageValue: '请输入每日报工平均值',
+ placeholderDataCollectionCapacity: '请输入数据采集产能',
+ placeholderProductionDate: '请选择生产日期',
+ placeholderOutgoingTime: '请选择出厂日期',
+ placeholderFactoryEntryDate: '请选择入厂日期',
+ placeholderDeviceLocation: '请输入设备位置',
+ placeholderRemark: '请输入备注',
+ validatorDeviceCodeRequired: '设备编码不能为空',
+ validatorDeviceNameRequired: '设备名称不能为空',
+ validatorDeviceTypeRequired: '设备类型不能为空',
+ validatorProductionDateRequired: '生产日期不能为空',
+ validatorOutgoingTimeRequired: '出厂日期不能为空',
+ validatorFactoryEntryDateRequired: '入厂日期不能为空',
+ validatorRatedCapacityRequired: '额定产能不能为空',
+ validatorDailyAverageValueRequired: '每日报工平均值不能为空',
+ validatorDataCollectionCapacityRequired: '数据采集产能不能为空',
+ confirmDeleteContent: '确认删除设备【{name}】吗?',
+ checkHistory: '点检记录',
+ maintainHistory: '保养记录',
+ repairHistory: '报修记录',
+ operator: '操作人',
+ inspectionMethod: '点检方式',
+ criteria: '判定标准',
+ inspectionTime: '点检时间',
+ maintainMethod: '保养方式',
+ maintainTime: '保养时间',
+ repairName: '维修单名称',
+ faultPhenomenon: '故障现象',
+ faultDescription: '故障描述',
+ replacementParts: '更换配件',
+ repairContent: '维修内容',
+ finishDate: '完成日期',
+ faultImages: '故障图片',
+ repairedImages: '维修后图片',
+ noHistoryData: '暂无历史记录',
+ resultPending: '待处理',
+ resultPass: '合格',
+ resultFail: '不合格',
+ repairPending: '待处理',
+ repairProcessing: '处理中',
+ repairCompleted: '已完成',
+ repairAbnormal: '异常'
+ },
+ equipmentMaintenance: {
+ moduleName: '设备维修',
+ createTitle: '新增设备维修',
+ editTitle: '编辑设备维修',
+ detailTitle: '设备维修详情',
+ repairTitle: '维修处理',
+ basicInfo: '基本信息',
+ repairObject: '维修对象',
+ repairCode: '维修单编号',
+ repairName: '维修单名称',
+ requireDate: '报修日期',
+ acceptedBy: '维修人员',
+ confirmBy: '验收人员',
+ machineryTypeId: '设备类型',
+ machineryTypeDevice: '设备',
+ machineryTypeKeyItem: '关键件',
+ device: '设备',
+ component: '关键件',
+ faultLevel: '故障等级',
+ isShutdown: '是否停机',
+ status: '单据状态',
+ faultInfo: '故障信息',
+ faultPhenomenon: '故障现象',
+ faultDescription: '故障描述',
+ faultImages: '故障图片',
+ repairResultSection: '处理结果',
+ repairResult: '维修结果',
+ finishDate: '完成日期',
+ confirmDate: '验收日期',
+ downtimeDuration: '停机时长',
+ faultReason: '故障原因',
+ handlingMeasures: '处理措施',
+ replacementParts: '更换配件',
+ repairContent: '维修内容',
+ repairedImages: '维修后图片',
+ remark: '备注',
+ autoCode: '自动生成',
+ deviceLabel: '设备',
+ reportTimeLabel: '报修时间',
+ searchPlaceholder: '请输入单号/设备编码/设备名称',
+ empty: '暂无维修记录',
+ statusPending: '待维修',
+ statusPassed: '通过',
+ statusRejected: '不通过',
+ placeholderRepairCode: '请输入维修单编号',
+ placeholderRepairName: '请输入维修单名称',
+ placeholderRequireDate: '请选择报修日期',
+ placeholderAcceptedBy: '请选择维修人员',
+ placeholderConfirmBy: '请选择验收人员',
+ placeholderDevice: '请选择设备',
+ placeholderComponent: '请选择关键件',
+ placeholderFaultPhenomenon: '请输入故障现象',
+ placeholderFaultDescription: '请输入故障描述',
+ placeholderFinishDate: '请选择完成日期',
+ placeholderConfirmDate: '请选择验收日期',
+ placeholderDowntimeDuration: '请输入停机时长,单位小时',
+ placeholderFaultReason: '请输入故障原因',
+ placeholderHandlingMeasures: '请输入处理措施',
+ placeholderReplacementParts: '请输入更换配件',
+ placeholderRepairContent: '请输入维修内容',
+ placeholderRemark: '请输入备注',
+ loadDetailFailed: '加载详情失败',
+ scanUnrecognized: '未识别到内容',
+ scanEquipmentRequired: '请扫描设备二维码',
+ deviceNotFound: '未找到对应设备',
+ scanFailed: '扫码失败',
+ maxUploadCount: '最多上传 9 张图片',
+ saving: '保存中',
+ saveSuccess: '保存成功',
+ submitSuccess: '提交成功',
+ submitFailed: '提交失败',
+ noId: '缺少维修单 ID',
+ confirmDeleteContent: '确定删除维修单“{code}”吗?',
+ validatorRepairCodeRequired: '请输入维修单编号',
+ validatorRepairNameRequired: '请输入维修单名称',
+ validatorDeviceRequired: '请选择设备',
+ validatorComponentRequired: '请选择关键件',
+ validatorRequireDateRequired: '请选择报修日期',
+ validatorFaultLevelRequired: '请选择故障等级',
+ validatorIsShutdownRequired: '请选择是否停机',
+ validatorFaultPhenomenonRequired: '请输入故障现象',
+ lineFilter: '产线',
+ validatorRepairStatusRequired: '请选择维修结果',
+ validatorFinishDateRequired: '请选择完成日期',
+ validatorConfirmDateRequired: '请选择验收日期'
+ },
+ criticalComponent: {
+ moduleName: '设备关键件',
+ subTitle: '设备关键件管理',
+ detailTitle: '设备关键件详情',
+ basicInfo: '基础信息',
+ code: '关键件编码',
+ name: '关键件名称',
+ deviceSpec: '规格',
+ description: '描述',
+ count: '数量',
+ remark: '备注',
+ creatorName: '创建人',
+ createTime: '创建时间',
+ autoCode: '自动生成',
+ searchPlaceholder: '请输入编码/名称',
+ createTitle: '新增设备关键件',
+ editTitle: '编辑设备关键件',
+ empty: '暂无设备关键件数据',
+ loadEditFailed: '加载编辑数据失败',
+ noId: '缺少关键件ID',
+ loadFailed: '加载关键件详情失败',
+ placeholderCode: '请输入关键件编码',
+ placeholderName: '请输入关键件名称',
+ placeholderDeviceSpec: '请输入规格',
+ placeholderDescription: '请输入描述',
+ placeholderCount: '请输入数量',
+ placeholderRemark: '请输入备注',
+ validatorCodeRequired: '关键件编码不能为空',
+ validatorNameRequired: '关键件名称不能为空',
+ confirmDeleteContent: '确认删除关键件【{name}】吗?'
+ },
+ moldLedger: {
+ moduleName: '模具台账',
+ subTitle: '模具台账管理',
+ detailTitle: '模具详情',
+ basicInfo: '模具基本信息',
+ moldPlaceholder: '模具',
+ moldName: '模具名称',
+ product: '产品',
+ moldCode: '模具编号',
+ status: '状态',
+ versionSpec: '版本/规格',
+ cavityCount: '模穴数',
+ currentDevice: '当前设备',
+ useCount: '使用次数',
+ expand: '展开',
+ collapse: '收起',
+ tabChildMold: '子模具',
+ tabInspection: '点检记录',
+ tabRepair: '维修记录',
+ tabMaintenance: '保养记录',
+ tabInstall: '安装记录',
+ installLocation: '安装位置',
+ material: '材质',
+ quantity: '数量',
+ lastReplace: '上次更换',
+ usedDays: '已使用{days}天',
+ remark: '备注',
+ noChildMold: '暂无子模具数据',
+ noInspection: '暂无点检记录',
+ noRepair: '暂无维修记录',
+ noMaintenance: '暂无保养记录',
+ noInstall: '暂无安装记录',
+ inspectionMethod: '点检方式',
+ criteria: '判定标准',
+ inspectionTime: '点检时间',
+ maintainMethod: '保养方式',
+ maintainTime: '保养时间',
+ repairProject: '维修项目',
+ projectContent: '项目内容',
+ finishTime: '完成时间',
+ operateMold: '模具',
+ operator: '操作人',
+ time: '时间',
+ upperMold: '上模',
+ lowerMold: '下模',
+ missingBrandId: '缺少模具组ID',
+ detailLoadFailed: '详情加载失败',
+ childLoadFailed: '子模具加载失败',
+ inspectionLoadFailed: '点检记录加载失败',
+ repairLoadFailed: '维修记录加载失败',
+ maintainLoadFailed: '保养记录加载失败',
+ installLoadFailed: '安装记录加载失败',
+ resultPending: '待处理',
+ resultPass: '合格',
+ resultWarning: '警告',
+ repairCompleted: '完成',
+ repairAbnormal: '异常',
+ repairProcessing: '处理中',
+ searchPlaceholder: '请输入模具组编码或名称',
+ allStatus: '全部',
+ selectMoldStatus: '选择模具状态',
+ clear: '清空',
+ name: '名称',
+ createTime: '创建时间',
+ confirmDeleteContent: '确认删除模具组"{name}"吗?',
+ empty: '暂无模具台账数据',
+ scanUnrecognized: '无法识别二维码',
+ scanFormatError: '二维码格式不正确',
+ scanFailed: '扫描失败',
+ noIdView: '缺少ID,无法查看详情',
+ noIdDelete: '缺少ID,无法删除'
+ },
+ moldCheck: {
+ moduleName: '模具点检',
+ addTitle: '新增点检',
+ detailTitle: '点检详情',
+ searchPlaceholder: '请输入点检单号',
+ empty: '暂无点检记录',
+ add: '新增',
+ moldName: '模具名称',
+ moldCode: '模具编号',
+ product: '产品',
+ status: '状态',
+ taskType: '任务类型',
+ taskTypeInspect: '点检',
+ taskTypeMaintain: '保养',
+ planNo: '点检单号',
+ taskTime: '执行时间',
+ template: '配置模板',
+ operator: '操作员',
+ jobStatusPending: '待执行',
+ jobStatusProcessing: '执行中',
+ jobStatusCompleted: '已完成',
+ jobStatusTimeout: '已超时',
+ jobStatusCancelled: '已取消',
+ jobResultOk: '通过',
+ jobResultNg: '不通过',
+ progressTitle: '进度',
+ noResultData: '暂无点检结果数据',
+ requiredText: '必检',
+ inspectionMethod: '点检方式',
+ judgmentCriteria: '判定标准',
+ textInput: '输入值',
+ inputPlaceholder: '请输入',
+ images: '图片',
+ remark: '备注',
+ resultText: '结果',
+ inspectionResultPass: '通过',
+ inspectionResultFail: '不通过',
+ inspectionResultPending: '待判定',
+ maxUploadCount: '最多上传3张图片',
+ selectAllDecisionError: '请选择所有点检项的判定结果',
+ currentMoldInfo: '模具信息',
+ moldGroupCode: '模具组编码',
+ moldGroupName: '模具组名称',
+ cavityCount: '模穴数',
+ moldSize: '模具尺寸',
+ currentDevice: '当前设备',
+ selectMold: '选择模具',
+ reSelectMold: '重新选择模具',
+ selectMoldError: '请选择模具',
+ searchMold: '请输入模具名称',
+ noMoldInfo: '请选择模具',
+ noMoldData: '暂无可选模具',
+ taskName: '任务名称',
+ taskInfo: '任务信息',
+ placeholderTaskName: '请输入任务名称',
+ templateSelection: '模板/任务选择',
+ selectTemplate: '请选择模板',
+ selectTemplateError: '请选择点检模板',
+ noItems: '请先选择点检模板',
+ noTemplate: '暂无模板',
+ resultListTitle: '检验结果',
+ editResult: '编辑',
+ cancelEdit: '取消编辑',
+ submit: '提交点检',
+ submitSuccess: '点检提交成功',
+ submitFailed: '点检提交失败',
+ reInspect: '再次点检'
+ },
+ moldMaintain: {
+ moduleName: '模具保养',
+ addTitle: '新增保养',
+ detailTitle: '保养详情',
+ searchPlaceholder: '请输入保养单号',
+ empty: '暂无保养记录',
+ add: '新增',
+ moldName: '模具名称',
+ moldCode: '模具编号',
+ product: '产品',
+ status: '状态',
+ taskType: '任务类型',
+ taskTypeInspect: '点检',
+ taskTypeMaintain: '保养',
+ planNo: '保养单号',
+ taskTime: '执行时间',
+ template: '配置模板',
+ operator: '操作员',
+ jobResultOk: '通过',
+ jobResultNg: '不通过',
+ progressTitle: '进度',
+ noResultData: '暂无保养结果数据',
+ requiredText: '必检',
+ inspectionMethod: '保养方式',
+ judgmentCriteria: '判定基准',
+ textInput: '输入值',
+ inputPlaceholder: '请输入',
+ images: '图片',
+ remark: '备注',
+ resultText: '结果',
+ inspectionResultPass: '通过',
+ inspectionResultFail: '不通过',
+ inspectionResultPending: '待判定',
+ maxUploadCount: '最多上传3张图片',
+ selectAllDecisionError: '请选择所有保养项的判定结果',
+ currentMoldInfo: '模具信息',
+ moldGroupCode: '模具组编码',
+ moldGroupName: '模具组名称',
+ cavityCount: '模穴数',
+ moldSize: '模具尺寸',
+ currentDevice: '当前设备',
+ selectMold: '选择模具',
+ reSelectMold: '重新选择模具',
+ selectMoldError: '请选择模具',
+ searchMold: '请输入模具名称',
+ noMoldInfo: '请选择模具',
+ noMoldData: '暂无可选模具',
+ taskName: '任务名称',
+ taskInfo: '任务信息',
+ placeholderTaskName: '请输入任务名称',
+ templateSelection: '模板/任务选择',
+ selectTemplate: '请选择模板',
+ selectTemplateError: '请选择保养模板',
+ noItems: '请先选择保养模板',
+ noTemplate: '暂无模板',
+ resultListTitle: '检验结果',
+ editResult: '编辑',
+ cancelEdit: '取消编辑',
+ submit: '提交保养',
+ submitSuccess: '保养提交成功',
+ submitFailed: '保养提交失败',
+ reInspect: '再次保养'
+ },
+ moldPressureNet: {
+ moduleName: '更换压网',
+ recordTitle: '压网更换记录',
+ recordDesc: '请选择模具组和子模,确认更换时间',
+ history: '历史数据',
+ historyTitle: '压网历史',
+ moldGroup: '模具组',
+ selectMoldGroup: '选择模具组',
+ searchMoldGroup: '请输入模具组名称',
+ noMoldGroup: '暂无模具组',
+ moldGroupName: '模具组名称',
+ moldGroupCode: '模具组编号',
+ product: '产品',
+ subMold: '子模',
+ selectSubMold: '选择子模',
+ reSelectMoldGroup: '重新选择模具组',
+ reSelectSubMold: '重新选择子模',
+ subMoldCode: '子模编码',
+ subMoldName: '子模名称',
+ searchSubMold: '搜索子模名称/编号',
+ noSubMold: '暂无子模',
+ replaceInfo: '更换信息',
+ replaceTime: '更换时间',
+ pressureNetTime: '压网时间',
+ selectReplaceTime: '请选择更换时间',
+ operator: '操作人',
+ selectOperator: '请选择操作人',
+ noOperator: '暂无操作人',
+ remark: '备注',
+ remarkPlaceholder: '请输入更换原因或备注',
+ confirmReplace: '确认更换',
+ selectMoldGroupError: '请选择模具组',
+ selectSubMoldError: '请选择子模',
+ selectedCount: '已选{count}个子模',
+ selectReplaceTimeError: '请选择更换时间',
+ submitSuccess: '压网更换保存成功',
+ submitFailed: '压网更换保存失败',
+ historyMoldIdPlaceholder: '输入子模ID筛选,不填查全部',
+ searchBrandName: '模具组名称',
+ selectDate: '选择日期',
+ createTime: '创建时间',
+ noHistory: '暂无压网历史记录'
+ },
+ moldRepair: {
+ moduleName: '模具维修',
+ createTitle: '新增模具维修',
+ editTitle: '编辑模具维修',
+ detailTitle: '模具维修详情',
+ repairTitle: '维修处理',
+ basicInfo: '基本信息',
+ repairObject: '维修对象',
+ repairCode: '维修单编号',
+ repairName: '维修单名称',
+ requireDate: '报修日期',
+ acceptedBy: '维修人员',
+ confirmBy: '验收人员',
+ mold: '模具',
+ moldCode: '模具编码',
+ moldName: '模具名称',
+ specModel: '规格型号',
+ brand: '品牌',
+ faultLevel: '故障等级',
+ isShutdown: '是否停机',
+ status: '单据状态',
+ faultInfo: '故障信息',
+ faultPhenomenon: '故障现象',
+ faultDescription: '故障描述',
+ faultImages: '故障图片',
+ repairResultSection: '处理结果',
+ repairResult: '维修结果',
+ finishDate: '完成日期',
+ confirmDate: '验收日期',
+ downtimeDuration: '停机时长',
+ faultReason: '故障原因',
+ handlingMeasures: '处理措施',
+ replacementParts: '更换配件',
+ repairContent: '维修内容',
+ repairedImages: '维修后图片',
+ remark: '备注',
+ autoCode: '自动生成',
+ moldLabel: '模具',
+ reportTimeLabel: '报修时间',
+ searchPlaceholder: '请输入单号或模具编码',
+ empty: '暂无维修记录',
+ statusPending: '待维修',
+ statusPassed: '通过',
+ statusRejected: '不通过',
+ orderStatusPending: '待处理',
+ orderStatusDone: '已完成',
+ placeholderRepairCode: '请输入维修单编号',
+ placeholderRepairName: '请输入维修单名称',
+ placeholderRequireDate: '请选择报修日期',
+ placeholderAcceptedBy: '请选择维修人员',
+ placeholderConfirmBy: '请选择验收人员',
+ placeholderUserSearch: '请输入姓名搜索',
+ placeholderMold: '请选择模具',
+ placeholderMoldNameAuto: '自动带出',
+ placeholderMoldCodeAuto: '自动带出',
+ placeholderFaultPhenomenon: '请输入故障现象',
+ placeholderFaultDescription: '请输入故障描述',
+ placeholderFinishDate: '请选择完成日期',
+ placeholderConfirmDate: '请选择验收日期',
+ placeholderDowntimeDuration: '请输入停机时长,单位小时',
+ placeholderFaultReason: '请输入故障原因',
+ placeholderHandlingMeasures: '请输入处理措施',
+ placeholderReplacementParts: '请输入更换配件',
+ placeholderRepairContent: '请输入维修内容',
+ placeholderRemark: '请输入备注',
+ loadDetailFailed: '加载详情失败',
+ scanUnrecognized: '未识别到内容',
+ scanMoldRequired: '请扫描模具二维码',
+ moldNotFound: '未找到对应模具',
+ scanFailed: '扫码失败',
+ maxUploadCount: '最多上传 9 张图片',
+ noUserData: '暂无人员数据',
+ saving: '保存中',
+ saveSuccess: '保存成功',
+ submitSuccess: '提交成功',
+ submitFailed: '提交失败',
+ noId: '缺少维修单 ID',
+ confirmDeleteContent: '确定删除维修单"{code}"吗?',
+ validatorRepairCodeRequired: '请输入维修单编号',
+ validatorRepairNameRequired: '请输入维修单名称',
+ validatorMoldRequired: '请选择模具',
+ validatorRequireDateRequired: '请选择报修日期',
+ validatorFaultLevelRequired: '请选择故障等级',
+ validatorIsShutdownRequired: '请选择是否停机',
+ validatorFaultPhenomenonRequired: '请输入故障现象',
+ validatorUserRequired: '请选择人员',
+ validatorRepairStatusRequired: '请选择维修结果',
+ validatorFinishDateRequired: '请选择完成日期',
+ validatorConfirmDateRequired: '请选择验收日期'
+ },
+ productInbound: {
+ moduleName: '产品入库',
+ createTitle: '新增产品入库',
+ detailTitle: '产品入库详情',
+ selectProductTitle: '选择产品',
+ selectTaskTitle: '选择任务单',
+ selectTaskProductTitle: '选择任务产品',
+ selectPalletTitle: '选择托盘',
+ createPalletTitle: '新增托盘',
+ all: '全部',
+ inboundStatus: '入库状态',
+ reset: '重置',
+ clear: '清空',
+ loading: '加载中...',
+ loadingMore: '加载更多...',
+ noMoreData: '没有更多数据',
+ confirm: '确认',
+ cancel: '取消',
+ back: '返回',
+ submit: '确定',
+ submitting: '提交中...',
+ tip: '提示',
+ choose: '请选择',
+ yes: '是',
+ no: '否',
+ statusPending: '待入库',
+ statusAuditing: '待审核',
+ statusStored: '已入库',
+ statusRejected: '已驳回',
+ searchDocumentPlaceholder: '请输入入库单号',
+ searchProductPlaceholder: '搜索产品名称/编码/规格',
+ searchTaskPlaceholder: '搜索任务单号',
+ searchTaskProductPlaceholder: '搜索产品名称/编码',
+ searchPalletPlaceholder: '搜索托盘码',
+ productInfo: '产品信息',
+ inboundInfo: '入库信息',
+ inboundTime: '入库时间',
+ selectInboundTime: '请选择入库时间',
+ operator: '经办人',
+ selectOperator: '请选择经办人',
+ inboundQuantity: '入库数量',
+ reviewer: '审核人',
+ auditor: '审核人',
+ documentNo: '单据编号',
+ inboundType: '入库类型',
+ remark: '备注',
+ remarkPlaceholder: '请输入备注',
+ attachment: '附件',
+ chooseFile: '选择文件',
+ itemList: '入库清单',
+ addProduct: '添加产品',
+ product: '产品',
+ pallet: '托盘',
+ packageCount: '包数',
+ pieceCount: '个数',
+ inboundPackageCount: '入库包数',
+ inboundPieceCount: '入库个数',
+ palletQuantity: '托盘数量',
+ taskOrder: '任务单',
+ taskProduct: '任务产品',
+ emptyAddProduct: '请添加产品',
+ emptyInboundList: '暂无产品入库单',
+ emptyItemList: '暂无入库清单',
+ confirmInbound: '确认入库',
+ inboundSuccess: '入库成功',
+ saveFailed: '保存失败',
+ loadFailed: '加载失败',
+ detailLoadFailed: '详情加载失败',
+ operationFailed: '操作失败',
+ submitAudit: '提交审核',
+ auditPass: '审核通过',
+ auditReject: '审核驳回',
+ auditPassSuccess: '审核通过',
+ auditRejectSuccess: '已驳回',
+ submitAuditSuccess: '提交审核成功',
+ submitFailed: '提交失败',
+ selectAuditor: '请选择审核人',
+ selectInboundStatus: '选择入库状态',
+ confirmAuditPass: '确认审核通过该产品入库单?',
+ confirmAuditReject: '确认驳回该产品入库单?',
+ noDetailId: '暂无详情ID',
+ completeProductPalletInfo: '请完善产品和托盘信息',
+ addProductFirst: '请先添加产品',
+ taskInfo: '任务信息',
+ relatedTask: '关联任务单',
+ selectTask: '请选择任务单',
+ selectTaskProduct: '请选择任务产品',
+ selectProduct: '请选择产品',
+ selectPallet: '请选择托盘',
+ selectPalletFirst: '请先选择托盘',
+ selectTaskFirst: '请先选择任务单',
+ selectProductFirst: '请先选择产品',
+ emptyTaskProducts: '当前任务单暂无产品',
+ completePalletInfo: '请完善托盘仓库/库位/包数',
+ productAdded: '已添加产品',
+ taskProductLoadFailed: '任务产品加载失败',
+ workOrderNo: '工单号',
+ code: '编码',
+ packagingScheme: '包装方案',
+ palletPackageQuantity: '每托包数',
+ packageQuantity: '每包个数',
+ selectedPalletCount: '已选择 {count} 个托盘',
+ selectedCount: '已选 {count} 个',
+ packageUnit: '{count} 包',
+ pieceUnit: '{count} 个',
+ warehouse: '仓库',
+ area: '库区',
+ location: '库位',
+ deliveryDate: '交付日期',
+ emptyTask: '暂无任务单',
+ emptyProduct: '暂无产品数据',
+ emptyTaskProduct: '暂无任务产品',
+ emptyPallet: '暂无托盘',
+ spec: '规格',
+ unit: '单位',
+ palletCode: '托盘码',
+ palletType: '托盘类型',
+ palletStatus: '托盘状态',
+ autoCode: '自动编码',
+ length: '长',
+ width: '宽',
+ height: '高',
+ productCount: '包数',
+ ratedLoadWeight: '额定载重',
+ enterPalletCode: '请输入托盘码',
+ selectPalletType: '请选择托盘类型',
+ selectPalletStatus: '请选择托盘状态',
+ enterPackageCount: '请输入包数',
+ selectWarehouse: '请选择仓库',
+ selectArea: '请选择库区',
+ selectUnit: '请选择单位',
+ selectWarehouseFirst: '请先选择仓库',
+ emptyArea: '暂无库区',
+ enterRatedLoadWeight: '请输入额定载重',
+ createSuccess: '新增成功',
+ createPalletFailed: '新增托盘失败'
+ },
+ productCheck: {
+ moduleName: '产品盘点执行',
+ createTitle: '新增产品盘点',
+ executeTitle: '执行盘点',
+ detailTitle: '\u4ea7\u54c1\u76d8\u70b9\u8be6\u60c5',
+ selectProductTitle: '选择产品',
+ selectItemTitle: '选择盘点项',
+ selectWarehouseTitle: '选择仓库',
+ selectAreaTitle: '选择库区',
+ all: '全部',
+ reset: '重置',
+ clear: '清空',
+ loading: '加载中...',
+ loadingMore: '加载更多...',
+ noMoreData: '没有更多数据',
+ confirm: '确认',
+ cancel: '取消',
+ submit: '确定',
+ submitting: '提交中...',
+ tip: '提示',
+ choose: '请选择',
+ delete: '删除',
+ save: '保存',
+ statusDraft: '待提交',
+ statusAuditing: '待审核',
+ statusApproved: '已审核',
+ statusRejected: '已驳回',
+ searchDocumentPlaceholder: '请输入盘点单号',
+ searchProductPlaceholder: '搜索产品名称/编码/规格',
+ searchWarehousePlaceholder: '搜索仓库名称',
+ searchAreaPlaceholder: '搜索库区名称/编码',
+ searchItemPlaceholder: '搜索产品/仓库/库区',
+ productInfo: '产品信息',
+ checkInfo: '盘点信息',
+ checkTime: '盘点时间',
+ selectCheckTime: '请选择盘点时间',
+ sourceType: '生成来源',
+ sourceTypeStock: '按库存',
+ sourceTypeProduct: '按产品',
+ selectWarehouse: '请选择仓库',
+ selectWarehouseFirst: '请先选择仓库',
+ selectArea: '请选择库区',
+ warehouse: '仓库',
+ area: '库区',
+ warehouseAddress: '地址',
+ principal: '负责人',
+ checkStatus: '盘点状态',
+ checked: '已盘点',
+ unchecked: '未盘点',
+ creator: '创建人',
+ reviewer: '审核人',
+ auditor: '审核人',
+ documentNo: '盘点单号',
+ remark: '备注',
+ remarkPlaceholder: '请输入备注',
+ productAndItems: '产品与盘点项',
+ selectProduct: '选择产品',
+ product: '产品',
+ checkItems: '盘点项',
+ selectAll: '全选',
+ selectedCount: '已选 {count} 个',
+ selectedItemCount: '已选 {count} 项',
+ selectCheckItems: '请选择盘点项',
+ stockCount: '账面数量',
+ code: '编码',
+ spec: '规格',
+ unit: '单位',
+ difference: '差异',
+ actualCount: '实盘数量',
+ saveDraft: '保存草稿',
+ finishCheck: '完成盘点',
+ execute: '执行盘点',
+ submitAudit: '提交审核',
+ auditPass: '审核通过',
+ auditReject: '审核驳回',
+ auditPassSuccess: '审核通过',
+ auditRejectSuccess: '已驳回',
+ submitAuditSuccess: '提交审核成功',
+ submitFailed: '提交失败',
+ selectAuditor: '请选择审核人',
+ selectStatus: '选择盘点状态',
+ confirmAuditPass: '确认审核通过该产品盘点单?',
+ confirmAuditReject: '确认驳回该产品盘点单?',
+ confirmDelete: '确认删除该产品盘点单?',
+ deleteSuccess: '删除成功',
+ operationFailed: '操作失败',
+ loadFailed: '加载失败',
+ detailLoadFailed: '详情加载失败',
+ emptyList: '暂无产品盘点单',
+ emptyProduct: '暂无产品数据',
+ emptyWarehouse: '暂无仓库',
+ emptyArea: '暂无库区',
+ emptyItemList: '暂无盘点项',
+ emptyAddProduct: '请添加产品',
+ selectProductFirst: '请先选择产品',
+ completeCheckItems: '请完善盘点项信息',
+ createSuccess: '创建成功',
+ saveFailed: '保存失败',
+ saveSuccess: '保存成功',
+ checkSuccess: '盘点完成',
+ noDetailId: '暂无详情ID',
+ enterActualCount: '请输入实盘数量',
+ confirmActualCountZero: '{items} 实盘数量为 0,确认继续?'
+ },
+ productOutbound: {
+ moduleName: '产品出库',
+ createTitle: '新增产品出库',
+ detailTitle: '产品出库详情',
+ selectProductTitle: '选择产品',
+ selectPalletTitle: '选择托盘',
+ all: '全部',
+ outboundStatus: '出库状态',
+ reset: '重置',
+ clear: '清空',
+ loading: '加载中...',
+ loadingMore: '加载更多...',
+ noMoreData: '没有更多数据',
+ confirm: '确认',
+ cancel: '取消',
+ back: '返回',
+ submit: '确定',
+ submitting: '提交中...',
+ tip: '提示',
+ choose: '请选择',
+ statusPending: '待出库',
+ statusAuditing: '待审核',
+ statusStored: '已出库',
+ statusRejected: '已驳回',
+ searchDocumentPlaceholder: '请输入出库单号',
+ searchProductPlaceholder: '搜索产品名称/编码/规格',
+ searchPalletPlaceholder: '搜索托盘码',
+ productInfo: '产品信息',
+ outboundInfo: '出库信息',
+ outboundTime: '出库时间',
+ selectOutboundTime: '请选择出库时间',
+ operator: '经办人',
+ selectOperator: '请选择经办人',
+ outboundQuantity: '出库数量',
+ reviewer: '审核人',
+ auditor: '审核人',
+ documentNo: '单据编号',
+ outboundType: '出库类型',
+ remark: '备注',
+ remarkPlaceholder: '请输入备注',
+ attachment: '附件',
+ chooseFile: '选择文件',
+ itemList: '出库清单',
+ addProduct: '添加产品',
+ product: '产品',
+ pallet: '托盘',
+ packageCount: '包数',
+ pieceCount: '个数',
+ outboundPackageCount: '出库包数',
+ outboundPieceCount: '出库个数',
+ availablePackageCount: '可用包数',
+ enterOutboundPackageCount: '请输入出库包数',
+ palletQuantity: '托盘数量',
+ emptyAddProduct: '请添加产品',
+ emptyOutboundList: '暂无产品出库单',
+ emptyItemList: '暂无出库清单',
+ confirmOutbound: '确认出库',
+ outboundSuccess: '出库成功',
+ saveFailed: '保存失败',
+ loadFailed: '加载失败',
+ detailLoadFailed: '详情加载失败',
+ operationFailed: '操作失败',
+ submitAudit: '提交审核',
+ auditPass: '审核通过',
+ auditReject: '审核驳回',
+ auditPassSuccess: '审核通过',
+ auditRejectSuccess: '已驳回',
+ submitAuditSuccess: '提交审核成功',
+ submitFailed: '提交失败',
+ selectAuditor: '请选择审核人',
+ selectOutboundStatus: '选择出库状态',
+ confirmAuditPass: '确认审核通过该产品出库单?',
+ confirmAuditReject: '确认驳回该产品出库单?',
+ noDetailId: '暂无详情ID',
+ completeProductPalletInfo: '请完善产品和托盘信息',
+ addProductFirst: '请先添加产品',
+ selectProduct: '请选择产品',
+ selectPallet: '请选择托盘',
+ selectPalletFirst: '请先选择托盘',
+ selectProductFirst: '请先选择产品',
+ completePalletInfo: '请完善托盘仓库/库位/包数',
+ productAdded: '已添加产品',
+ code: '编码',
+ packagingScheme: '包装方案',
+ palletPackageQuantity: '每托包数',
+ packageQuantity: '每包个数',
+ selectedPalletCount: '已选择 {count} 个托盘',
+ selectedCount: '已选 {count} 个',
+ packageUnit: '{count} 包',
+ pieceUnit: '{count} 个',
+ warehouse: '仓库',
+ area: '库区',
+ location: '库位',
+ emptyProduct: '暂无产品数据',
+ emptyPallet: '暂无托盘',
+ spec: '规格',
+ unit: '单位',
+ palletCode: '托盘码',
+ palletType: '托盘类型',
+ palletStatus: '托盘状态',
+ outMode: '出库方式',
+ outModeWholePallet: '整托出库',
+ outModeSplitPallet: '拆托出库'
+ },
+ sparepartInbound: {
+ moduleName: '备件入库',
+ tabPending: '待入库',
+ tabAuditing: '待审核',
+ searchPlaceholder: '搜索入库单号',
+ sparepartInfo: '备件信息',
+ inboundTime: '入库时间',
+ creator: '创建人',
+ quantity: '数量',
+ reviewer: '审核人',
+ approve: '已入库',
+ reject: '驳回',
+ confirmApprove: '确定审核通过该入库单吗?',
+ confirmReject: '确定驳回该入库单吗?',
+ approveSuccess: '审核通过',
+ rejectSuccess: '已驳回',
+ deleteSuccess: '删除成功',
+ empty: '暂无入库单据',
+ createTitle: '新增备件入库',
+ scanSparepart: '扫备件码',
+ selectSparepart: '选择备件',
+ searchSparepartPlaceholder: '搜索备件编码/名称',
+ sparepartCode: '备件编码',
+ category: '分类',
+ spec: '规格',
+ unit: '库存单位',
+ purchaseUnit: '采购单位',
+ convertRatio: '换算关系',
+ defaultWarehouse: '默认仓库/库区',
+ selectedSpareparts: '已选备件',
+ noSelectedSparepart: '请扫码或选择备件',
+ alreadySelected: '该备件已添加',
+ confirmRemove: '确定移除此备件吗?',
+ currentStock: '当前库存',
+ minStockUnit: '最小库存单位',
+ inboundQuantity: '入库数量',
+ qtyPlaceholder: '请输入',
+ noSparepartData: '暂无备件数据',
+ validatorSparepartRequired: '请选择备件'
+ },
+ sparepartOutbound: {
+ moduleName: '备件出库',
+ tabPending: '待出库',
+ tabAuditing: '待审核',
+ searchPlaceholder: '搜索出库单号',
+ sparepartInfo: '备件信息',
+ outboundTime: '出库时间',
+ creator: '创建人',
+ quantity: '数量',
+ reviewer: '审核人',
+ approve: '已出库',
+ reject: '驳回',
+ confirmApprove: '确定审核通过该出库单吗?',
+ confirmReject: '确定驳回该出库单吗?',
+ approveSuccess: '审核通过',
+ rejectSuccess: '已驳回',
+ deleteSuccess: '删除成功',
+ empty: '暂无出库单据',
+ createTitle: '新增备件出库'
+ },
+ materialOutbound: {
+ moduleName: '物料出库',
+ tabPending: '待出库',
+ tabAuditing: '待审核',
+ searchPlaceholder: '搜索出库单号',
+ sparepartInfo: '物料信息',
+ materialInfo: '物料信息',
+ outboundTime: '出库时间',
+ creator: '创建人',
+ quantity: '数量',
+ reviewer: '审核人',
+ approve: '已出库',
+ reject: '驳回',
+ confirmApprove: '确定审核通过该出库单吗?',
+ confirmReject: '确定驳回该出库单吗?',
+ approveSuccess: '审核通过',
+ rejectSuccess: '已驳回',
+ deleteSuccess: '删除成功',
+ empty: '暂无出库单据',
+ createTitle: '新增物料出库'
+ },
productInventory: {
moduleName: '产品库存查询',
detailTitle: '产品库存详情',
@@ -1846,40 +1852,40 @@ export default {
empty: '暂无产品库存数据',
noDetailId: '暂无产品库存ID'
},
- sparepartInventory: {
- moduleName: '备件库存查询',
- searchPlaceholder: '请输入备件编码或名称',
- allArea: '全部库区',
- areaPlaceholder: '库区筛选',
- productName: '物料名称',
- barCode: '物料编码',
- warehouse: '仓库',
- area: '库区',
- count: '基本数量',
- stockDisplay: '库存展示',
- unit: '单位',
- category: '物料小类',
- packagingRule: '包装/换算规则',
- recentInTime: '最近入库',
- recentOutTime: '最近出库',
- empty: '暂无备件库存数据'
- },
- materialInventory: {
- moduleName: '物料库存查询',
- searchPlaceholder: '请输入物料编码或名称',
- allArea: '全部库区',
- areaPlaceholder: '库区筛选',
- productName: '物料名称',
- barCode: '物料编码',
- warehouse: '仓库',
- area: '库区',
- count: '基本数量',
- stockDisplay: '库存展示',
- unit: '单位',
- category: '物料小类',
- packagingRule: '包装/换算规则',
- recentInTime: '最近入库',
- recentOutTime: '最近出库',
- empty: '暂无物料库存数据'
- }
-}
+ sparepartInventory: {
+ moduleName: '备件库存查询',
+ searchPlaceholder: '请输入备件编码或名称',
+ allArea: '全部库区',
+ areaPlaceholder: '库区筛选',
+ productName: '物料名称',
+ barCode: '物料编码',
+ warehouse: '仓库',
+ area: '库区',
+ count: '基本数量',
+ stockDisplay: '库存展示',
+ unit: '单位',
+ category: '物料小类',
+ packagingRule: '包装/换算规则',
+ recentInTime: '最近入库',
+ recentOutTime: '最近出库',
+ empty: '暂无备件库存数据'
+ },
+ materialInventory: {
+ moduleName: '物料库存查询',
+ searchPlaceholder: '请输入物料编码或名称',
+ allArea: '全部库区',
+ areaPlaceholder: '库区筛选',
+ productName: '物料名称',
+ barCode: '物料编码',
+ warehouse: '仓库',
+ area: '库区',
+ count: '基本数量',
+ stockDisplay: '库存展示',
+ unit: '单位',
+ category: '物料小类',
+ packagingRule: '包装/换算规则',
+ recentInTime: '最近入库',
+ recentOutTime: '最近出库',
+ empty: '暂无物料库存数据'
+ }
+}
diff --git a/src/pages_function/pages/equipmentLedger/index.vue b/src/pages_function/pages/equipmentLedger/index.vue
index d6bbcb4..5f3a2e0 100644
--- a/src/pages_function/pages/equipmentLedger/index.vue
+++ b/src/pages_function/pages/equipmentLedger/index.vue
@@ -3,76 +3,48 @@
-
-
+
+ {{ selectedLineLabel }}
-
-
-
-
-
-
-
- {{ selectedLineLabel }}
+
+
+
+
+ {{ selectedStatusLabel }}
-
+ ]">{{ selectedStatusLabel }}
+
+
+
+
+
+
+
+
+
+
-
- {{
- resetFilterText
- }}
-
+
+
+
+
-
-
+
{{ textValue(item.deviceCode) }}
- onItemStatusChange(item, e)"
- >
+ onItemStatusChange(item, e)">
-
- {{ getStatusText(item.deviceStatus) }}
+
+ {{ getStatusText(item.deviceStatus)
+ }}
@@ -103,19 +75,127 @@
-
+
+
+
+
+
+
+ {{ t('equipmentLedger.basicInfo') }}
+
+
+
+ {{ t('equipmentLedger.deviceCode') }}
+
+
+
+ {{ t('equipmentLedger.deviceName') }}
+
+
+
+ {{ t('equipmentLedger.deviceBrand') }}
+
+
+
+ {{ t('equipmentLedger.sn') }}
+
+
+
+
+
+
+
+ {{ t('equipmentLedger.categoryStatus') }}
+
+
+
+ {{ t('equipmentLedger.deviceStatus') }}
+
+
+ {{ selectedStatusLabel }}
+
+
+
+
+
+ {{ t('equipmentLedger.deviceType') }}
+
+ {{ selectedDeviceTypeLabel }}
+
+
+
+
+ {{ option.name }}
+
+
+
+
+ {{ t('equipmentLedger.lineFilter') }}
+
+ {{ selectedLineLabel }}
+
+
+
+
+ {{ option.name }}
+
+
+
+
+
+
+
+
+ {{ t('equipmentLedger.dateFilter') }}
+
+
+ {{ t('equipmentLedger.outgoingTime') }}
+
+
+
+
+
+
+
+ {{
+ resetFilterText
+ }}
+ {{
+ t('functionCommon.confirm')
+ }}
+
+
+
+
+
+
@@ -131,6 +211,7 @@ import {
updateDeviceLedger,
} from '@/api/mes/deviceLedger';
import { getDeviceLineTree } from '@/api/mes/deviceLine';
+import { getDeviceTypeTree } from '@/api/mes/deviceType';
import { DICT_TYPE, getDictLabel, initAllDict } from '@/utils/dict';
import useDictStore from '@/store/modules/dict';
@@ -140,10 +221,24 @@ const resetFilterText = computed(() => t('functionCommon.reset'));
const searchKeyword = ref('');
const selectedStatus = ref('');
const selectedLineId = ref('');
+const selectedDeviceTypeId = ref('');
+const deviceCodeFilter = ref('');
+const deviceNameFilter = ref('');
+const deviceBrandFilter = ref('');
+const snFilter = ref('');
+const outgoingTimeFilter = ref('');
+const drawerDeviceTypePanelOpen = ref(false);
+const drawerLinePanelOpen = ref(false);
+const filterPopupRef = ref(null);
const lineTree = ref([]);
+const deviceTypeTree = ref([]);
const lineCascaderShow = ref(false);
+const lineCascaderOpenedFromDrawer = ref(false);
const lineCascaderValue = ref([]);
const lineCascaderKey = ref(0);
+const deviceTypeCascaderShow = ref(false);
+const deviceTypeCascaderValue = ref([]);
+const deviceTypeCascaderKey = ref(0);
const list = ref([]);
const loading = ref(false);
const loadingMore = ref(false);
@@ -199,11 +294,31 @@ const selectedLineLabel = computed(() => {
);
return found?.name || t('equipmentLedger.lineFilter');
});
-
+const drawerLineOptions = computed(() => [
+ { id: '', name: t('functionCommon.all'), level: 0 },
+ ...lineOptions.value,
+]);
+const deviceTypeOptions = computed(() => flattenLineTree(deviceTypeTree.value));
+const deviceTypeCascaderOptions = computed(() => [
+ { label: t('functionCommon.all'), value: '' },
+ ...normalizeLineTreeForCascader(deviceTypeTree.value),
+]);
+const selectedDeviceTypeLabel = computed(() => {
+ if (selectedDeviceTypeId.value === '') return t('equipmentLedger.deviceType');
+ const found = deviceTypeOptions.value.find(
+ (item) => String(item.id) === String(selectedDeviceTypeId.value),
+ );
+ return found?.name || t('equipmentLedger.deviceType');
+});
+const drawerDeviceTypeOptions = computed(() => [
+ { id: '', name: t('functionCommon.all'), level: 0 },
+ ...deviceTypeOptions.value,
+]);
onLoad(async () => {
activateKeywordFocus();
await initAllDict();
await fetchLineTree();
+ await fetchDeviceTypeTree();
await fetchList(true);
});
@@ -240,6 +355,21 @@ async function fetchLineTree() {
}
}
+async function fetchDeviceTypeTree() {
+ try {
+ const res = await getDeviceTypeTree({});
+ const root = res && res.data !== undefined ? res.data : res;
+ const treeData = Array.isArray(root)
+ ? root
+ : Array.isArray(root?.data)
+ ? root.data
+ : [];
+ deviceTypeTree.value = normalizeLineTree(treeData);
+ } catch (e) {
+ deviceTypeTree.value = [];
+ }
+}
+
function normalizeLineTree(nodes) {
return (Array.isArray(nodes) ? nodes : []).map((node) => {
const children = normalizeLineTree(node.children);
@@ -319,15 +449,24 @@ async function fetchList(reset) {
}
try {
const keyword = searchKeyword.value.trim();
+ const deviceCode = deviceCodeFilter.value.trim();
+ const deviceName = deviceNameFilter.value.trim();
+ const deviceBrand = deviceBrandFilter.value.trim();
+ const sn = snFilter.value.trim();
const params = {
pageNo: pageNo.value,
pageSize: pageSize.value,
- deviceCode: keyword || undefined,
- deviceName: keyword || undefined,
+ deviceCode: deviceCode || keyword || undefined,
+ deviceName: deviceName || keyword || undefined,
deviceStatus:
selectedStatus.value === '' ? undefined : selectedStatus.value,
deviceLine:
selectedLineId.value === '' ? undefined : selectedLineId.value,
+ deviceType:
+ selectedDeviceTypeId.value === '' ? undefined : selectedDeviceTypeId.value,
+ deviceBrand: deviceBrand || undefined,
+ sn: sn || undefined,
+ outgoingTime: outgoingTimeFilter.value || undefined,
};
const res = await getDeviceLedgerPage(params);
const page = normalizePageData(res);
@@ -370,7 +509,68 @@ function onStatusFilterChange(e) {
fetchList(true);
}
-function openLineCascader() {
+function onDrawerStatusFilterChange(e) {
+ const idx = Number(e?.detail?.value || 0);
+ selectedStatus.value = statusOptions.value[idx]?.value ?? '';
+}
+function openFilterDrawer() {
+ filterPopupRef.value?.open();
+}
+
+function closeFilterDrawer() {
+ filterPopupRef.value?.close();
+}
+
+async function confirmFilterDrawer() {
+ drawerDeviceTypePanelOpen.value = false;
+ drawerLinePanelOpen.value = false;
+ closeFilterDrawer();
+ await fetchList(true);
+}
+
+async function refreshList() {
+ await fetchList(true);
+}
+
+function toggleDrawerDeviceTypePanel() {
+ drawerDeviceTypePanelOpen.value = !drawerDeviceTypePanelOpen.value;
+ if (drawerDeviceTypePanelOpen.value) drawerLinePanelOpen.value = false;
+}
+
+function toggleDrawerLinePanel() {
+ drawerLinePanelOpen.value = !drawerLinePanelOpen.value;
+ if (drawerLinePanelOpen.value) drawerDeviceTypePanelOpen.value = false;
+}
+
+function selectDrawerDeviceType(option) {
+ selectedDeviceTypeId.value = option?.id === '' ? '' : String(option?.id ?? '');
+ deviceTypeCascaderValue.value = selectedDeviceTypeId.value
+ ? findLinePath(deviceTypeTree.value, selectedDeviceTypeId.value)
+ : [];
+ drawerDeviceTypePanelOpen.value = false;
+}
+
+function selectDrawerLine(option) {
+ selectedLineId.value = option?.id === '' ? '' : String(option?.id ?? '');
+ lineCascaderValue.value = selectedLineId.value
+ ? findLinePath(lineTree.value, selectedLineId.value)
+ : [];
+ drawerLinePanelOpen.value = false;
+}
+function openDeviceTypeCascader() {
+ deviceTypeCascaderShow.value = true;
+}
+
+function onDeviceTypeCascaderConfirm(values) {
+ const selectedValues = Array.isArray(values) ? values : [];
+ const nextValue = selectedValues[selectedValues.length - 1] ?? '';
+ selectedDeviceTypeId.value = nextValue === '' ? '' : String(nextValue);
+ deviceTypeCascaderValue.value =
+ nextValue === '' ? [] : selectedValues.map((item) => String(item));
+}
+
+function openLineCascader(fromDrawer = false) {
+ lineCascaderOpenedFromDrawer.value = Boolean(fromDrawer);
lineCascaderShow.value = true;
}
@@ -380,16 +580,29 @@ function onLineCascaderConfirm(values) {
selectedLineId.value = nextValue === '' ? '' : String(nextValue);
lineCascaderValue.value =
nextValue === '' ? [] : selectedValues.map((item) => String(item));
- fetchList(true);
+ if (!lineCascaderOpenedFromDrawer.value) fetchList(true);
+ lineCascaderOpenedFromDrawer.value = false;
}
-
async function resetFilters() {
searchKeyword.value = '';
+ deviceCodeFilter.value = '';
+ deviceNameFilter.value = '';
+ deviceBrandFilter.value = '';
+ snFilter.value = '';
+ outgoingTimeFilter.value = '';
selectedStatus.value = '';
selectedLineId.value = '';
+ selectedDeviceTypeId.value = '';
+ drawerDeviceTypePanelOpen.value = false;
+ drawerLinePanelOpen.value = false;
lineCascaderValue.value = [];
+ deviceTypeCascaderValue.value = [];
lineCascaderShow.value = false;
+ lineCascaderOpenedFromDrawer.value = false;
+ deviceTypeCascaderShow.value = false;
lineCascaderKey.value += 1;
+ deviceTypeCascaderKey.value += 1;
+ closeFilterDrawer();
activateKeywordFocus();
await fetchList(true);
}
@@ -549,16 +762,29 @@ function formatDateValue(value) {
}
.filter-bar {
- display: grid;
- grid-template-columns: minmax(0, 1fr) 160rpx 70rpx 0rpx;
- gap: 14rpx;
+ padding: 18rpx 14rpx 20rpx;
+ background: #f3f4f6;
+}
+
+.filter-row {
+ display: flex;
align-items: center;
- padding: 18rpx 3rpx 20rpx;
+ gap: 18rpx;
+}
+
+.search-row {
+ margin-top: 18rpx;
+}
+
+.quick-row>picker {
+ min-width: 0;
+ flex: 1;
}
.keyword-wrap,
.status-filter,
-.line-filter {
+.line-filter,
+.icon-filter-btn {
height: 66rpx;
border: 1rpx solid #d9dde5;
background: #ffffff;
@@ -566,6 +792,8 @@ function formatDateValue(value) {
}
.keyword-wrap {
+ min-width: 0;
+ flex: 1;
display: flex;
align-items: center;
}
@@ -578,35 +806,30 @@ function formatDateValue(value) {
color: #374151;
}
-.status-filter {
- min-width: 140rpx;
+.status-filter,
+.line-filter {
+ min-width: 0;
flex: 1;
- max-width: 300rpx;
display: flex;
align-items: center;
justify-content: space-between;
- padding: 0 18rpx;
+ padding: 0 18rpx 0 26rpx;
}
-.line-filter {
+.icon-filter-btn {
+ width: 66rpx;
+ flex: 0 0 66rpx;
display: flex;
align-items: center;
justify-content: center;
- position: relative;
- padding: 0 56rpx;
- grid-column: 1 / -1;
-}
-
-.line-filter :deep(.uni-icons) {
- position: absolute;
- right: 18rpx;
+ border-color: transparent;
+ background: transparent;
}
.status-filter-text,
.line-filter-text {
min-width: 0rpx;
flex: 1;
- width: 120rpx;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
@@ -614,16 +837,238 @@ function formatDateValue(value) {
color: #374151;
}
-.line-filter .line-filter-text {
- max-width: none;
- text-align: center;
-}
-
.status-filter-text.placeholder,
.line-filter-text.placeholder {
color: #a8adb7;
}
+.filter-drawer {
+ width: 630rpx;
+ height: 100vh;
+ background: #f5f5f7;
+ display: flex;
+ flex-direction: column;
+ overflow: hidden;
+ border-radius: 28rpx 0 0 28rpx;
+}
+
+.drawer-header {
+ height: 104rpx;
+ padding: 18rpx 34rpx 0;
+ background: #ffffff;
+ display: flex;
+ align-items: center;
+ justify-content: flex-start;
+ box-sizing: border-box;
+}
+
+.drawer-back {
+ width: 58rpx;
+ height: 88rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.drawer-title {
+ color: #1f2937;
+ font-size: 34rpx;
+ line-height: 1.3;
+ font-weight: 700;
+}
+
+.drawer-body {
+ flex: 1;
+ min-height: 0;
+ padding-bottom: 40rpx;
+ box-sizing: border-box;
+}
+
+.drawer-section {
+ // margin-top: 20rpx;
+ margin-bottom: 18rpx;
+ padding: 28rpx 28rpx 30rpx;
+ border-radius: 24rpx;
+ background: #ffffff;
+ box-sizing: border-box;
+}
+
+.drawer-section-head {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-bottom: 24rpx;
+}
+
+.drawer-section-title {
+ font-size: 32rpx;
+ line-height: 1.3;
+ color: #1f2937;
+ font-weight: 700;
+}
+
+.drawer-grid {
+ display: grid;
+ grid-template-columns: repeat(2, minmax(0, 1fr));
+ gap: 22rpx 20rpx;
+}
+
+.drawer-field {
+ min-width: 0;
+}
+
+.drawer-field-wide {
+ grid-column: 1 / -1;
+}
+
+.drawer-label {
+ display: block;
+ margin-bottom: 12rpx;
+ font-size: 24rpx;
+ line-height: 1.3;
+ color: #4b5563;
+ font-weight: 500;
+}
+
+.drawer-input,
+.drawer-picker,
+.drawer-date {
+ width: 100%;
+ min-height: 74rpx;
+ border: 0;
+ border-radius: 8rpx;
+ background: #f7f8fb;
+ box-sizing: border-box;
+}
+
+.drawer-input {
+ height: 74rpx;
+ padding: 0 18rpx;
+ font-size: 26rpx;
+ color: #111827;
+ text-align: center;
+}
+
+.drawer-picker {
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding: 0 18rpx;
+ gap: 8rpx;
+}
+
+.drawer-picker-text {
+ min-width: 0;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ font-size: 26rpx;
+ color: #111827;
+ text-align: center;
+}
+
+.drawer-picker-text.placeholder {
+ color: #9ca3af;
+}
+
+.drawer-date {
+ display: flex;
+ align-items: center;
+ padding: 0 12rpx;
+}
+
+.drawer-option-panel {
+ max-height: 360rpx;
+ margin-top: 12rpx;
+ border-radius: 12rpx;
+ background: #f7f8fb;
+ overflow: hidden;
+}
+
+.drawer-option-item {
+ min-height: 72rpx;
+ padding-right: 24rpx;
+ display: flex;
+ align-items: center;
+ border-bottom: 1rpx solid #eceff3;
+ box-sizing: border-box;
+}
+
+.drawer-option-item:last-child {
+ border-bottom: 0;
+}
+
+.drawer-option-item.active {
+ background: rgba(23, 75, 120, 0.1);
+}
+
+.drawer-option-item.active .drawer-option-text {
+ color: #174b78;
+ font-weight: 600;
+}
+
+.drawer-option-text {
+ min-width: 0;
+ flex: 1;
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ font-size: 26rpx;
+ color: #1f2937;
+}
+
+.drawer-date :deep(.uni-date) {
+ width: 100%;
+}
+
+.drawer-date :deep(.uni-date-x) {
+ min-height: 74rpx;
+ border: 0;
+ padding: 0;
+ background: transparent;
+}
+
+.drawer-date :deep(.uni-date__x-input) {
+ text-align: center;
+ font-size: 26rpx;
+ color: #111827;
+}
+
+.drawer-actions {
+ height: 126rpx;
+ padding: 18rpx 28rpx 24rpx;
+ box-sizing: border-box;
+ display: flex;
+ align-items: center;
+ gap: 0;
+ background: #ffffff;
+ box-shadow: 0 -8rpx 24rpx rgba(17, 24, 39, 0.06);
+}
+
+.drawer-action {
+ flex: 1;
+ height: 72rpx;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ font-size: 28rpx;
+ font-weight: 600;
+ border: 2rpx solid #174b78;
+ box-sizing: border-box;
+}
+
+.drawer-action.reset {
+ border-radius: 12rpx 0 0 12rpx;
+ background: #ffffff;
+ color: #174b78;
+}
+
+.drawer-action.confirm {
+ border-radius: 0 12rpx 12rpx 0;
+ background: #174b78;
+ color: #ffffff;
+}
+
.scan-btn {
width: 64rpx;
height: 64rpx;