| | |
| | | export default { |
| | | "northglassMESsystem": 'Система "NorthGlass MES"' , |
| | | "northglassMESsystem": "NorthGlass MES System", |
| | | login:{ |
| | | userErr:'Введите номер счета.', |
| | | pwErr:'Введите пароль.', |
| | | user:'Аккаунт', |
| | | password:'Код', |
| | | login:'Залогин', |
| | | loginSuccessful:'Вход в систему выполнен успешно!', |
| | | register:'Зарегистрирова', |
| | | namea:'Имя не может быть пустым', |
| | | len:'Длина не должна превышать 16', |
| | | passnull:'Пароль не может быть пустым', |
| | | leng:'Длина пароля не должна быть меньше 6 или больше 16.', |
| | | spwn:'Пароль подтверждения не может быть пустым', |
| | | depass:'Два разных пароля.', |
| | | userErr:'Please enter account number', |
| | | pwErr:'Please input a password', |
| | | user:'Account number', |
| | | password:'Password', |
| | | login:'Log on', |
| | | loginSuccessful:'Log on was successful!', |
| | | register:'Register', |
| | | namea:'Name cannot be empty', |
| | | len:'The length cannot exceed 16', |
| | | passnull:'Password cannot be empty', |
| | | leng:'The password length cannot be less than 6 or more than 16', |
| | | spwn:'Confirm password cannot be empty', |
| | | depass:'The two passwords are not the same', |
| | | }, |
| | | register:{ |
| | | registerSuccessful:'Регистрация успешно', |
| | | newuserregister:'Новый реестр пользователей', |
| | | name:'Имя:', |
| | | inputname:'Введите имя', |
| | | password:'Код:', |
| | | pwErr:'Введите пароль.', |
| | | passwordation:'Подтвердите пароль:', |
| | | pwErration:'Пожалуйста, подтвертите пароль', |
| | | registration:'Подтверждение о регистрации', |
| | | false:'Отмена', |
| | | registerSuccessful:'login was successful', |
| | | newuserregister:'New user register', |
| | | name:'Full name:', |
| | | inputname:'Please enter your name', |
| | | password:'Password:', |
| | | pwErr:'Please input a password', |
| | | passwordation:'Confirm password:', |
| | | pwErration:'Please confirm password', |
| | | registration:'Registration Confirm', |
| | | false:'Cancel', |
| | | }, |
| | | main:{ |
| | | connectErr:'Необычное подключение к серверу, попробуйте позже', |
| | | titleFirst:"Добро пожаловать ", |
| | | titleLast:' в систему NorthGlass MES!', |
| | | quit:"Выход", |
| | | connectErr:'The server connection is abnormal. Please try again later', |
| | | titleFirst:"Welcome ", |
| | | titleLast:' to use NorthGlass MES system!', |
| | | quit:"Exit", |
| | | }, |
| | | basicData:{ |
| | | deletemessage:'Удалить эту информацию или нет?', |
| | | laserprinting:'Машина лазерной маркировки готова:', |
| | | cuttingmachine:'Машина для резки готова:', |
| | | machine:'Состояние станок загрузки в режиме онлайн:', |
| | | machineaa:'Ручное состояние станок загрузки:', |
| | | selectproject:"Выберите проект", |
| | | startloading:'Начало загрузки', |
| | | stop:'Пауза', |
| | | yes:'подтверд', |
| | | change:'переключа', |
| | | projectnumber:'Номер проекта', |
| | | glasswidth:'Ширина стекла', |
| | | glassheight:'Высота стекла', |
| | | coatingtypes:'Типы покрытий', |
| | | coatingtypesa:'Типы покрытий:', |
| | | quantity:'Количество', |
| | | quantitya:'Количество:', |
| | | thickness:'Толщина', |
| | | thicknessa:'Толщина:', |
| | | startstatus:'Статус начала операции', |
| | | pass:'Через', |
| | | waiting:'Ждем.', |
| | | up:'Загрузка', |
| | | finish:'Завершено', |
| | | project:'инженерия', |
| | | plselectproject:'Пожалуйста, выберите проект.', |
| | | confirm:'подтверд', |
| | | cancel:'Отмена', |
| | | startfilm:'Начинать или нет?', |
| | | whetherpause:'Пауза или нет?', |
| | | station:'Рабочее место', |
| | | width:'Ширина', |
| | | widtha:'Ширина:', |
| | | height:'Высота', |
| | | heighta:'Высота:', |
| | | operate:'Операция', |
| | | add:'Добавля', |
| | | delete:'Удал', |
| | | addglass:'Добавить стекло', |
| | | selectwidth:'Выбирите ширину', |
| | | selectheight:'Выбирите высоту', |
| | | selectcoatingtypes:'Выберите типы покрытий', |
| | | selectthickness:'Выберите толщину', |
| | | selectquantity:'Введите кольчество.', |
| | | pause:'Вторая и четвертая строки должны быть выше 2700 для сохранения!', |
| | | pausea:'Пожалуйста, убедитесь, что маркировочная и режущая машины готовы!', |
| | | infonull:'Номер проекта не может быть пустым!', |
| | | updatanull:'Проект не сохранились на листе загрузки!', |
| | | glassnull:'Ошибка при обновлении стекла', |
| | | laserprinting:'Laser printing machine ready status:', |
| | | cuttingmachine:'Cutting machine ready status:', |
| | | machine:'Online status of the loading table:', |
| | | machineaa:'Manual state of the loading table:', |
| | | selectproject:"Select project", |
| | | startloading:'Start loading', |
| | | stop:'Pause', |
| | | yes:'Confirm', |
| | | change:'Switch', |
| | | projectnumber:'Project number', |
| | | glasswidth:'Glass width', |
| | | glassheight:'Glass height', |
| | | coatingtypes:'Coating types', |
| | | coatingtypesa:'Coating types:', |
| | | quantity:'Quantity', |
| | | quantitya:'Quantity:', |
| | | thickness:'Thickness', |
| | | thicknessa:'Thickness:', |
| | | startstatus:'Start status', |
| | | pass:'Pass', |
| | | waiting:'Waiting', |
| | | up:'Loading', |
| | | finish:'Completed', |
| | | project:'Project ', |
| | | plselectproject:'Please select project', |
| | | confirm:'Confirm', |
| | | cancel:'Cancel', |
| | | startfilm:'Whether start loading?', |
| | | whetherpause:'Whether pause?', |
| | | station:'Station', |
| | | width:'Width', |
| | | widtha:'Width:', |
| | | height:'Height', |
| | | heighta:'Height:', |
| | | operate:'Operate', |
| | | add:'Increase', |
| | | delete:'Delete', |
| | | addglass:'Add glass', |
| | | selectwidth:'Please select width', |
| | | selectheight:'Please select high', |
| | | selectcoatingtypes:'Please select the coating types', |
| | | selectthickness:'Please select thickness', |
| | | selectquantity:'Please enter the quantity', |
| | | pause:'The height of the second and fourth rows must be greater than 2700 in order to save!', |
| | | pausea:'Please confirm the ready status of marking machine and cutting machine!', |
| | | infonull:'Project number cannot be empty!', |
| | | updatanull:'This project has not been saved to the loading list!', |
| | | glassnull:'An error occurred while updating the glass status', |
| | | deletemessage:'Do you want to delete this message?', |
| | | layoutSequence:'Serial Number', |
| | | }, |
| | | sorter:{ |
| | | gridnumber:'Ячеек сеткла', |
| | | glassnumber:'Номер стакла', |
| | | width:'Ширина', |
| | | height:'Высота', |
| | | startstatus:'Статус начала операции', |
| | | disable:'Отключ', |
| | | start:'Начало', |
| | | deficiencieste:'Недостатки в отчетности', |
| | | operate:'Операция', |
| | | prompt:'Подсказк', |
| | | information:'Следует ли сообщать недостающую информацию?', |
| | | yes:'Да', |
| | | cancel:'Отмена', |
| | | gridnumber:'Grid number', |
| | | glassnumber:'Glass number', |
| | | width:'Width', |
| | | height:'Height', |
| | | startstatus:'Start status', |
| | | disable:'Disabled', |
| | | start:'Enabled', |
| | | deficiencieste:'Report deficiencies', |
| | | updown:'Artificial filming', |
| | | operate:'Operate', |
| | | prompt:'Prompt', |
| | | information:'Is the missing information reported?', |
| | | infor:'Whether to manually download this information?', |
| | | yes:'Yes', |
| | | cancel:'Cancel', |
| | | }, |
| | | order:{ |
| | | dilapidation:'Повреждение', |
| | | Takeaway:'Взять вручную', |
| | | dilapidation:'Breakage', |
| | | takeaway:'Manual removal', |
| | | takeon:'The arrangement is complete', |
| | | }, |
| | | |
| | | searchOrder:{ |
| | | cageinformation:'Информация буфера', |
| | | productionqueue:'Производственная очередь', |
| | | outputglassID:'Выходное стекло ID', |
| | | startposition:'Занять позиции', |
| | | targetlocation:'Позиция цели', |
| | | trips:'№ поезда', |
| | | number:'Серийн номер', |
| | | taskstatus:'Состояние задачи', |
| | | filmenter:'Ожидание стеклянной вход', |
| | | infilm:'В настоящее время', |
| | | endtask:'Задача на конец', |
| | | completetask:'Выполнение задания', |
| | | intoglassid:'Входной стеклянный ID', |
| | | line:'Линия', |
| | | Usage:'Скорость использования', |
| | | free:'Бесплатно (ячеек)', |
| | | addcage:'Добавить информацию о буфере', |
| | | glassIDa:'Стеклянный ID:', |
| | | glassID:'Стеклянный ID', |
| | | inglassID:'Введите стекло ID', |
| | | pieceingrid:'Порядок расположения маленьких стеклянных пластин в клетке', |
| | | pieceingrida:'Порядок расположения маленьких стеклянных пластин в клетке:', |
| | | inpieceingrid:'Введите порядок расположения стеклянных листов в ячееке', |
| | | cardnumber:'Номер карточки процесса', |
| | | cardnumbera:'Номер карточки процесса:', |
| | | incardnumber:'Введите номер процесса .', |
| | | typeglass:'Тип стекла', |
| | | typeglassa:'Тип стекла:', |
| | | intypeglass:'Введите тип стекла', |
| | | coatingtypes:'Типы покрытий', |
| | | width:'Ширина', |
| | | widtha:'Ширина:', |
| | | inwidth:'Введите ширину', |
| | | height:'Высота', |
| | | heighta:'Высота:', |
| | | inheight:'Введите высоту', |
| | | thickness:'Толщина', |
| | | thicknessa:'Толщина:', |
| | | inthickness:'Введите толщину.', |
| | | layoutID:'Чертеж ID загрузки печи для закалки', |
| | | layoutIDa:'Чертеж ID загрузки печи для закалки:', |
| | | inlayoutID:'Введите чертеж закалки ID', |
| | | picturesequence:'Чертеж серийн номер загрузки печи для закалки', |
| | | picturesequencea:'Чертеж серийн номер загрузки печи для закалки:', |
| | | inpicturesequence:'Введите порядок чертежи закалки стекла.', |
| | | startstatus:'Статус начала операции', |
| | | startstatusa:'Статус начала операции:', |
| | | instartstatus:'Введите состояние активации', |
| | | glassgaps:'Стеклянный зазор', |
| | | glassgapsa:'Стеклянный зазор:', |
| | | inglassgaps:'Введите стекло зазор', |
| | | sure:'подтверд', |
| | | cancel:'Отмена', |
| | | glassID:'Стеклянный ID', |
| | | operate:'Операция', |
| | | breakage:'Повреждение', |
| | | delete:'Удал', |
| | | outfilm:'Выпуск стекла', |
| | | cagetableID:'ID буферной таблицы', |
| | | cagenumber:'Буфер номера', |
| | | gridnumber:'Ячеек сеткла', |
| | | enable:'Начало', |
| | | disable:'Отключ', |
| | | remainingwidth:'Остаточная ширина', |
| | | add:'Добавля', |
| | | sheetID:'Закалка маленький стеклянный ID таблицы информации', |
| | | processcards:'Карточка процесса', |
| | | processcardtype:'Тип стекла карточки процесса', |
| | | acceptshorizontal:'Умеренное принятие горизонтали', |
| | | xcoordinates:'X-координаты', |
| | | ycoordinates:'Y-координаты', |
| | | rotationangle:'Угол вращения (против часовой стрелки)', |
| | | state:'Состояние', |
| | | takeout:'Взять', |
| | | deletemessage:'Удалить эту информацию или нет?', |
| | | prompt:'Подсказк', |
| | | yes:'Да', |
| | | accept:'Принять', |
| | | noaccept:'Не принимать', |
| | | filmcomplete:'Стекло готово', |
| | | waiting:'Ждем.', |
| | | }, |
| | | workOrder:{ |
| | | glassID: 'Glass ID', |
| | | height: 'Height', |
| | | width: 'Width', |
| | | thickness: 'Thickness', |
| | | coatingtypes: 'Coating types', |
| | | productionsequence: 'Production sequence', |
| | | cardnumber: 'Process card number', |
| | | operate: 'Operate', |
| | | messagedamaged: 'Is this information damaged?', |
| | | prompt: 'Prompt', |
| | | yes: 'Yes', |
| | | cancel: 'Cancel', |
| | | takemessage: 'Do you need to delete the message?', |
| | | breakage: 'Breakage', |
| | | takeout: 'Take away', |
| | | glasstype: 'Glass type', |
| | | line: 'Wire', |
| | | status: 'Status', |
| | | }, |
| | | processCard: { |
| | | intofurnace: 'Entering the furnace', |
| | | beforefurnace: 'Before entering the furnace', |
| | | outfurnace: 'Glass finished from tempering furnace', |
| | | print: 'Take away the print', |
| | | printing: 'print', |
| | | projectnumber: 'Please enter the project number', |
| | | inquire: 'Inquire', |
| | | project: 'Project number', |
| | | awayprocess: 'Take away the process', |
| | | awayequipment: 'Take away the equipment', |
| | | awayteam: 'Take away the crew', |
| | | flowcard: 'Process card', |
| | | layer: 'Layer number', |
| | | temperinglayout: 'Heat number', |
| | | temperingfeed: 'Preface', |
| | | width: 'Width', |
| | | height: 'Height', |
| | | thickness: 'Thickness', |
| | | glasstakeout: 'Glass take away list', |
| | | layoutID: 'Drawing ID of loading for tempering furnace', |
| | | glassID: 'Glass ID', |
| | | }, |
| | | reportWork:{ |
| | | lowerbit:'Станция разгрузки', |
| | | shelfnumber:'Номер стойки регистрации', |
| | | cardnumber:'Номер карточки процесса', |
| | | totalquantity:'Общее количество', |
| | | beendropped:'Количество стекла разгрузки', |
| | | state:'Состояние', |
| | | devicenumber:'Номер оборудования.', |
| | | startstatus:'Статус начала операции', |
| | | enable:'Начало', |
| | | unenable:'Не начат', |
| | | operate:'Операция', |
| | | bindingshelves:'Назначенная стеллажка', |
| | | clear:'Чисто.', |
| | | workstation:'Станция номер', |
| | | shelfnumber:'Номер стойки регистрации:', |
| | | cardnumbera:'Номер карточки процесса:', |
| | | incardnumber:'Пожалуйста, выберите номер программы', |
| | | clearglass:'Очистить стекло с полки', |
| | | sure:'подтверд', |
| | | cancel:'Отмена', |
| | | glassinformation:'Информация стекла', |
| | | glassID:'Стеклянный ID', |
| | | coatingtypes:'Типы покрытий', |
| | | thickness:'Толщина', |
| | | width:'Ширина', |
| | | height:'Высота', |
| | | }, |
| | | |
| | | productStock: { |
| | | addusers: 'Add user', |
| | | username: 'User name', |
| | | usernamea: 'User name:', |
| | | inusername: 'Enter one user name', |
| | | role: 'Role', |
| | | rolea: 'Role:', |
| | | inrole: 'Please select a role', |
| | | test: 'Test', |
| | | admin: 'Administrator', |
| | | operate: 'Operate', |
| | | resetpassword: 'Reset password', |
| | | exit: 'Edit', |
| | | delete: 'Delete', |
| | | prompt: 'Prompt', |
| | | repassword: 'Do you want to reset the user password?', |
| | | yes: 'Yes', |
| | | cancel: 'Cancel', |
| | | reusername: 'Modify Users', |
| | | addusername: 'Add user', |
| | | password: 'Password:', |
| | | sure: 'Confirm', |
| | | inpassword: 'Please input a password', |
| | | deusername: 'Do you want to delete the user?', |
| | | }, |
| | | customer: { |
| | | addmenua: 'Add secondary menus', |
| | | addmenu: 'Add a first-level menu', |
| | | firstmenu: 'First level menu bar', |
| | | firstmenuname: 'The name of the first-level menu:', |
| | | link: 'Link', |
| | | inlink: 'Please enter the link', |
| | | linka: 'Link:', |
| | | sort: 'Sort', |
| | | insort: 'Please enter sorting', |
| | | sorta: 'Sort:', |
| | | operate: 'Operate', |
| | | exit: 'Edit', |
| | | delete: 'Delete', |
| | | semenu: 'Secondary menu bar', |
| | | semenuname: 'Secondary menu name:', |
| | | menu: 'Menu bar:', |
| | | inmenu: 'Please enter a menu name', |
| | | sure: 'Confirm', |
| | | cancel: 'Cancel', |
| | | exmene: 'Modify the first-level menu', |
| | | exmenea: 'Modify the secondary menu', |
| | | yes: 'Yes', |
| | | demenu: 'Do you want to delete this menu?', |
| | | prompt: 'Prompt', |
| | | }, |
| | | delivery: { |
| | | addrole: 'Add Role', |
| | | editrole: 'Modify role', |
| | | role: 'Role', |
| | | rolea: 'Role:', |
| | | inrole: 'Please enter the role', |
| | | operate: 'Operate', |
| | | edit: 'Edit', |
| | | delete: 'Delete', |
| | | yes: 'Yes', |
| | | sure: 'Confirm', |
| | | cancel: 'Cancel', |
| | | derole: 'Do you want to delete this role', |
| | | prompt: 'Prompt', |
| | | choice: 'Menu permissions:', |
| | | inchoice: 'Please select Menu Permissions', |
| | | }, |
| | | replenish: { |
| | | patchManagement: 'Mesh management', |
| | | |
| | | }, |
| | | rework: { |
| | | reworkManagement: 'Rework management', |
| | | addRework: "Rework added ", |
| | | }, |
| | | |
| | | |
| | | role: { |
| | | id: 'ID', |
| | | characterHomepage: 'Character Home', |
| | | }, |
| | | user: { |
| | | userId: 'User ID', |
| | | userHomepage: 'User Home', |
| | | }, |
| | | orderBasicData: { |
| | | order: 'orders', |
| | | orderType: 'The type of order', |
| | | }, |
| | | machine: { |
| | | basicId: 'Device number', |
| | | basicName: 'The name of the device', |
| | | basicCategory: 'The process in which it is located', |
| | | tempering: 'Steel', |
| | | }, |
| | | report: { |
| | | productionReport: 'Production reports', |
| | | workInProgressReport: 'WIP report', |
| | | }, |
| | | productionBasicData: { |
| | | basicDataQuery: 'Basic data query', |
| | | }, |
| | | mainIngredient: { |
| | | materialInformation: 'Material information', |
| | | }, |
| | | mainIngredientStock: { |
| | | materialName: 'The name of the item', |
| | | createTime: 'Return date', |
| | | }, |
| | | large: { |
| | | time: 'The time of the break', |
| | | number: 'Order number', |
| | | jobnumber: 'Job number', |
| | | productionnumber: 'The production order number', |
| | | cardnumber: 'Process card number', |
| | | projectname: 'The name of the project', |
| | | batch: 'batch', |
| | | detailID: 'Detail ID', |
| | | building: 'Building No', |
| | | serialnumber: 'Order serial number', |
| | | productname: 'Product name', |
| | | serial: 'Process validation number', |
| | | slicemarker: 'Frame marker (position)', |
| | | numberpatches: 'Number of patches', |
| | | width: 'Width', |
| | | height: 'Height', |
| | | shape: 'Shape', |
| | | responsibleprocess: 'Responsible process', |
| | | process: 'This process', |
| | | numberfractions: 'The number of unfilled fractions', |
| | | breakreason: 'The reason for the break', |
| | | breaktype: 'Sub-break type', |
| | | responsiblepersonnel: 'Responsible Personnel', |
| | | responsiblequipment: 'Responsible Equipment', |
| | | responsibleteam: 'Responsible team', |
| | | area: 'Sub-broken area', |
| | | inspector: 'Quality inspector', |
| | | operate: 'Operate', |
| | | mes: 'Detail', |
| | | projectnumber: 'The project order number', |
| | | brokeno: 'The report is broken and not filled', |
| | | close: 'Shut down', |
| | | orderId: 'Order ID', |
| | | customerName: 'The name of the customer', |
| | | project: 'The name of the project', |
| | | are: 'are', |
| | | quantity: 'quantity', |
| | | warehousing: 'State', |
| | | deliveryDate: 'Delivery time', |
| | | notstocked: 'Not yet in stock', |
| | | inboundstatus: 'Partial inventory status', |
| | | allstatus: 'All in stock status', |
| | | completedquantity: 'Completed quantity', |
| | | scrapquantity: 'Scrap Quantity', |
| | | method: 'Processing method', |
| | | innumber: 'Quantity already entered', |
| | | productstatus: 'Production status', |
| | | right: 'normal', |
| | | stop: 'termination', |
| | | inquire: 'query', |
| | | starttime: 'Start Time', |
| | | endtime: 'End Time', |
| | | loading: 'In the process of uploading:', |
| | | }, |
| | | reportmanage: { |
| | | productiontime: 'production time', |
| | | starttime: 'Start Time', |
| | | endtime: 'End Time', |
| | | ctype: 'Please select type', |
| | | cstate: 'Please select the status', |
| | | cprocess: 'Please select the process', |
| | | all: 'All', |
| | | completed: 'Completed', |
| | | broke: 'Damaged', |
| | | takeout: 'Takeout', |
| | | dreportwork: 'Unreported work', |
| | | pendingwork: 'Pending job application', |
| | | reportwork: 'Reported work', |
| | | incise: 'slicing', |
| | | edging: 'edging', |
| | | steel: 'toughened', |
| | | inquire: 'query', |
| | | signingwork: 'Reporting for work', |
| | | reporteam: 'Report work team', |
| | | reportingequipment: 'Reporting equipment', |
| | | line: 'line', |
| | | process: 'production processes', |
| | | glassID: 'Glass ID', |
| | | projectnumber: 'Project number', |
| | | layoutID: 'Tempered layout ID', |
| | | type: 'type', |
| | | state: 'state', |
| | | processcards: 'Flow Card', |
| | | number: 'Serial Number', |
| | | layer: 'storey', |
| | | typebreakage: 'Damage type', |
| | | ptypebreakage: ' Please select the type of damage', |
| | | causebreakage: 'Reason for damage', |
| | | pcausebreakage: 'Please select the reason for the damage', |
| | | responsibleprocess: 'Responsibility Process', |
| | | responsiblepersonnel: 'Responsible personnel', |
| | | presponsiblepersonnel: 'Please enter the responsible personnel', |
| | | responsibleteam: 'Responsible team', |
| | | presponsibleteam: 'Please select the responsible team', |
| | | responsibleequipment: 'Responsible equipment', |
| | | presponsibleequipment: 'Please select the responsible device', |
| | | remark: 'notes', |
| | | premark: 'Please enter a note', |
| | | }, |
| | | film: { |
| | | mes: 'Original film storage details', |
| | | warehousing: 'store', |
| | | operate: 'Operate', |
| | | exit: 'Edit', |
| | | delete: 'Delete', |
| | | outbound: 'Outbound', |
| | | deviceid: 'device ID', |
| | | slot: 'Grid number', |
| | | enablestatea: 'Enable tagging', |
| | | disable: 'Disable', |
| | | start: 'Enable', |
| | | startslot: 'Start workstation', |
| | | endslot: 'Target workstation', |
| | | slotid: 'Grid ID', |
| | | width: 'Width', |
| | | widtha: 'Width:', |
| | | inwidth: 'Please enter width', |
| | | height: 'Height', |
| | | inheight: 'Please enter height', |
| | | heighta: 'Height:', |
| | | thickness: 'Thickness', |
| | | inthickness: 'Please enter thickness', |
| | | thicknessa: 'Thickness:', |
| | | films: 'Films', |
| | | infilms: 'Please enter films', |
| | | filmsa: 'Films:', |
| | | createtime: 'Creation time', |
| | | remainquantity: 'Remaining Quantity', |
| | | thickremainquantity: 'Remaining quantity of original film (sheets):', |
| | | inquantity: 'Please enter the quantity', |
| | | quantitya: 'Number:', |
| | | enableid: 'Task ID', |
| | | originateslot: 'Starting grid', |
| | | patternquantity: 'Number', |
| | | enabletype: 'Task Type', |
| | | enablestate: 'Workstation status', |
| | | finish: 'Completed', |
| | | unfinish: 'Incomplete', |
| | | dedelete: 'Do you want to delete this content?', |
| | | dedisable: 'Do you want to disable this content?', |
| | | deoutbound: 'Whether to release the content of this item from the warehouse?', |
| | | selectwarehousing: 'Please select the lifting position', |
| | | inwarehousing: 'Lifting position:', |
| | | warehousing1: 'Lifting position 1', |
| | | warehousing2: 'Lifting position 2', |
| | | starttime: 'Start Time', |
| | | endtime: 'End Time', |
| | | taskstatus: 'Status', |
| | | built: 'newly built', |
| | | execution: 'In progress', |
| | | tasktype: 'Task Type', |
| | | stocke: 'store', |
| | | dispatch: 'dispatch', |
| | | inquire: 'query', |
| | | station: 'station', |
| | | }, |
| | | Mounting: { |
| | | previewproject: 'Select Preview Project', |
| | | loadinglinea: 'Upper film line', |
| | | loadingline: 'Upper film line:', |
| | | inloadingline: 'Please select the upper film line', |
| | | oneloadingline: 'Line 1 on film', |
| | | twoloadingline: 'Line 2 on film', |
| | | waiting: 'Waiting', |
| | | setparameters: 'Set parameters', |
| | | project: 'Project number', |
| | | projecta: 'Project number:', |
| | | width: 'Width', |
| | | height: 'Height', |
| | | thickness: 'Thickness', |
| | | projectnumber: 'Project original piece number', |
| | | state: 'state', |
| | | createtime: 'Creation time', |
| | | all: 'Select All', |
| | | |
| | | } |
| | | } |
| | | searchlayout:'Non-tempered process card inquiry', |
| | | fullfurnaces:'Number of full furnaces', |
| | | specifiedproject:'The currently specified project', |
| | | undesignate:'Undesignate', |
| | | allnumber:'Total quantity', |
| | | numbercages:'Number of cages', |
| | | missingquantity:'Missing quantity', |
| | | breakquantity:'Breakage/Take Away quantity', |
| | | ceng:'layer', |
| | | cageinformation:'Sorter information', |
| | | productionqueue:'Production queue', |
| | | outputglassID:'Output glass ID', |
| | | startposition:'Start position', |
| | | targetlocation:'Target Position', |
| | | trips:'Train number', |
| | | number:'Serial Number', |
| | | taskstatus:'Task state', |
| | | filmenter:'Waiting for input glass', |
| | | infilm:'In progress', |
| | | endtask:'End task', |
| | | completetask:'Complete the task', |
| | | intoglassid:'Input glass ID', |
| | | line:'Wire', |
| | | Usage:'Usage rate', |
| | | free:'Free(pieces)', |
| | | addcage:'Add information on sorter', |
| | | glassIDa:'Glass ID:', |
| | | glassID:'Glass ID', |
| | | inglassID:'Please enter the glass ID', |
| | | pieceingrid:'The order of small pieces within the grid', |
| | | pieceingrida:'The order of small pieces within the grid:', |
| | | inpieceingrid:'Please enter the order of small pieces within the grid', |
| | | cardnumber:'Process card number', |
| | | cardnumbera:'Process card number:', |
| | | incardnumber:'Please enter the process card number', |
| | | typeglass:'Glass type', |
| | | typeglassa:'Glass type:', |
| | | intypeglass:'Please enter the glass type', |
| | | width:'Width', |
| | | widtha:'Width:', |
| | | inwidth:'Please enter width', |
| | | height:'Height', |
| | | heighta:'Height:', |
| | | inheight:'Please enter height', |
| | | coatingtypes:'Coating types', |
| | | thickness:'Thickness', |
| | | thicknessa:'Thickness:', |
| | | inthickness:'Please enter the thickness', |
| | | layoutID:'Drawing ID of loading for tempering furnace', |
| | | layoutIDa:'Drawing ID of loading for tempering furnace:', |
| | | inlayoutID:'Please enter the drawing ID of loading for tempering furnace', |
| | | picturesequence:'Drawing sequence of loading for tempering furnace', |
| | | picturesequencea:'Drawing sequence of loading for tempering furnace:', |
| | | inpicturesequence:'Please enter the drawing sequence of loading for tempering furnace', |
| | | startstatus:'Start status', |
| | | startstatusa:'Start status:', |
| | | instartstatus:'Please enter the enabled status', |
| | | glassgaps:'Glass gap', |
| | | glassgapsa:'Glass gap:', |
| | | inglassgaps:'Please enter the glass gap', |
| | | sure:'Confirm', |
| | | cancel:'Cancel', |
| | | operate:'Operate', |
| | | breakage:'Breakage', |
| | | delete:'Delete', |
| | | outfilm:'Output glass', |
| | | cagetableID:'Sorter table ID', |
| | | cagenumber:'Sorter number', |
| | | gridnumber:'Grid number', |
| | | gridnumbera:'Grid number:', |
| | | grid:'Please enter a grid number', |
| | | enable:'Enabled', |
| | | disable:'Disabled', |
| | | remainingwidth:'Remaining width', |
| | | add:'Add', |
| | | sheetID:'Tempered small piece information table ID', |
| | | processcards:'Process card', |
| | | processcardtype:'Process card glass type', |
| | | acceptshorizontal:'Does tempering accept horizontal placement', |
| | | xcoordinates:'x coordinate', |
| | | ycoordinates:'Y coordinate', |
| | | rotationangle:'Rotation angle (counterclockwise)', |
| | | state:'Status', |
| | | takeout:'Take away', |
| | | deletemessage:'Do you want to delete this message?', |
| | | prompt:'Prompt', |
| | | yes:'Yes', |
| | | accept:'Accept', |
| | | noaccept:'Not accept', |
| | | filmcomplete:'Glass output completed', |
| | | waiting:'Waiting', |
| | | broke:'Is this information damaged?', |
| | | brokeb:'Do you need to delete the message?', |
| | | outfil:'Whether the film is released or not?', |
| | | inputid:'Please enter the glass ID', |
| | | search:'Search', |
| | | tabid:'Dali film cage details table ID', |
| | | tid:'Device ID', |
| | | tida:'Device ID:', |
| | | fin:'Whether or not the task was completed?', |
| | | sureadd:'Confirm the addition', |
| | | sureadda:'Whether to confirm the addition?', |
| | | zailong:'In a cage', |
| | | rengongxp:'Artificial filming', |
| | | up:'Previous', |
| | | down:'Next', |
| | | now:'The current page is displayed', |
| | | tit:'data', |
| | | temperingqueries:'Tempering queries', |
| | | specifytempering:'Specify a furnace', |
| | | specifyengineerid:'Specify the project', |
| | | projectnumber:'Project number', |
| | | layoutnumber:'Drawing number of loading for tempering furnace', |
| | | numberglasses:'Number of glasses', |
| | | specifytemperinga:'Whether to specify the tempering of this information?', |
| | | temperedswitch:'Tempered switch', |
| | | dutyinformation:'Duty information', |
| | | process:'Process', |
| | | team:'Team', |
| | | basic:'equipment', |
| | | makesure:'Confirm the save', |
| | | // cancel:'取消', |
| | | temperingtotal:'Number of tempering furnaces:', |
| | | glasstotal:'Total number of glasses:', |
| | | }, |
| | | workOrder:{ |
| | | glassID:'Glass ID', |
| | | height:'Height', |
| | | width:'Width', |
| | | thickness:'Thickness', |
| | | coatingtypes:'Coating types', |
| | | productionsequence:'Production sequence', |
| | | cardnumber:'Process card number', |
| | | operate:'Operate', |
| | | messagedamaged:'Is this information damaged?', |
| | | prompt:'Prompt', |
| | | yes:'Yes', |
| | | cancel:'Cancel', |
| | | takemessage:'Do you need to delete the message?', |
| | | breakage:'Breakage', |
| | | takeout:'Take away', |
| | | glasstype:'Glass type', |
| | | line:'Wire', |
| | | status:'Status', |
| | | time:'Time period', |
| | | cway:'Please select a route', |
| | | cstate:'Please select a status', |
| | | edgingone:'Edging a line', |
| | | edgingtwo:'Edging two lines', |
| | | nedging:'Unedging', |
| | | edging:'Edging', |
| | | finedging:'has been edging', |
| | | }, |
| | | processCard:{ |
| | | intofurnace:'Entering the furnace', |
| | | beforefurnace:'Before entering the furnace', |
| | | outfurnace:'Glass finished from tempering furnace', |
| | | print:'Take away the print', |
| | | printing:'print', |
| | | projectnumber:'Please enter the project number', |
| | | inquire:'Inquire', |
| | | project:'Project number', |
| | | awayprocess:'Take away the process', |
| | | awayequipment:'Take away the equipment', |
| | | awayteam:'Take away the crew', |
| | | flowcard:'Process card', |
| | | layer:'Layer number', |
| | | temperinglayout:'Heat number', |
| | | temperingfeed:'Preface', |
| | | width:'Width', |
| | | height:'Height', |
| | | thickness:'Thickness', |
| | | glasstakeout:'Glass take away list', |
| | | layoutID:'Drawing ID of loading for tempering furnace', |
| | | glassID:'Glass ID', |
| | | }, |
| | | reportWork:{ |
| | | details:'Drop off details', |
| | | filming:'Artificial filming', |
| | | printing:'Automatic printing', |
| | | cenumber:'Number of layers', |
| | | artificialorder:'The number of pieces under artificial order', |
| | | processcard:'Print the process card', |
| | | printlabels:'Print labels', |
| | | information:'Landing information', |
| | | cstation:'Please select a desk', |
| | | all:'all', |
| | | timeperiod:'Time period', |
| | | stationnumber:'Station number', |
| | | order:'order', |
| | | filminformation:'Manual film information', |
| | | glassmation:'Artificial film current glass information', |
| | | barcodescanner:'The current glass information of the barcode scanner', |
| | | lowerbit:'Unloading station', |
| | | shelfnumber:'Rack number', |
| | | cardnumber:'Process card number', |
| | | totalquantity:'Total quantity', |
| | | beendropped:'Quantity of unloaded glass', |
| | | state:'Status', |
| | | devicenumber:'Equipment No.', |
| | | startstatus:'Start status', |
| | | enable:'Start', |
| | | unenable:'Unstart', |
| | | operate:'Operate', |
| | | bindingshelves:'Assigned rack', |
| | | clear:'Clear', |
| | | workstation:'Station No.', |
| | | shelfnumbera:'Rack number:', |
| | | cardnumbera:'Process card number:', |
| | | incardnumber:'Please select the process card number', |
| | | clearglass:'Clear the glass on the shelf', |
| | | sure:'Operate', |
| | | cancel:'Cancel', |
| | | glassinformation:'Glass information', |
| | | glassID:'Glass ID', |
| | | coatingtypes:'Coating types', |
| | | thickness:'Thickness', |
| | | width:'Width', |
| | | height:'Height', |
| | | }, |
| | | |
| | | productStock:{ |
| | | addusers:'Add user', |
| | | username:'User name', |
| | | usernamea:'User name:', |
| | | inusername:'Enter one user name', |
| | | role:'Role', |
| | | rolea:'Role:', |
| | | inrole:'Please select a role', |
| | | test:'Test', |
| | | admin:'Administrator', |
| | | operate:'Operate', |
| | | resetpassword:'Reset password', |
| | | exit:'Edit', |
| | | delete:'Delete', |
| | | prompt:'Prompt', |
| | | repassword:'Do you want to reset the user password?', |
| | | yes:'Yes', |
| | | cancel:'Cancel', |
| | | reusername:'Modify Users', |
| | | addusername:'Add user', |
| | | password:'Password:', |
| | | sure:'Confirm', |
| | | inpassword:'Please input a password', |
| | | deusername:'Do you want to delete the user?', |
| | | }, |
| | | customer:{ |
| | | addmenua:'Add secondary menus', |
| | | addmenu:'Add a first-level menu', |
| | | firstmenu:'First level menu bar', |
| | | firstmenuname:'The name of the first-level menu:', |
| | | link:'Link', |
| | | inlink:'Please enter the link', |
| | | linka:'Link:', |
| | | sort:'Sort', |
| | | insort:'Please enter sorting', |
| | | sorta:'Sort:', |
| | | operate:'Operate', |
| | | exit:'Edit', |
| | | delete:'Delete', |
| | | semenu:'Secondary menu bar', |
| | | semenuname:'Secondary menu name:', |
| | | menu:'Menu bar:', |
| | | inmenu:'Please enter a menu name', |
| | | sure:'Confirm', |
| | | cancel:'Cancel', |
| | | exmene:'Modify the first-level menu', |
| | | exmenea:'Modify the secondary menu', |
| | | yes:'Yes', |
| | | demenu:'Do you want to delete this menu?', |
| | | prompt:'Prompt', |
| | | }, |
| | | delivery:{ |
| | | addrole:'Add Role', |
| | | editrole:'Modify role', |
| | | role :'Role', |
| | | rolea :'Role:', |
| | | inrole :'Please enter the role', |
| | | operate :'Operate', |
| | | edit :'Edit', |
| | | delete :'Delete', |
| | | yes:'Yes', |
| | | sure :'Confirm', |
| | | cancel :'Cancel', |
| | | derole :'Do you want to delete this role', |
| | | prompt:'Prompt', |
| | | choice:'Menu permissions:', |
| | | inchoice:'Please select Menu Permissions', |
| | | }, |
| | | replenish:{ |
| | | patchManagement:'Mesh management', |
| | | |
| | | }, |
| | | rework:{ |
| | | reworkManagement:'Rework management', |
| | | addRework:"Rework added ", |
| | | }, |
| | | |
| | | |
| | | role:{ |
| | | id:'ID', |
| | | characterHomepage:'Character Home', |
| | | }, |
| | | user:{ |
| | | userId:'User ID', |
| | | userHomepage:'User Home', |
| | | }, |
| | | orderBasicData:{ |
| | | order:'orders', |
| | | orderType:'The type of order', |
| | | }, |
| | | machine:{ |
| | | basicId:'Device number', |
| | | basicName:'The name of the device', |
| | | basicCategory:'The process in which it is located', |
| | | tempering:'Steel', |
| | | }, |
| | | report:{ |
| | | productionReport:'Production reports', |
| | | workInProgressReport:'WIP report', |
| | | }, |
| | | productionBasicData:{ |
| | | basicDataQuery :'Basic data query', |
| | | }, |
| | | mainIngredient:{ |
| | | materialInformation :'Material information', |
| | | }, |
| | | mainIngredientStock:{ |
| | | materialName :'The name of the item', |
| | | createTime :'Return date', |
| | | }, |
| | | large:{ |
| | | time: 'The time of the break', |
| | | number: 'Order number', |
| | | jobnumber: 'Job number', |
| | | productionnumber: 'The production order number', |
| | | cardnumber: 'Process card number', |
| | | projectname: 'The name of the project', |
| | | batch: 'batch', |
| | | detailID: 'Detail ID', |
| | | building: 'Building No', |
| | | serialnumber: 'Order serial number', |
| | | productname: 'Product name', |
| | | serial: 'Process validation number', |
| | | slicemarker: 'Frame marker (position)', |
| | | numberpatches: 'Number of patches', |
| | | width: 'Width', |
| | | height: 'Height', |
| | | shape: 'Shape', |
| | | responsibleprocess: 'Responsible process', |
| | | process: 'This process', |
| | | numberfractions: 'The number of unfilled fractions', |
| | | breakreason: 'The reason for the break', |
| | | breaktype: 'Sub-break type', |
| | | responsiblepersonnel: 'Responsible Personnel', |
| | | responsiblequipment: 'Responsible Equipment', |
| | | responsibleteam: 'Responsible team', |
| | | area: 'Sub-broken area', |
| | | inspector: 'Quality inspector', |
| | | operate: 'Operate', |
| | | mes: 'Detail', |
| | | projectnumber: 'The project order number', |
| | | brokeno: 'The report is broken and not filled', |
| | | close: 'Shut down', |
| | | orderId: 'Order ID', |
| | | customerName: 'The name of the customer', |
| | | project: 'The name of the project', |
| | | are: 'are', |
| | | quantity: 'quantity', |
| | | warehousing: 'State', |
| | | deliveryDate: 'Delivery time', |
| | | notstocked: 'Not yet in stock', |
| | | inboundstatus: 'Partial inventory status', |
| | | allstatus: 'All in stock status', |
| | | completedquantity: 'Completed quantity', |
| | | scrapquantity: 'Scrap Quantity', |
| | | method: 'Processing method', |
| | | innumber: 'Quantity already entered', |
| | | productstatus: 'Production status', |
| | | right: 'normal', |
| | | stop: 'termination', |
| | | inquire: 'query', |
| | | starttime :'Start Time', |
| | | endtime :'End Time', |
| | | loading :'In the process of uploading:', |
| | | }, |
| | | reportmanage:{ |
| | | productiontime :'production time', |
| | | starttime :'Start Time', |
| | | endtime :'End Time', |
| | | ctype :'Please select type', |
| | | cstate :'Please select the status', |
| | | cprocess :'Please select the process', |
| | | all :'All', |
| | | completed :'Completed', |
| | | broke :'Damaged', |
| | | takeout :'Takeout', |
| | | dreportwork :'Unreported work', |
| | | pendingwork :'Pending job application', |
| | | reportwork :'Reported work', |
| | | incise :'slicing', |
| | | edging :'edging', |
| | | steel :'toughened', |
| | | inquire :'query', |
| | | signingwork :'Reporting for work', |
| | | reporteam :'Report work team', |
| | | reportingequipment :'Reporting equipment', |
| | | line :'line', |
| | | process :'production processes', |
| | | glassID :'Glass ID', |
| | | projectnumber :'Project number', |
| | | layoutID :'Tempered layout ID', |
| | | type :'type', |
| | | state :'state', |
| | | processcards :'Flow Card', |
| | | number :'Serial Number', |
| | | layer :'storey', |
| | | typebreakage :'Damage type', |
| | | ptypebreakage :' Please select the type of damage', |
| | | causebreakage :'Reason for damage', |
| | | pcausebreakage :'Please select the reason for the damage', |
| | | responsibleprocess :'Responsibility Process', |
| | | responsiblepersonnel :'Responsible personnel', |
| | | presponsiblepersonnel :'Please enter the responsible personnel', |
| | | responsibleteam :'Responsible team', |
| | | presponsibleteam :'Please select the responsible team', |
| | | responsibleequipment :'Responsible equipment', |
| | | presponsibleequipment :'Please select the responsible device', |
| | | remark :'notes', |
| | | premark :'Please enter a note', |
| | | }, |
| | | film:{ |
| | | mes:'Original film storage details', |
| | | warehousing:'store', |
| | | operate: 'Operate', |
| | | exit:'Edit', |
| | | delete:'Delete', |
| | | outbound:'Outbound', |
| | | deviceid:'device ID', |
| | | slot:'Grid number', |
| | | enablestatea:'Enable tagging', |
| | | disable:'Disable', |
| | | start:'Enable', |
| | | startslot:'Start workstation', |
| | | endslot:'Target workstation', |
| | | slotid:'Grid ID', |
| | | width:'Width', |
| | | widtha:'Width:', |
| | | inwidth:'Please enter width', |
| | | height:'Height', |
| | | inheight:'Please enter height', |
| | | heighta:'Height:', |
| | | thickness:'Thickness', |
| | | inthickness:'Please enter thickness', |
| | | thicknessa:'Thickness:', |
| | | films:'Films', |
| | | infilms:'Please enter films', |
| | | filmsa:'Films:', |
| | | createtime:'Creation time', |
| | | remainquantity:'Remaining Quantity', |
| | | thickremainquantity:'Remaining quantity of original film (sheets):', |
| | | inquantity:'Please enter the quantity', |
| | | quantitya:'Number:', |
| | | enableid:'Task ID', |
| | | originateslot:'Starting grid', |
| | | patternquantity:'Number', |
| | | enabletype:'Task Type', |
| | | enablestate:'Workstation status', |
| | | finish:'Completed', |
| | | unfinish:'Incomplete', |
| | | dedelete:'Do you want to delete this content?', |
| | | dedisable:'Do you want to disable this content?', |
| | | deoutbound:'Whether to release the content of this item from the warehouse?', |
| | | selectwarehousing:'Please select the lifting position', |
| | | inwarehousing:'Lifting position:', |
| | | warehousing1:'Lifting position 1', |
| | | warehousing2:'Lifting position 2', |
| | | starttime :'Start Time', |
| | | endtime :'End Time', |
| | | taskstatus :'Status', |
| | | built :'newly built', |
| | | execution :'In progress', |
| | | tasktype :'Task Type', |
| | | stocke :'store', |
| | | dispatch :'dispatch', |
| | | inquire :'query', |
| | | station :'station', |
| | | }, |
| | | Mounting:{ |
| | | previewproject :'Select Preview Project', |
| | | loadinglinea :'Upper film line', |
| | | loadingline :'Upper film line:', |
| | | inloadingline :'Please select the upper film line', |
| | | oneloadingline :'Line 1 on film', |
| | | twoloadingline :'Line 2 on film', |
| | | waiting :'Waiting', |
| | | setparameters :'Set parameters', |
| | | project :'Project number', |
| | | projecta :'Project number:', |
| | | width :'Width', |
| | | height :'Height', |
| | | thickness :'Thickness', |
| | | projectnumber :'Project original piece number', |
| | | state :'state', |
| | | createtime :'Creation time', |
| | | all :'Select All', |
| | | |
| | | } |
| | | } |
| | |
| | | }, |
| | | |
| | | searchOrder: { |
| | | searchlayout:'Запрос нетемперированной технологической карты', |
| | | fullfurnaces:'Количество полных печей', |
| | | specifiedproject:'Указанный в данный момент проект', |
| | | undesignate:'Без обозначения', |
| | | allnumber:'Общее количество', |
| | | numbercages:'Количество сепараторов', |
| | | missingquantity:'Недостающее количество', |
| | | breakquantity:'Количество Поломка/Вынос', |
| | | ceng:'слой', |
| | | cageinformation: 'Информация буфера', |
| | | productionqueue: 'Производственная очередь', |
| | | outputglassID: 'Выходное стекло ID', |
| | |
| | | takemessage: 'Следует ли удалять сообщение?', |
| | | breakage: 'Повреждение', |
| | | takeout: 'Взять', |
| | | time:'Период времени', |
| | | cway:'Пожалуйста, выберите маршрут', |
| | | cstate:'Пожалуйста, выберите статус', |
| | | edgingone:'Окантовка линии', |
| | | edgingtwo:'Окантовка двух линий', |
| | | nedging:'Окантовка', |
| | | edging:'Край', |
| | | finedging:'был окантовочным', |
| | | }, |
| | | processCard: { |
| | | intofurnace: 'В печь', |
| | |
| | | outfurnace: 'Окончено стекло из печи для закалки', |
| | | }, |
| | | reportWork: { |
| | | details:'Сведения о сдаче', |
| | | filming:'Искусственная съемка', |
| | | printing:'Автоматическая печать', |
| | | cenumber:'Количество слоев', |
| | | artificialorder:'Количество штук при искусственном заказе', |
| | | processcard:'Печать технологической карты', |
| | | printlabels:'Печать этикеток', |
| | | information:'Информация о посадке', |
| | | cstation:'Пожалуйста, выберите стол', |
| | | all:'все', |
| | | timeperiod:'Период времени', |
| | | stationnumber:'Номер станции', |
| | | order:'порядок', |
| | | filminformation:'Информация о пленке вручную', |
| | | glassmation:'Искусственная пленка актуальная информация о стекле', |
| | | barcodescanner:'Актуальная информация о стекле сканера штрих-кода', |
| | | lowerbit: 'Станция разгрузки', |
| | | shelfnumber: 'Номер стойки регистрации', |
| | | cardnumber: 'Номер карточки процесса', |
| | |
| | | takeon:'摆片完成', |
| | | }, |
| | | searchOrder:{ |
| | | searchlayout:'非钢化流程卡查询', |
| | | fullfurnaces:'满炉数量', |
| | | specifiedproject:'当前指定工程', |
| | | undesignate:'取消指定', |
| | | allnumber:'总数量', |
| | | numbercages:'笼子内数量', |
| | | missingquantity:'缺少数量', |
| | | breakquantity:'破损/拿走数量', |
| | | ceng:'层', |
| | | cageinformation:'理片笼信息', |
| | | productionqueue:'出片队列', |
| | | outputglassID:'出片玻璃ID', |
| | |
| | | glasstype:'玻璃类型', |
| | | line:'线路', |
| | | status:'状态', |
| | | time:'时间段', |
| | | cway:'请选择线路', |
| | | cstate:'请选择状态', |
| | | edgingone:'磨边一线', |
| | | edgingtwo:'磨边二线', |
| | | nedging:'未磨边', |
| | | edging:'磨边中', |
| | | finedging:'已磨边', |
| | | }, |
| | | processCard:{ |
| | | intofurnace:'进炉中', |
| | |
| | | glassID:'玻璃ID', |
| | | }, |
| | | reportWork:{ |
| | | details:'落架详情', |
| | | filming:'人工下片', |
| | | printing:'自动打印', |
| | | cenumber:'层数', |
| | | artificialorder:'人工下片数', |
| | | processcard:'打印流程卡', |
| | | printlabels:'打印标签', |
| | | information:'落架信息', |
| | | cstation:'请选择工位', |
| | | all:'全部', |
| | | timeperiod:'时间段', |
| | | stationnumber:'工位号', |
| | | order:'顺序', |
| | | filminformation:'人工下片信息', |
| | | glassmation:'人工下片当前玻璃信息', |
| | | barcodescanner:'扫码枪当前玻璃信息', |
| | | lowerbit:'下片位', |
| | | shelfnumber:'架号', |
| | | cardnumber:'流程卡号', |
| | |
| | | inquire :'查询', |
| | | station :'工位', |
| | | }, |
| | | Mounting:{ |
| | | previewproject :'选择预览工程', |
| | | loadinglinea :'上片线', |
| | | loadingline :'上片线:', |
| | | inloadingline :'请选择上片线', |
| | | oneloadingline :'一号上片线', |
| | | twoloadingline :'二号上片线', |
| | | waiting :'等待中', |
| | | setparameters :'设置参数', |
| | | project :'工程号', |
| | | projecta :'工程号:', |
| | | width :'原片宽', |
| | | height :'原片高', |
| | | thickness :'原片厚', |
| | | projectnumber :'工程原片序号', |
| | | state :'状态', |
| | | createtime :'创建时间', |
| | | all :'全选', |
| | | |
| | | } |
| | | } |
| | |
| | | // import User from '../views/sys/User.vue' |
| | | // import Role from '../views/sys/Role.vue' |
| | | // import Menu from '../views/sys/Menu.vue' |
| | | |
| | | const router = createRouter({ |
| | | history: createWebHashHistory(), |
| | | routes: [ |
| | |
| | | path: '/login', |
| | | name: 'login', |
| | | component: () => import('../views/LoginView.vue') |
| | | }, |
| | | { |
| | | path: '/new-page', // 新增的无需登录的页面 |
| | | name: 'newPage', |
| | | component: () => import('../views/NewPage.vue') |
| | | }, |
| | | { |
| | | path: '/main', |
| | |
| | | /*----------- 上片机 ----------------*/ |
| | | { |
| | | path: 'Returns', |
| | | name: 'Returns', |
| | | component: () => import('../views/Returns/returns.vue'), |
| | | name: 'return', |
| | | component: () => import('../views/Returns/return.vue'), |
| | | children:[ |
| | | { |
| | | path: '/Returns/returns', |
| | | name: 'returns', |
| | | component: () => import('../views/Returns/returns.vue') |
| | | }, |
| | | { |
| | | path: '/Returns/upreturns', |
| | | name: 'upreturns', |
| | | component: () => import('../views/Returns/upreturns.vue') |
| | | }, |
| | | ] |
| | | }, |
| | |
| | | } |
| | | ] |
| | | }, |
| | | |
| | | |
| | | /*----------- 可视化系统 ----------------*/ |
| | | { |
| | | path: 'Visualization', |
| | |
| | | }, |
| | | { |
| | | path: '', |
| | | redirect: '/returns/returns' |
| | | redirect: '/Returns/returns' |
| | | } |
| | | ] |
| | | }, |
| | |
| | | |
| | | ] |
| | | }) |
| | | |
| | | |
| | | // 导航守卫 |
| | | router.beforeEach((to, from, next) => { |
| | | const isAuthenticated = !!localStorage.getItem('authToken'); // 假设这是你的登录状态检查逻辑 |
| | | if (to.matched.some(record => record.meta.requiresAuth) && !isAuthenticated) { |
| | | next({ name: 'login' }); // 如果需要登录但未登录,则重定向到登录页面 |
| | | } else { |
| | | next(); // 否则继续导航 |
| | | } |
| | | }); |
| | | export default router |
New file |
| | |
| | | <template> |
| | | <div> |
| | | <div style="display: flex;"> |
| | | <div style="margin-left: 50px;margin-top: 15px;font-size:large">工程号:</div> |
| | | <el-input v-model="current" style="margin-left: 20px;margin-top: 15px;width: 240px" placeholder="请输入工程号" @input="updateUrl"/> |
| | | <el-button style="margin-top: 15px;margin-left: 15px;" type="primary" @click="fetchData">查询</el-button> |
| | | </div> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;margin-right: 10px;width: 1850px;" height="900" v-loading="loading"> |
| | | <div v-for="(row, rowIndex) in divsData" :key="rowIndex" class="row"> |
| | | <div v-for="(rect, colIndex) in row" :key="colIndex" class="div-container"> |
| | | <el-scrollbar height="430px" width="900px" style="background-color: #e9e9eb;"> |
| | | <div style="position: relative;width: 100%;height: 100%;"> |
| | | <div |
| | | v-for="(rect, index) in getAdjustedRectsForRow(rowIndex)" |
| | | :key="index" |
| | | class="rect" |
| | | :style="{ position: 'absolute', |
| | | top: `${rect.y_axis}px`, |
| | | left: `${rect.x_axis}px`, |
| | | width: `${rect.width}px`, |
| | | height: `${rect.height}px`, |
| | | backgroundColor: '#911005'}"> |
| | | <div class="centered-text"> |
| | | <div style="font-size: 15px;font-weight: bold;">{{ rect.process_id }}</div> |
| | | <div style="font-size: 15px;font-weight: bold;">{{ rect.project_no }}</div> |
| | | <div style="font-size: 30px;font-weight: bold;">{{ rect.widtha }}*{{ rect.heighta }}</div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </el-scrollbar> |
| | | </div> |
| | | </div> |
| | | </el-card> |
| | | </div> |
| | | </template> |
| | | |
| | | <script setup> |
| | | import { ref, onMounted, watch, watchEffect } from 'vue'; |
| | | import { useRoute, useRouter } from 'vue-router'; |
| | | import request from "@/utils/request" |
| | | const route = useRoute(); |
| | | const router = useRouter(); |
| | | const current = ref(route.query.current || ''); |
| | | const adjustedRects = ref([]); |
| | | const loading = ref(false); |
| | | const adjustedRectsPerRow = ref([]); |
| | | const divsData = ref([]); |
| | | const rawData = ref([]); |
| | | onMounted(() => { |
| | | if (route.query.current) { |
| | | current.value = route.query.current; |
| | | console.log(current.value); |
| | | window.localStorage.setItem('current', current.value) |
| | | } |
| | | }); |
| | | onMounted(async () => { |
| | | try { |
| | | let current = window.localStorage.getItem('current') |
| | | const response = await request.post(`/cacheGlass/taskCache/temperingTerritory?current=${current}`); |
| | | if (response.code === 200) { |
| | | rawData.value = response.data; |
| | | console.log(rawData.value); |
| | | processData(rawData.value); |
| | | } else { |
| | | // ElMessage.warning(res.msg) |
| | | } |
| | | } catch (error) { |
| | | // console.error('Error fetching rects :', error); |
| | | } |
| | | }); |
| | | watch( |
| | | current, |
| | | (newVal) => { |
| | | router.replace({ query: { current: newVal } }); |
| | | }, |
| | | { immediate: true } // 使用 immediate: true 来确保在组件挂载时立即执行一次 watch 回调 |
| | | ); |
| | | const fetchData = async () => { |
| | | try { |
| | | const response = await request.post(`/cacheGlass/taskCache/temperingTerritory?current=${current.value}`); |
| | | if (response.code === 200) { |
| | | rawData.value = response.data; |
| | | console.log(rawData.value); |
| | | processData(rawData.value); |
| | | } |
| | | } catch (error) { |
| | | console.error('Failed to fetch data:', error); |
| | | } finally { |
| | | loading.value = false; |
| | | } |
| | | }; |
| | | function processData(data) { |
| | | const groupedData = []; |
| | | for (let i = 0; i < data.length; i += 2) { |
| | | groupedData.push(data.slice(i, i + 2)); |
| | | } |
| | | divsData.value = groupedData; |
| | | adjustedRectsPerRow.value = divsData.value.map(() => []); |
| | | divsData.value.forEach((row, rowIndex) => { |
| | | const rawRowData = rawData.value[rowIndex]; |
| | | if (rawRowData) { |
| | | adjustedRectsPerRow.value[rowIndex] = rawRowData.map(rect => { |
| | | let adjustedWidth, adjustedHeight,newX; |
| | | if (rect.rotate_angle === 0) { |
| | | newX = rect.olHeight -(rect.y_axis + rect.height); |
| | | adjustedWidth = rect.height * (900/rect.olHeight); |
| | | adjustedHeight = rect.width * (430/rect.olWidth); |
| | | } else { |
| | | newX = rect.olHeight -(rect.y_axis + rect.width); |
| | | adjustedWidth = rect.width * (900/rect.olHeight); |
| | | adjustedHeight = rect.height * (430/rect.olWidth); |
| | | } |
| | | // 该页面为顺时针旋转90度 |
| | | let adjustedRect = { |
| | | ...rect, |
| | | // x_axis: rect.y_axis * (959.35/rect.olHeight), |
| | | y_axis: rect.x_axis * (430/rect.olWidth), |
| | | x_axis: newX * (900/rect.olHeight), |
| | | // y_axis: rect.x_axis * (430/rect.olWidth), |
| | | width: adjustedWidth, |
| | | height: adjustedHeight, |
| | | widtha: rect.width, |
| | | heighta: rect.height, |
| | | }; |
| | | return adjustedRect; |
| | | }); |
| | | } |
| | | }); |
| | | } |
| | | // 方法用于获取当前行的adjustedRects |
| | | function getAdjustedRectsForRow(rowIndex) { |
| | | return adjustedRectsPerRow.value[rowIndex] || []; |
| | | } |
| | | </script> |
| | | |
| | | |
| | | <style scoped> |
| | | .row { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-bottom: 20px; |
| | | } |
| | | |
| | | .div-container { |
| | | width: 900px; |
| | | float: left; |
| | | background-color: #f4f4f5; |
| | | height: 430px; |
| | | box-sizing: border-box; |
| | | } |
| | | </style> |
| | |
| | | <div style="width: 49%;float: right;background-color: #f4f4f5;height: 430px;"> |
| | | <div v-if="adjustedRects1.length > 0"> |
| | | <!-- <div style="text-align: center;">炉号:{{ engineerIdDisplay }}-{{ adjustedRects[0].temperingLayoutId }}</div> --> |
| | | <div style="text-align: center;"> 炉号:{{ adjustedRects1[0].engineerId }}-{{ adjustedRects1[0].temperingLayoutId }} </div> |
| | | <div style="text-align: center;"> {{ $t('processCard.temperinglayout') }}:{{ adjustedRects1[0].engineerId }}-{{ adjustedRects1[0].temperingLayoutId }} </div> |
| | | <el-scrollbar height="430px" style="background-color: #e9e9eb;"> |
| | | <div style="position: relative;max-width: 1400px;"> |
| | | <div |
| | |
| | | </div> |
| | | <div style="width: 50%;float: left;background-color: #f4f4f5;height: 430px;"> |
| | | <div v-if="adjustedRects2.length > 0"> |
| | | <div style="text-align: center;"> 炉号:{{ adjustedRects2[0].engineerId }}-{{ adjustedRects2[0].temperingLayoutId }} </div> |
| | | <div style="text-align: center;"> {{ $t('processCard.temperinglayout') }}:{{ adjustedRects2[0].engineerId }}-{{ adjustedRects2[0].temperingLayoutId }} </div> |
| | | <!-- <div style="text-align: center;">炉号:{{ engineerIdDisplay2 }}-{{ adjustedRects[0].temperingLayoutId }}</div> --> |
| | | <el-scrollbar height="430px" style="background-color: #e9e9eb;"> |
| | | <div style="position: relative;max-width: 1400px;"> |
| | |
| | | <!-- 进炉前 --> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;height: 800px;" v-loading="loading"> |
| | | <div v-if="adjustedRectsa.length > 0"> |
| | | <div style="text-align: center;"> 炉号:{{ adjustedRectsa[0].engineerId }}-{{ adjustedRectsa[0].temperingLayoutId }} </div> |
| | | <div style="text-align: center;"> {{ $t('processCard.temperinglayout') }}:{{ adjustedRectsa[0].engineerId }}-{{ adjustedRectsa[0].temperingLayoutId }} </div> |
| | | <!-- <div style="text-align: center;">炉号:{{ engineerIdDisplaya }}-{{ adjustedRects[0].temperingLayoutId }}</div> --> |
| | | <el-scrollbar height="750px" style="background-color: #e9e9eb;"> |
| | | <div style="position: relative;max-width: 1400px;"> |
| | |
| | | <!-- 已出炉 --> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 10px;margin-right: 10px;height: 800px;" v-loading="loading"> |
| | | <div v-if="adjustedRectsb.length > 0"> |
| | | <div style="text-align: center;"> 炉号:{{ adjustedRectsb[0].engineerId }}-{{ adjustedRectsb[0].temperingLayoutId }} </div> |
| | | <div style="text-align: center;"> {{ $t('processCard.temperinglayout') }}:{{ adjustedRectsb[0].engineerId }}-{{ adjustedRectsb[0].temperingLayoutId }} </div> |
| | | <!-- <div style="text-align: center;">炉号:{{ engineerIdDisplayb }}-{{ adjustedRects[0].temperingLayoutId }}</div> --> |
| | | <el-scrollbar height="750px" style="background-color: #e9e9eb;"> |
| | | <div style="position: relative;max-width: 1400px;"> |
New file |
| | |
| | | <script setup> |
| | | import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue" |
| | | import {useRouter} from "vue-router"; |
| | | let indexFlag=$ref(1) |
| | | function changeRouter(index){ |
| | | indexFlag=index |
| | | } |
| | | |
| | | </script> |
| | | |
| | | <template> |
| | | <!-- <div id="main-div"> --> |
| | | |
| | | |
| | | <div id="main-body"> |
| | | <router-view /> |
| | | </div> |
| | | <!-- </div> --> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | #main-div{ |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | #div-title{ |
| | | height: 2%; |
| | | width: 100%; |
| | | } |
| | | #searchButton{ |
| | | margin-top: -5px; |
| | | margin-left: 1rem; |
| | | } |
| | | /* #searchButton1{ |
| | | //margin-left: 10rem; |
| | | } */ |
| | | /*main-body样式*/ |
| | | #main-body{ |
| | | width: 100%; |
| | | height: 95%; |
| | | /* margin-top: 1%; */ |
| | | } |
| | | #select{ |
| | | margin-left:0.5rem; |
| | | } |
| | | :deep(.indexTag .el-breadcrumb__inner){ |
| | | color: #5CADFE !important; |
| | | } |
| | | </style> |
| | |
| | | <div style="margin-left: 70px;">{{ upstatus }} </div> |
| | | <i :style="{ marginTop: '2px', backgroundColor: cuttingMachineStatusColor, width: '18px', height: '18px', borderRadius: '50%', display: 'block' }"></i> |
| | | <el-button @click="confirmCutting" style="margin-left: 30px;margin-top: -3px;" >{{ $t('basicData.change') }}</el-button> |
| | | |
| | | |
| | | </div> |
| | | <el-button :disabled="!canSelectProject" style="margin-top: 5px;margin-left: 15px;" type="primary" @click="selectproject">{{ $t('basicData.selectproject') }}</el-button> |
| | | <el-button :disabled="!canSelectProject" :style="{ backgroundColor: canStartLoading ? 'green' : 'initial',color: canStartLoading ? 'white' : 'black', }" style="margin-top: 5px;margin-left: 20px;" @click="handleBind">{{ $t('basicData.startloading') }}</el-button> |
New file |
| | |
| | | <script lang="ts" setup> |
| | | import {Search} from "@element-plus/icons-vue"; |
| | | import {reactive} from "vue"; |
| | | import {useRouter} from "vue-router" |
| | | const router = useRouter() |
| | | import type { TableColumnCtx } from 'element-plus' |
| | | import { ElMessage, ElMessageBox } from 'element-plus' |
| | | import { useI18n } from 'vue-i18n' |
| | | const { t } = useI18n() |
| | | import { WebSocketHost ,host} from '@/utils/constants' |
| | | import request from "@/utils/request" |
| | | import { initializeWebSocket, closeWebSocket } from '@/utils/WebSocketService'; |
| | | import { ref, onMounted, onUnmounted, onBeforeUnmount } from "vue"; |
| | | const selectValuesa = reactive([]); |
| | | const selectedProjectNo = ref(''); // 当前选中的工程号 |
| | | const loadingline = ref(''); // 当前选中的上片线 |
| | | const dialogFormVisible = ref(false) |
| | | |
| | | |
| | | |
| | | |
| | | const blind = ref(false) |
| | | const blinda = ref(false) |
| | | const blindb = ref(false) |
| | | const add = ref(false) |
| | | const adda = ref(false) |
| | | const dialoglea = ref(false) |
| | | const tableDatax = ref([]) |
| | | const user = ref(''); |
| | | const projectNo = ref(''); |
| | | const workstationId = ref(''); |
| | | const id = ref(''); |
| | | const patternHeight = ref(''); |
| | | const patternWidth = ref(''); |
| | | const filmsId = ref(''); |
| | | const patternThickness = ref(''); |
| | | const number = ref(''); |
| | | const canSelectProject = ref(true); |
| | | const canStartLoading = ref(false); |
| | | const selectedValue = ref(''); // 当前选中的宽 |
| | | const selectedValuea = ref(''); |
| | | const selectedValueb = ref(''); |
| | | const selectedValuec = ref(''); |
| | | // const upstatus = ref('上片机手动状态:'); // 假设这个用于显示自动/手动状态 |
| | | const upstatus = ref(t('basicData.machineaa')); |
| | | const cuttingMachine = ref(''); // 假设这个用于存储后端返回的状态值(0或1) |
| | | const cuttingMachineStatusColor = ref('#911005'); // 用于动态设置i标签的背景色 |
| | | const inKageWord = ref(0); // 用于存储要传递给接口的inKageWord值 |
| | | const options = ref<any[]>([]); // 下拉选项列表 |
| | | const ida = ref(null); |
| | | const selectOptions = ref<Array<any>>([]); // 下拉选选项数组 |
| | | const selectOptionsa = ref<Array<any>>([]); // 下拉选选项数组 |
| | | const selectOptionsb = ref<Array<any>>([]); // 下拉选选项数组 |
| | | const selectOptionsc = ref<Array<any>>([]); // 下拉选选项数组 |
| | | const tableDataa = ref([]) |
| | | const tableData = reactive([]); |
| | | const handlezhiban = () => { |
| | | dialoglea.value = true; // 打开绑定架子对话框 |
| | | }; |
| | | const selectproject = () => { |
| | | dialogFormVisible.value = true; |
| | | }; |
| | | |
| | | |
| | | onMounted(() => { |
| | | // socket = initializeWebSocket(socketUrl, handleMessage); |
| | | }); |
| | | onUnmounted(() => { |
| | | if (socket) { |
| | | closeWebSocket(socket); |
| | | } |
| | | }); |
| | | //定义接收加载表头下拉数据 |
| | | const titleSelectJson = ref({ |
| | | processType: [], |
| | | }) |
| | | const titleSelectJsona = ref({ |
| | | processTypea: [], |
| | | }) |
| | | let socket = null; |
| | | const socketUrl = `ws://${WebSocketHost}:${host}/api/loadGlass/api/talk/loadGlass`; |
| | | // 定义消息处理函数,更新 receivedData 变量 |
| | | |
| | | const requestData = { |
| | | state: 100 |
| | | }; |
| | | |
| | | |
| | | onBeforeUnmount(() => { |
| | | closeWebSocket(); |
| | | }); |
| | | // 添加 |
| | | const handleBindRack = (row) => { |
| | | workstationId.value = row.workstationId; // 假设rackNumber是架号字段的属性名 |
| | | ida.value = row.id; |
| | | add.value = true; // 打开绑定架子对话框 |
| | | }; |
| | | // 暂停 |
| | | const handlea = async () => { |
| | | try { |
| | | let engineeringId = window.localStorage.getItem('engineeringId') |
| | | console.log(engineeringId); |
| | | if (engineeringId !== '') { |
| | | const response = await request.post('/loadGlass/engineering/engineering/pauseTask', { |
| | | engineeringId: engineeringId, |
| | | state: 0, |
| | | }) |
| | | if (response.code == 200) { |
| | | ElMessage.success(response.message); |
| | | blinda.value = false; |
| | | // tableData.splice([]); |
| | | } else { |
| | | // 请求失败,显示错误消息 |
| | | ElMessage.error(response.message); |
| | | } |
| | | } |
| | | else { |
| | | ElMessage({ |
| | | type: 'info', |
| | | message: t('basicData.infonull'), |
| | | }) |
| | | } |
| | | } |
| | | catch (error) { |
| | | // 处理错误 |
| | | console.error(error); |
| | | } |
| | | } |
| | | function getStatusText(state: number) { |
| | | switch (state) { |
| | | case 0: |
| | | return t('basicData.waiting'); |
| | | case 1: |
| | | return t('basicData.up'); |
| | | case 2: |
| | | return t('basicData.up'); |
| | | case 100: |
| | | return t('basicData.finish'); |
| | | } |
| | | } |
| | | function getStatusType(state: number) { |
| | | switch (state) { |
| | | case 0: |
| | | return 'warning'; |
| | | case 1: |
| | | return 'primary'; |
| | | case 2: |
| | | return 'primary'; |
| | | case 100: |
| | | return 'success'; |
| | | } |
| | | } |
| | | // 开始上片 |
| | | const handleBind = (row) => { |
| | | blind.value = true; // 打开绑定架子对话框 |
| | | }; |
| | | // 暂停 |
| | | const handleBinda = (row) => { |
| | | blinda.value = true; |
| | | }; |
| | | // 停止任务 |
| | | const handleBindb = (row) => { |
| | | blindb.value = true; |
| | | }; |
| | | |
| | | // 删除 |
| | | const handleBindRacka = (row) => { |
| | | workstationId.value = row.workstationId; |
| | | adda.value = true; |
| | | }; |
| | | const toggleEnableState = async (row: any) => { |
| | | // 检查 id 是否为空 |
| | | if (!row.id) { |
| | | ElMessage.error(t('basicData.updatanull')); |
| | | return; // 如果 id 为空,则不执行后续操作 |
| | | } |
| | | const newState = row.state === 100 ? 0 : 100; |
| | | try { |
| | | // 发送请求到后端更新状态 |
| | | const response = await request.post('/loadGlass/up-patten-usage/updateGlassState', { id: row.id, state: newState }); |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | row.state = newState; |
| | | } else { |
| | | ElMessage.error(response.message); |
| | | } |
| | | } catch (error) { |
| | | // 处理请求错误 |
| | | ElMessage.error(t('basicData.glassnull')); |
| | | } |
| | | }; |
| | | </script> |
| | | <template> |
| | | <div> |
| | | <div id="dotClass"> |
| | | <div>{{ $t('basicData.laserprinting') }}</div> |
| | | <i :style="{ marginTop: '2px', backgroundColor: markingMachineStatus, width: '18px', height: '18px', borderRadius: '50%', display: 'block' }"></i> |
| | | <el-button @click="confirmMarkingMachine" style="margin-left: 30px;margin-top: -3px;">{{ $t('basicData.yes') }}</el-button> |
| | | <div style="margin-left: 70px;">{{ $t('basicData.cuttingmachine') }}</div> |
| | | <i :style="{ marginTop: '2px', backgroundColor: cuttingMachineStatus, width: '18px', height: '18px', borderRadius: '50%', display: 'block' }"></i> |
| | | <el-button @click="confirmCuttingMachine" style="margin-left: 30px;margin-top: -3px;" >{{ $t('basicData.yes') }}</el-button> |
| | | <div style="margin-left: 70px;">{{ upstatus }} </div> |
| | | <i :style="{ marginTop: '2px', backgroundColor: cuttingMachineStatusColor, width: '18px', height: '18px', borderRadius: '50%', display: 'block' }"></i> |
| | | <el-button @click="confirmCutting" style="margin-left: 30px;margin-top: -3px;" >{{ $t('basicData.change') }}</el-button> |
| | | |
| | | </div> |
| | | <el-button style="margin-top: 5px;margin-left: 15px;" type="primary" @click="selectproject">{{ $t('Mounting.previewproject') }}</el-button> |
| | | <el-button style="margin-top: 5px;margin-left: 20px;" type="success" @click="handleBind">{{ $t('basicData.startloading') }}</el-button> |
| | | <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="warning" @click="handleBinda">{{ $t('basicData.stop') }}</el-button> |
| | | <el-button style="margin-top: 5px;margin-left: 20px;" id="searchButton" type="info" @click="handlezhiban">{{ $t('searchOrder.dutyinformation') }}</el-button> |
| | | <el-select v-model="selectValuesa[1]" clearable :placeholder="$t('Mounting.loadinglinea')" style="margin-top: 5px;margin-left: 20px;" > |
| | | <el-option :label="$t('Mounting.all')" value="0"></el-option> |
| | | <el-option :label="$t('Mounting.oneloadingline')" value="1"></el-option> |
| | | <el-option :label="$t('Mounting.twoloadingline')" value="2"></el-option> |
| | | </el-select> |
| | | <el-select v-model="selectValuesa[0]" clearable :placeholder="$t('film.taskstatus')" style="margin-top: 5px;margin-left: 20px;" > |
| | | <el-option :label="$t('Mounting.waiting')" value="1"></el-option> |
| | | <el-option :label="$t('film.execution')" value="2"></el-option> |
| | | <el-option :label="$t('film.finish')" value="3"></el-option> |
| | | </el-select> |
| | | <el-button type="primary" style="margin-left: 10px;" @click="selectReportData()">{{ $t('Mounting.setparameters') }}</el-button> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 15px;" v-loading="loading"> |
| | | <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;"> |
| | | <el-table |
| | | height="350" |
| | | ref="table" |
| | | :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}" |
| | | :data="tableData" |
| | | > |
| | | <el-table-column prop="layoutSequence" :label="$t('Mounting.project')" width="100" align="center"/> |
| | | <el-table-column prop="engineeringId" :label="$t('Mounting.width')" width="200" align="center"/> |
| | | <el-table-column prop="width" :label="$t('Mounting.height')" align="center"/> |
| | | <el-table-column prop="height" :label="$t('Mounting.thickness')" align="center"/> |
| | | <el-table-column prop="filmsId" :label="$t('Mounting.loadinglinea')" align="center"/> |
| | | <el-table-column :label="$t('Mounting.projectnumber')" align="center"> |
| | | <template #default="{ row }"> |
| | | <!-- 这里总是显示 1 --> |
| | | <span>{{ 1 }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | align="center" |
| | | :label="$t('Mounting.state')" |
| | | min-width="80" |
| | | prop="state" |
| | | > |
| | | <template #default="scope"> |
| | | <el-tag |
| | | :type="scope.row.state === 100 ? 'success' : 'warning'" |
| | | @click="toggleEnableState(scope.row)" |
| | | > |
| | | {{ scope.row.state === 100 ? $t('Mounting.pass') : $t('Mounting.waiting') }} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="filmsId" :label="$t('Mounting.createtime')" align="center"/> |
| | | </el-table> |
| | | </div> |
| | | </el-card> |
| | | <div style="display: flex;"> |
| | | <div style="width: 49%;float: left;"> |
| | | <div style="display: flex;"> |
| | | <img src="../../assets/shangpianji.png" alt="" style="max-width: 25%;max-height: 25%;margin-left: 10%;margin-top: 5%;"> |
| | | <el-table :data="tableDataa" border style="width: 75%;margin-top: 10%;margin-left: 2%;" |
| | | :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}" |
| | | > |
| | | <el-table-column prop="workstationId" align="center" :label="$t('basicData.station')" min-width="60" /> |
| | | <el-table-column prop="patternWidth" align="center" :label="$t('basicData.width')" min-width="80" /> |
| | | <el-table-column prop="patternHeight" align="center" :label="$t('basicData.height')" min-width="80" /> |
| | | <el-table-column prop="filmsId" align="center" :label="$t('basicData.coatingtypes')" min-width="80" /> |
| | | <el-table-column prop="number" align="center" :label="$t('basicData.quantity')" min-width="80" /> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | | <div style="width: 48%;float: right;"> |
| | | <div style="display: flex;"> |
| | | <img src="../../assets/shangpianji.png" alt="" style="max-width: 25%;max-height: 25%;margin-left: 10%;margin-top: 5%;"> |
| | | <el-table :data="tableDataa" border style="width: 75%;margin-top: 10%;margin-left: 2%;" |
| | | :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}" |
| | | > |
| | | <el-table-column prop="workstationId" align="center" :label="$t('basicData.station')" min-width="60" /> |
| | | <el-table-column prop="patternWidth" align="center" :label="$t('basicData.width')" min-width="80" /> |
| | | <el-table-column prop="patternHeight" align="center" :label="$t('basicData.height')" min-width="80" /> |
| | | <el-table-column prop="filmsId" align="center" :label="$t('basicData.coatingtypes')" min-width="80" /> |
| | | <el-table-column prop="number" align="center" :label="$t('basicData.quantity')" min-width="80" /> |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <el-dialog v-model="blind" top="30vh" width="25%" :title="$t('basicData.startfilm')"> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handle"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="blind = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | |
| | | <el-dialog v-model="dialoglea" top="15vh" width="70%" :title="$t('searchOrder.dutyinformation')"> |
| | | <el-table ref="table" style="margin-top: 20px;height: 300px;" |
| | | :data="tableDatax" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | | <el-table-column prop="line" fixed align="center" :label="$t('searchOrder.line')"/> |
| | | <el-table-column prop="workProcesses" fixed align="center" :label="$t('searchOrder.process')" /> |
| | | <el-table-column prop="teamsGroupsName" align="center" :label="$t('searchOrder.team')"> |
| | | <template #default="{ row }"> |
| | | <el-input v-model="row.teamsGroupsName" autocomplete="off" min-width="150"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="deviceName" align="center" :label="$t('searchOrder.basic')"> |
| | | <template #default="{ row }"> |
| | | <el-input v-model="row.deviceName" autocomplete="off" min-width="150"/> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleConfirm"> |
| | | {{ $t('searchOrder.add') }} |
| | | </el-button> |
| | | <el-button @click="dialoglea = false">{{ $t('searchOrder.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="blinda" top="24vh" width="30%" :title="$t('basicData.whetherpause')"> |
| | | <div style="margin-left: 50px;margin-bottom: 10px;"> |
| | | <el-form-item :label="$t('Mounting.loadingline')" :required="true"> |
| | | <el-select v-model="loadingline" clearable :placeholder="$t('Mounting.inloadingline')" style="margin-left: 20px;" > |
| | | <el-option :label="$t('Mounting.all')" value="0"></el-option> |
| | | <el-option :label="$t('Mounting.oneloadingline')" value="1"></el-option> |
| | | <el-option :label="$t('Mounting.twoloadingline')" value="2"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleup"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="blinda = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | |
| | | <el-dialog v-model="add" top="23vh" width="45%" :title="$t('basicData.addglass')" > |
| | | <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;"> |
| | | <el-form size="mini" label-width="150px"> |
| | | <el-form label-width="70px" label-position="right"> |
| | | <el-row style="margin-top: -15px;margin-bottom: -2px;"> |
| | | <el-col :span="6"> |
| | | <div id="dt" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('basicData.widtha')" :required="true" style="width: 14vw"> |
| | | <el-select |
| | | v-model="selectedValue" |
| | | filterable |
| | | clearable |
| | | :placeholder="$t('basicData.selectwidth')" |
| | | style="width: 220px" |
| | | @input="handleInputChangea" |
| | | > |
| | | <el-option |
| | | v-for="item in selectOptions" |
| | | :key="item.id" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div></div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('basicData.heighta')" :required="true" style="width: 14vw"> |
| | | <el-select |
| | | v-model="selectedValuea" |
| | | filterable |
| | | clearable |
| | | :placeholder="$t('basicData.selectheight')" |
| | | style="width: 220px" |
| | | @input="handleInputChangea" |
| | | > |
| | | <el-option |
| | | v-for="item in selectOptionsa" |
| | | :key="item.id" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item></div> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row style="margin-top: 10px;"> |
| | | <el-col :span="6"> |
| | | <div id="dt" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('basicData.coatingtypesa')" :required="true" style="width: 14vw;"> |
| | | <el-select |
| | | v-model="selectedValueb" |
| | | filterable |
| | | clearable |
| | | :placeholder="$t('basicData.selectcoatingtypes')" |
| | | style="width: 220px" |
| | | @input="handleInputChangea" |
| | | > |
| | | <el-option |
| | | v-for="item in selectOptionsb" |
| | | :key="item.id" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item></div></div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('basicData.thicknessa')" :required="true" style="width: 14vw"> |
| | | <el-select |
| | | v-model="selectedValuec" |
| | | filterable |
| | | clearable |
| | | :placeholder="$t('basicData.selectthickness')" |
| | | style="width: 220px" |
| | | @input="handleInputChangea" |
| | | > |
| | | <el-option |
| | | v-for="item in selectOptionsc" |
| | | :key="item.id" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | <!-- <el-input v-model="patternThickness" autocomplete="off" /> --> |
| | | </el-form-item></div></div> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row style="margin-top: 10px;"> |
| | | <el-col :span="6"> |
| | | <div id="dt" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('basicData.quantitya')" :required="true" style="width: 14vw;"> |
| | | <el-input :placeholder="$t('basicData.selectquantity')" v-model="number" autocomplete="off" /> |
| | | </el-form-item></div></div> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | </el-form> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleConfirm"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="add = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="adda" top="30vh" width="25%" :title="$t('basicData.deletemessage')"> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleConfirma"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="adda = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | </div> |
| | | <el-dialog v-model="dialogFormVisible" top="24vh" width="50%" > |
| | | <div class="flex-container" style="margin-left: 50px;margin-bottom: 10px;"> |
| | | <el-form-item :label="$t('Mounting.loadingline')" :required="true"> |
| | | <el-select v-model="loadingline" clearable :placeholder="$t('Mounting.inloadingline')" > |
| | | <el-option :label="$t('Mounting.oneloadingline')" value="1"></el-option> |
| | | <el-option :label="$t('Mounting.twoloadingline')" value="2"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item :label="$t('Mounting.projecta')" :required="true"> |
| | | <el-select |
| | | v-model="selectedProjectNo" |
| | | filterable |
| | | clearable |
| | | :placeholder="$t('basicData.plselectproject')" |
| | | style="width: 220px" |
| | | @input="handleInputChange" |
| | | > |
| | | <el-option |
| | | v-for="item in titleSelectJson['processType']" |
| | | :key="item.id" |
| | | :label="item.projectNo" |
| | | :value="item.projectNo" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleup"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="dialogFormVisible = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | </template> |
| | | |
| | | <style scoped> |
| | | .flex-container { |
| | | display: flex; |
| | | align-items: center; /* 垂直居中 */ |
| | | } |
| | | .flex-container .el-form-item { |
| | | flex: 1; /* 使每个表单项占据相等的空间 */ |
| | | margin-right: 0; /* 移除默认的右侧边距 */ |
| | | } |
| | | .flex-container .el-form-item:last-child { |
| | | margin-left: 20px; /* 为第二个表单项添加左侧边距 */ |
| | | } |
| | | |
| | | |
| | | |
| | | #dt { display:block; float:left;line-height: 20px;margin-left: 100px;} |
| | | #dta { display:block; float:left;line-height: 20px;margin-left: 80%;} |
| | | #dialog-footer{ |
| | | text-align: center; |
| | | margin-top: -15px; |
| | | } |
| | | #dotClass { |
| | | display: flex; |
| | | margin-left: 20px; |
| | | size: 50px; |
| | | margin-top: 20px; |
| | | margin-bottom: 10px; |
| | | } |
| | | </style> |
| | |
| | | <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="success" @click="dialogFormVisibleb = true">{{ $t('searchOrder.productionqueue') }}</el-button> |
| | | <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="warning" @click="handleganghua">{{ $t('searchOrder.temperingqueries') }}</el-button> |
| | | <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="info" @click="handlezhiban">{{ $t('searchOrder.dutyinformation') }}</el-button> |
| | | <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="info" @click="dialogFormVisibles=true;fetchFlows()">非钢化流程卡查询</el-button> |
| | | <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="info" @click="dialogFormVisibles=true;fetchFlows()">{{ $t('searchOrder.searchlayout') }}</el-button> |
| | | <el-switch style="margin-top: 5px;margin-left: 10px;" v-model="ganghua" class="mb-2" :inactive-text="$t('searchOrder.temperedswitch')" @change="handleChange" /> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 5px;" v-loading="loading"> |
| | | <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;max-height: 100px;"> |
| | |
| | | </el-col> |
| | | <el-col :span="4"> |
| | | <div id="dt" style="font-size: 15px;"> |
| | | <el-form-item :label="$t('满炉数量')" style="width: 14vw"> |
| | | <el-form-item :label="$t('searchOrder.fullfurnaces')" style="width: 14vw"> |
| | | {{ fulltotals }} |
| | | </el-form-item> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="4"> |
| | | <div id="dt" style="font-size: 15px;"> |
| | | <el-form-item :label="$t('当前指定工程')" style="width: 14vw"> |
| | | <el-form-item :label="$t('searchOrder.specifiedproject')" style="width: 14vw"> |
| | | {{ temperingengineerId }} |
| | | </el-form-item> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="4"> |
| | | <div id="dt" style="font-size: 15px;"> |
| | | <el-button size="mini" type="text" plain @click="broked()">{{ $t('取消指定') }}</el-button> |
| | | <el-button size="mini" type="text" plain @click="broked()">{{ $t('searchOrder.undesignate') }}</el-button> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | |
| | | :data="tableDatagh" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | | <el-table-column prop="engineer_id" fixed align="center" :label="$t('searchOrder.projectnumber')" min-width="150"/> |
| | | <el-table-column prop="tempering_layout_id" fixed align="center" :label="$t('searchOrder.layoutnumber')" min-width="120" /> |
| | | <el-table-column prop="count2" align="center" :label="$t('总数量')" min-width="150" /> |
| | | <el-table-column prop="count1" align="center" :label="$t('笼子内数量')" min-width="150" /> |
| | | <el-table-column prop="count3" align="center" :label="$t('缺少数量')" min-width="150" /> |
| | | <el-table-column prop="count4" align="center" :label="$t('破损/拿走数量')" min-width="150" /> |
| | | <el-table-column prop="count2" align="center" :label="$t('searchOrder.allnumber')" min-width="150" /> |
| | | <el-table-column prop="count1" align="center" :label="$t('searchOrder.numbercages')" min-width="150" /> |
| | | <el-table-column prop="count3" align="center" :label="$t('searchOrder.missingquantity')" min-width="150" /> |
| | | <el-table-column prop="count4" align="center" :label="$t('searchOrder.breakquantity')" min-width="150" /> |
| | | <el-table-column fixed="right" :label="$t('searchOrder.operate')" align="center" width="250"> |
| | | <template #default="scope"> |
| | | <el-button size="mini" type="text" plain @click="brokee(scope.row,1)">{{ $t('searchOrder.specifytempering') }}</el-button> |
| | |
| | | <el-table ref="table" style="margin-top: 20px;height: 500px;" |
| | | :data="tableDatas" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | | <el-table-column prop="flow_card_id" fixed align="center" :label="$t('searchOrder.processcards')"/> |
| | | <el-table-column prop="layer" align="center" label="层" /> |
| | | <el-table-column prop="layer" align="center" :label="$t('searchOrder.ceng')" /> |
| | | <el-table-column prop="count" align="center" :label="$t('searchOrder.numberglasses')" /> |
| | | <el-table-column fixed="right" :label="$t('searchOrder.operate')" align="center" > |
| | | <template #default="scope"> |
| | |
| | | <template> |
| | | <div> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading"> |
| | | <el-select v-model="selectValuesa[0]" filterable :placeholder="$t('请选择线路')" clearable style="margin-left: 20px;margin-bottom: 10px;"> |
| | | <el-option label="磨边一线" value="2001"></el-option> |
| | | <el-option label="磨边二线" value="2002"></el-option> |
| | | <el-select v-model="selectValuesa[0]" filterable :placeholder="$t('workOrder.cway')" clearable style="margin-left: 20px;margin-bottom: 10px;"> |
| | | <el-option :label="$t('workOrder.edgingone')" value="2001"></el-option> |
| | | <el-option :label="$t('workOrder.edgingtwo')" value="2002"></el-option> |
| | | </el-select> |
| | | |
| | | <el-select v-model="selectValuesa[1]" filterable :placeholder="$t('请选择状态')" clearable style="margin-left: 20px;margin-bottom: 10px;" > |
| | | <el-option label="未磨边" value="0"></el-option> |
| | | <el-option label="磨边中" value="1"></el-option> |
| | | <el-option label="已磨边" value="2"></el-option> |
| | | <el-select v-model="selectValuesa[1]" filterable :placeholder="$t('workOrder.cstate')" clearable style="margin-left: 20px;margin-bottom: 10px;" > |
| | | <el-option :label="$t('workOrder.nedging')" value="0"></el-option> |
| | | <el-option :label="$t('workOrder.edging')" value="1"></el-option> |
| | | <el-option :label="$t('workOrder.finedging')" value="2"></el-option> |
| | | </el-select> |
| | | <span class="demonstration" style="margin-left: 20px;margin-bottom: 10px;">时间段</span> |
| | | <el-date-picker v-model="timeRange" type="datetimerange" range-separator="至" start-placeholder="开始日期" style="margin-left: 20px;margin-bottom: 10px;" value-format = "YYYY-MM-DD hh:mm:ss" |
| | | <span class="demonstration" style="margin-left: 20px;margin-bottom: 10px;">{{ $t('workOrder.time') }}</span> |
| | | <el-date-picker v-model="timeRange" type="datetimerange" range-separator="至" :start-placeholder="$t('reportmanage.starttime')" style="margin-left: 20px;margin-bottom: 10px;" value-format = "YYYY-MM-DD hh:mm:ss" |
| | | |
| | | end-placeholder="结束日期"> |
| | | :end-placeholder="$t('reportmanage.endtime')"> |
| | | </el-date-picker> |
| | | <el-button type="primary" style="margin-left: 10px;margin-bottom: 10px;" @click="setEdgGlassInfoRequest()">{{ |
| | | $t('reportmanage.inquire') |
| | |
| | | <template> |
| | | <div> |
| | | <el-button style="margin-top: 10px;margin-left: 10px;margin-bottom: 10px;" id="searchButton" type="primary" |
| | | @click="dialogFormVisibleaDownGlass = true">落架详情 |
| | | @click="dialogFormVisibleaDownGlass = true">{{ $t('reportWork.details') }} |
| | | </el-button> |
| | | <el-button style="margin-top: 10px;margin-left: 10px;margin-bottom: 10px;" id="searchButton" type="primary" |
| | | @click="dialogFormVisibleaDownGlasss = true">人工下片 |
| | | @click="dialogFormVisibleaDownGlasss = true">{{ $t('reportWork.filming') }} |
| | | </el-button> |
| | | <el-switch style="margin-top: 10px;margin-left: 15px;margin-bottom: 10px;" v-model="autoPrint" class="mb-2" |
| | | :inactive-text="$t('自动打印')" @change="handleChange" /> |
| | | :inactive-text="$t('basicData.printing')" @change="handleChange" /> |
| | | <el-card style="flex: 1;" v-loading="loading"> |
| | | <el-card style="flex: 1;margin-left: 4px;margin-top: 1px;" v-loading="loading"> |
| | | <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;"> |
| | |
| | | <el-table-column prop="totalQuantity" align="center" :label="$t('reportWork.totalquantity')" |
| | | min-width="120" /> |
| | | <el-table-column prop="racksNumber" align="center" :label="$t('reportWork.beendropped')" min-width="120" /> |
| | | <el-table-column prop="layer" align="center" label="层数" min-width="120" /> |
| | | <el-table-column prop="otherNumber" align="center" label="人工下片数" min-width="120" /> |
| | | <el-table-column prop="layer" align="center" :label="$t('reportWork.cenumber')" min-width="120" /> |
| | | <el-table-column prop="otherNumber" align="center" :label="$t('reportWork.artificialorder')" min-width="120" /> |
| | | <!-- <el-table-column prop="work_state" align="center" :label="$t('reportWork.state')" min-width="120" /> --> |
| | | <el-table-column prop="deviceId" align="center" :label="$t('reportWork.devicenumber')" min-width="120" /> |
| | | <el-table-column align="center" :label="$t('reportWork.startstatus')" min-width="80" prop="enableState"> |
| | |
| | | </el-button> |
| | | <el-button size="mini" type="text" plain @click="handleBindRack2(scope.row)">{{ $t('reportWork.clear') |
| | | }}</el-button> |
| | | <el-button @click="open(scope.row)" :disabled="scope.row.flowCardId == null">打印流程卡</el-button> |
| | | <el-button @click="open1(scope.row)" :disabled="scope.row.flowCardId == null">打印标签</el-button> |
| | | <el-button @click="open(scope.row)" :disabled="scope.row.flowCardId == null">{{ $t('reportWork.processcard') }}</el-button> |
| | | <el-button @click="open1(scope.row)" :disabled="scope.row.flowCardId == null">{{ $t('reportWork.printlabels') }}</el-button> |
| | | </template> |
| | | |
| | | </el-table-column> |
| | | </el-table> |
| | | |
| | | </div> |
| | | <el-dialog v-model="dialogFormVisibleaDownGlass" top="2vh" width="97%" :title="$t('落架信息')"> |
| | | <el-select v-model="selectValuesa[0]" filterable :placeholder="$t('请选择工位')" clearable> |
| | | <el-option label="全部" value="0"></el-option> |
| | | <el-dialog v-model="dialogFormVisibleaDownGlass" top="2vh" width="97%" :title="$t('reportWork.information')"> |
| | | <el-select v-model="selectValuesa[0]" filterable :placeholder="$t('reportWork.cstation')" clearable> |
| | | <el-option :label="$t('reportWork.all')" value="0"></el-option> |
| | | <el-option label="1" value="1"></el-option> |
| | | <el-option label="2" value="2"></el-option> |
| | | <el-option label="3" value="3"></el-option> |
| | |
| | | <el-option v-for="item in selectOptionsa" :key="item" :label="item" :value="item" /> |
| | | </el-select> |
| | | |
| | | <span class="demonstration">时间段</span> |
| | | <el-date-picker v-model="timeRange" type="datetimerange" range-separator="至" start-placeholder="开始日期" |
| | | value-format="YYYY-MM-DD hh:mm:ss" end-placeholder="结束日期"> |
| | | <span class="demonstration">{{ $t('reportWork.timeperiod') }}</span> |
| | | <el-date-picker v-model="timeRange" type="datetimerange" range-separator="至" :start-placeholder="$t('reportmanage.starttime')" |
| | | value-format="YYYY-MM-DD hh:mm:ss" :end-placeholder="$t('reportmanage.endtime')"> |
| | | </el-date-picker> |
| | | |
| | | <el-button type="primary" style="margin-left: 10px;" @click="selectDownGlassData()">{{ |
| | |
| | | </el-button> |
| | | <el-table height="200px" ref="table" @selection-change="handleSelectionChange" :data="downGlass" |
| | | :header-cell-style="{ background: '#F2F3F5 ', color: '#1D2129' }"> |
| | | <el-table-column prop="workStationId" align="center" :label="$t('工位号')" min-width="80" /> |
| | | <el-table-column prop="engineerId" align="center" :label="$t('工程号')" min-width="80" /> |
| | | <el-table-column prop="flowCardId" align="center" :label="$t('流程卡号')" min-width="80" /> |
| | | <el-table-column prop="layer" align="center" :label="$t('层')" min-width="120" /> |
| | | <el-table-column prop="sequence" align="center" :label="$t('顺序')" min-width="150" /> |
| | | <el-table-column prop="width" align="center" :label="$t('宽')" min-width="120" /> |
| | | <el-table-column prop="height" align="center" :label="$t('高')" min-width="120" /> |
| | | <el-table-column prop="Filmsid" align="center" :label="$t('膜系')" min-width="120" /> |
| | | <el-table-column prop="thickness" align="center" label="厚度" min-width="120" /> |
| | | <el-table-column prop="glassId" align="center" :label="$t('玻璃id')" min-width="120" /> |
| | | <el-table-column prop="workStationId" align="center" :label="$t('reportWork.stationnumber')" min-width="80" /> |
| | | <el-table-column prop="engineerId" align="center" :label="$t('basicData.projectnumber')" min-width="80" /> |
| | | <el-table-column prop="flowCardId" align="center" :label="$t('workOrder.cardnumber')" min-width="80" /> |
| | | <el-table-column prop="layer" align="center" :label="$t('searchOrder.ceng')" min-width="120" /> |
| | | <el-table-column prop="sequence" align="center" :label="$t('reportWork.order')" min-width="150" /> |
| | | <el-table-column prop="width" align="center" :label="$t('basicData.width')" min-width="120" /> |
| | | <el-table-column prop="height" align="center" :label="$t('basicData.height')" min-width="120" /> |
| | | <el-table-column prop="Filmsid" align="center" :label="$t('basicData.coatingtypes')" min-width="120" /> |
| | | <el-table-column prop="thickness" align="center" :label="$t('basicData.thickness')" min-width="120" /> |
| | | <el-table-column prop="glassId" align="center" :label="$t('searchOrder.glassID')" min-width="120" /> |
| | | </el-table> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisibleaDownGlasss" top="2vh" width="97%" :title="$t('人工下片信息')"> |
| | | <el-dialog v-model="dialogFormVisibleaDownGlasss" top="2vh" width="97%" :title="$t('searchOrder.filminformation')"> |
| | | <div style="display:flex;justify-content: space-around;"> |
| | | <el-card |
| | | style="display: flex; justify-content: center; align-items: center; width:800px; height: 800px;position: relative;"> |
| | |
| | | |
| | | </div> |
| | | <div style="font-size: 50px; text-align: center;position: absolute;top:0px;left:170px;"> |
| | | <div>人工下片当前玻璃信息</div> |
| | | <div><el-button type="primary" @click="open1(takeGlass)" >打印标签</el-button></div> |
| | | <div>{{ $t('reportWork.glassmation') }}</div> |
| | | <div><el-button type="primary" @click="open1(takeGlass)" >{{ $t('reportWork.printlabels') }}</el-button></div> |
| | | <div>{{ takeGlass.flowCardId }}</div> |
| | | <div>{{ takeGlass.layer }}</div> |
| | | <div>{{ takeGlass.glassId }}</div> |
| | |
| | | |
| | | </div> |
| | | <div style="font-size: 50px; text-align: center;position: absolute;top:0px;left:200px;"> |
| | | <div>扫码枪当前玻璃信息</div> |
| | | <div><el-button type="primary" @click="open1(scanGlass)" >打印标签</el-button></div> |
| | | <div>{{ $t('reportWork.barcodescanner') }}</div> |
| | | <div><el-button type="primary" @click="open1(scanGlass)" >{{ $t('reportWork.printlabels') }}</el-button></div> |
| | | <div>{{ scanGlass.flowCardId }}</div> |
| | | <div>{{ scanGlass.layer }}</div> |
| | | <div>{{ scanGlass.glassId }}</div> |