| | |
| | | <script lang="ts" setup> |
| | | import { onBeforeUnmount, onMounted, reactive, ref } from "vue"; |
| | | import { useRouter } from "vue-router" |
| | | import { ElMessage, ElMessageBox } from 'element-plus' |
| | | import { useI18n } from 'vue-i18n' |
| | | import { host, WebSocketHost } from '@/utils/constants' |
| | | import {onBeforeUnmount, onMounted, reactive, ref} from "vue"; |
| | | import {useRouter} from "vue-router" |
| | | import {ElMessage, ElMessageBox} from 'element-plus' |
| | | import {useI18n} from 'vue-i18n' |
| | | import {host, WebSocketHost} from '@/utils/constants' |
| | | import dayjs from 'dayjs'; |
| | | import request from "@/utils/request" |
| | | import { closeWebSocket, initializeWebSocket } from '@/utils/WebSocketService'; |
| | | import {closeWebSocket, initializeWebSocket} from '@/utils/WebSocketService'; |
| | | import { inject } from 'vue'; |
| | | const router = useRouter() |
| | | const tableDataa = ref([]) |
| | | const tableDatab = ref([]) |
| | | const tableDatad = ref([]) |
| | | const { t } = useI18n() |
| | | const {t} = useI18n() |
| | | const add = ref(false) |
| | | const dialogFormVisiblea = ref(false) |
| | | const dialogFormVisibleb = ref(false) |
| | |
| | | const slot = ref(''); |
| | | const leftingStation = ref(''); |
| | | const loadingline = ref(''); |
| | | let webSocket: WebSocket | null = null; |
| | | let webSocket: WebSocket | null = null; |
| | | const globalDate = inject('globalDate'); |
| | | const value = ref('') |
| | | const options = [ |
| | |
| | | taskType: '', |
| | | taskState: '', |
| | | }); |
| | | let startTime = window.localStorage.getItem('startTime') |
| | | request.post("/glassStorage/rawGlassStorageTask/setRawGlassTaskRequest", { |
| | | let startTime = window.localStorage.getItem('startTime') |
| | | request.post("/glassStorage/rawGlassStorageTask/setRawGlassTaskRequest",{ |
| | | beginDate: startTime, |
| | | endDate: globalDate, |
| | | }).then((response) => { |
| | | if (response.code == 200) { |
| | | } else { |
| | | ElMessage.warning(response.msg) |
| | | } |
| | | }); |
| | | if (response.code == 200) { |
| | | } else { |
| | | ElMessage.warning(response.msg) |
| | | } |
| | | }); |
| | | // 格式化后端时间并计算一周前的时间 |
| | | const defaultTime = ref<[Date, Date]>([new Date(), new Date()]); |
| | | function parseAndSetTime() { |
| | |
| | | timeRangea.value = [formatTimestamp(oneWeekAgo), formatTimestamp(backendTime)]; |
| | | window.localStorage.setItem('startTime', formatTimestamp(oneWeekAgo)) |
| | | } |
| | | onMounted(() => { |
| | | onMounted(() => { |
| | | socket = initializeWebSocket(socketUrl, handleMessage); |
| | | parseAndSetTime(); |
| | | }); |
| | | let socket = null; |
| | | const socketUrl = `ws://${WebSocketHost}:${host}/api/glassStorage/api/talk/rawGlass`; |
| | | const handleMessage = (data) => { |
| | | const formattedTasks = data.tasks[0].map(task => { |
| | | if (task && task.createTime) { |
| | | return { ...task, createTime: formatTimestamp(task.createTime) }; |
| | | } |
| | | return task; |
| | | }); |
| | | tableDataa.value = formattedTasks; |
| | | if (data.rawStationDetailsList != null) { |
| | | tableDatab.value = data.rawStationDetailsList[0] |
| | | if (data.rawStationDetailsList[0][0].patternThickness != null) { |
| | | card1.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][1].patternThickness != null) { |
| | | card2.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][2].patternThickness != null) { |
| | | card3.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][3].patternThickness != null) { |
| | | card4.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][4].patternThickness != null) { |
| | | card5.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][5].patternThickness != null) { |
| | | card6.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][6].patternThickness != null) { |
| | | card7.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][7].patternThickness != null) { |
| | | card8.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][8].patternThickness != null) { |
| | | card9.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][9].patternThickness != null) { |
| | | card10.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][10].patternThickness != null) { |
| | | card11.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][11].patternThickness != null) { |
| | | card12.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][12].patternThickness != null) { |
| | | card13.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][13].patternThickness != null) { |
| | | card14.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][14].patternThickness != null) { |
| | | card15.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][15].patternThickness != null) { |
| | | card16.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][16].patternThickness != null) { |
| | | card17.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][17].patternThickness != null) { |
| | | card18.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][18].patternThickness != null) { |
| | | card19.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][19].patternThickness != null) { |
| | | card20.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][20].patternThickness != null) { |
| | | card21.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][21].patternThickness != null) { |
| | | card22.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][22].patternThickness != null) { |
| | | card23.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][23].patternThickness != null) { |
| | | card24.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][24].patternThickness != null) { |
| | | card25.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][25].patternThickness != null) { |
| | | card98.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][26].patternThickness != null) { |
| | | card99.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][27].patternThickness != null) { |
| | | card101.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][28].patternThickness != null) { |
| | | card102.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][29].patternThickness != null) { |
| | | card103.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][30].patternThickness != null) { |
| | | card104.value = true |
| | | } |
| | | const formattedTasks = data.tasks[0].map(task => { |
| | | if (task && task.createTime) { |
| | | return { ...task, createTime: formatTimestamp(task.createTime) }; |
| | | } |
| | | return task; |
| | | }); |
| | | tableDataa.value = formattedTasks; |
| | | if(data.rawStationDetailsList !=null){ |
| | | tableDatab.value = data.rawStationDetailsList[0] |
| | | if (data.rawStationDetailsList[0][0].patternThickness !=null) { |
| | | card1.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][1].patternThickness !=null) { |
| | | card2.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][2].patternThickness !=null) { |
| | | card3.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][3].patternThickness !=null) { |
| | | card4.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][4].patternThickness !=null) { |
| | | card5.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][5].patternThickness !=null) { |
| | | card6.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][6].patternThickness !=null) { |
| | | card7.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][7].patternThickness !=null) { |
| | | card8.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][8].patternThickness !=null) { |
| | | card9.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][9].patternThickness !=null) { |
| | | card10.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][10].patternThickness !=null) { |
| | | card11.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][11].patternThickness !=null) { |
| | | card12.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][12].patternThickness !=null) { |
| | | card13.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][13].patternThickness !=null) { |
| | | card14.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][14].patternThickness !=null) { |
| | | card15.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][15].patternThickness !=null) { |
| | | card16.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][16].patternThickness !=null) { |
| | | card17.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][17].patternThickness !=null) { |
| | | card18.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][18].patternThickness !=null) { |
| | | card19.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][19].patternThickness !=null) { |
| | | card20.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][20].patternThickness !=null) { |
| | | card21.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][21].patternThickness !=null) { |
| | | card22.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][22].patternThickness !=null) { |
| | | card23.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][23].patternThickness !=null) { |
| | | card24.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][24].patternThickness !=null) { |
| | | card25.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][25].patternThickness !=null) { |
| | | card98.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][26].patternThickness !=null) { |
| | | card99.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][27].patternThickness !=null) { |
| | | card101.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][28].patternThickness !=null) { |
| | | card102.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][29].patternThickness !=null) { |
| | | card103.value = true |
| | | } |
| | | if (data.rawStationDetailsList[0][30].patternThickness !=null) { |
| | | card104.value = true |
| | | } |
| | | } |
| | | }; |
| | | const handleEdit = (row) => { |
| | |
| | | const handleBinde = (row) => { |
| | | dialogFormVisiblee.value = true; |
| | | }; |
| | | // 删除 |
| | | const deleteWarehousing = async (row) => { |
| | | // 删除 |
| | | const deleteWarehousing = async(row) => { |
| | | try { |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('film.dedelete'), |
| | | t('productStock.prompt'), |
| | | { |
| | | confirmButtonText: t('productStock.yes'), |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('film.dedelete'), |
| | | t('productStock.prompt'), |
| | | { |
| | | confirmButtonText: t('productStock.yes'), |
| | | cancelButtonText: t('productStock.cancel'), |
| | | type: 'warning', |
| | | } |
| | | type: 'warning', |
| | | } |
| | | ); |
| | | if (confirmResult === 'confirm') { |
| | | var url = "/glassStorage/rawGlassStorageDetails/deleteWarehousing?slot=" + row.slot; |
| | | const response = await request.post(url) |
| | | var url="/glassStorage/rawGlassStorageDetails/deleteWarehousing?slot="+row.slot; |
| | | const response = await request.post(url) |
| | | // const response = await request.post("/glassStorage/rawGlassStorageDetails/deleteWarehousing",[row.slotId]) |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | } else { |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | } catch (error) { |
| | | } |
| | | } |
| | | }; |
| | | // 原片入库 |
| | | const handleup = async () => { |
| | |
| | | filmsId: filmsId.value, |
| | | remainQuantity: remainQuantity.value, |
| | | slot: slot.value, |
| | | }); |
| | | }); |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | dialogFormVisibleb.value = false; |
| | |
| | | }; |
| | | // 入库请求 |
| | | const handleupc = async () => { |
| | | try { |
| | | var url = "/glassStorage/rawGlassStorageDetails/warehousingRequest?leftingStation=" + leftingStation.value; |
| | | const response = await request.post(url) |
| | | try { |
| | | var url="/glassStorage/rawGlassStorageDetails/warehousingRequest?leftingStation="+leftingStation.value; |
| | | const response = await request.post(url) |
| | | if (response.code == 200) { |
| | | ElMessage.success(response.message); |
| | | dialogFormVisiblec.value = false; |
| | |
| | | // 请求失败,显示错误消息 |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | catch (error) { |
| | | } |
| | | catch (error) { |
| | | } |
| | | } |
| | | // 出库请求 |
| | | const handleupe = async () => { |
| | | try { |
| | | var url = "/glassStorage/rawGlassStorageDetails/outWarehousingRequest?leftingStation=" + leftingStation.value; |
| | | const response = await request.post(url) |
| | | try { |
| | | var url="/glassStorage/rawGlassStorageDetails/outWarehousingRequest?leftingStation="+leftingStation.value; |
| | | const response = await request.post(url) |
| | | if (response.code == 200) { |
| | | ElMessage.success(response.message); |
| | | dialogFormVisiblee.value = false; |
| | |
| | | // 请求失败,显示错误消息 |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | catch (error) { |
| | | } |
| | | catch (error) { |
| | | } |
| | | } |
| | | // 出库 |
| | | const openc = async (row) => { |
| | | // 出库 |
| | | const openc = async(row) => { |
| | | try { |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('film.deoutbound'), |
| | | t('productStock.prompt'), |
| | | { |
| | | confirmButtonText: t('productStock.yes'), |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('film.deoutbound'), |
| | | t('productStock.prompt'), |
| | | { |
| | | confirmButtonText: t('productStock.yes'), |
| | | cancelButtonText: t('productStock.cancel'), |
| | | type: 'warning', |
| | | } |
| | | type: 'warning', |
| | | } |
| | | ); |
| | | if (confirmResult === 'confirm') { |
| | | var url = "/glassStorage/rawGlassStorageDetails/outWarehousing?slotId=" + row.slot; |
| | | var url="/glassStorage/rawGlassStorageDetails/outWarehousing?slotId="+row.slot; |
| | | const response = await request.post(url) |
| | | // const response = await request.post("/glassStorage/rawGlassStorageDetails/outWarehousing",[row.slotId]) |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | } else { |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | } catch (error) { |
| | | } |
| | | }; |
| | | } |
| | | }; |
| | | // 查询数据 |
| | | const selectReportData = async () => { |
| | | let celllist = [] |
| | | let stateList = [] |
| | | if (selectValuesa[0] != null && selectValuesa[0] != 'undefined') { |
| | | if (selectValuesa[0] != "") { |
| | | celllist = [selectValuesa[0]]; |
| | | let celllist=[] |
| | | let stateList=[] |
| | | if(selectValuesa[0]!=null&&selectValuesa[0]!='undefined'){ |
| | | if(selectValuesa[0]!=""){ |
| | | celllist=[selectValuesa[0]]; |
| | | } |
| | | } |
| | | if (selectValuesa[1] != null && selectValuesa[1] != 'undefined') { |
| | | if (selectValuesa[1] != "") { |
| | | stateList = [selectValuesa[1]]; |
| | | if(selectValuesa[1]!=null&&selectValuesa[1]!='undefined'){ |
| | | if(selectValuesa[1]!=""){ |
| | | stateList=[selectValuesa[1]]; |
| | | } |
| | | } |
| | | const response = await request.post("/glassStorage/rawGlassStorageTask/setRawGlassTaskRequest", { |
| | |
| | | if (response.code === 200) { |
| | | // tableDataa.value = response.data; |
| | | ElMessage.success(response.message); |
| | | } |
| | | } |
| | | else { |
| | | ElMessage.error(response.message); |
| | | } |
| | | }; |
| | | // 是否禁用 |
| | | const toggleEnableState = async (row: any) => { |
| | | if (!row.deviceId) { |
| | | ElMessage.error(t('basicData.updatanull')); |
| | | if (!row.deviceId) { |
| | | ElMessage.error(t('basicData.updatanull')); |
| | | return; |
| | | } |
| | | } |
| | | const newState = row.state === 1 ? 0 : 1; |
| | | try { |
| | | var url = "/glassStorage/rawGlassStorageStation/updateSlotState?slot=" + row.slot + "&state=" + newState; |
| | | var url="/glassStorage/rawGlassStorageStation/updateSlotState?slot="+row.slot + "&state=" + newState; |
| | | const response = await request.post(url) |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | row.state = newState; |
| | | } else { |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | row.state = newState; |
| | | } else { |
| | | ElMessage.error(response.message); |
| | | } |
| | | row.state = newState; |
| | | } catch (error) { |
| | | row.state = newState; |
| | | } catch (error) { |
| | | ElMessage.error(t('basicData.glassnull')); |
| | | } |
| | | }; |
| | |
| | | patternThickness: patternThickness.value, |
| | | patternHeight: patternHeight.value, |
| | | patternWidth: patternWidth.value, |
| | | } |
| | | ); |
| | | } |
| | | ); |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | Edit.value = false; |
| | |
| | | // } |
| | | // } |
| | | // 任务成功处理 |
| | | const successfull = async (row) => { |
| | | const successfull = async(row) => { |
| | | try { |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('searchOrder.psuccessfullyprocessed'), |
| | | t('workOrder.prompt'), |
| | | { |
| | | confirmButtonText: t('workOrder.yes'), |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('searchOrder.psuccessfullyprocessed'), |
| | | t('workOrder.prompt'), |
| | | { |
| | | confirmButtonText: t('workOrder.yes'), |
| | | cancelButtonText: t('workOrder.cancel'), |
| | | type: 'warning', |
| | | } |
| | | type: 'warning', |
| | | } |
| | | ); |
| | | if (confirmResult === 'confirm') { |
| | | var url = "/glassStorage/rawGlassStorageTask/taskSuccess?taskId=" + row.id; |
| | | var url="/glassStorage/rawGlassStorageTask/taskSuccess?taskId="+ row.id; |
| | | const response = await request.post(url) |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | } else { |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | } catch (error) { |
| | | } |
| | | }; |
| | | } |
| | | }; |
| | | // 任务失败处理 |
| | | const handleptask = async (row) => { |
| | | const handleptask = async(row) => { |
| | | try { |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('searchOrder.ptaskfailure'), |
| | | t('workOrder.prompt'), |
| | | { |
| | | confirmButtonText: t('workOrder.yes'), |
| | | const confirmResult = await ElMessageBox.confirm( |
| | | t('searchOrder.ptaskfailure'), |
| | | t('workOrder.prompt'), |
| | | { |
| | | confirmButtonText: t('workOrder.yes'), |
| | | cancelButtonText: t('workOrder.cancel'), |
| | | type: 'warning', |
| | | } |
| | | type: 'warning', |
| | | } |
| | | ); |
| | | if (confirmResult === 'confirm') { |
| | | var url = "/glassStorage/rawGlassStorageTask/taskError?taskId=" + row.id; |
| | | var url="/glassStorage/rawGlassStorageTask/taskError?taskId="+ row.id; |
| | | const response = await request.post(url) |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | } else { |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | ElMessage.error(response.msg); |
| | | } |
| | | } |
| | | } catch (error) { |
| | | } |
| | | }; |
| | | function getStatusType1(taskType) { |
| | | switch (taskType) { |
| | | case 1: |
| | | return 'info'; |
| | | case 2: |
| | | return 'warning'; |
| | | case 3: |
| | | return 'success'; |
| | | case 4: |
| | | return 'danger'; |
| | | case 5: |
| | | return 'primary'; |
| | | } |
| | | } |
| | | }; |
| | | function getStatusType1(taskType) { |
| | | switch (taskType) { |
| | | case 1: |
| | | return 'info'; |
| | | case 2: |
| | | return 'warning'; |
| | | case 3: |
| | | return 'success'; |
| | | case 4: |
| | | return 'danger'; |
| | | case 5: |
| | | return 'primary'; |
| | | } |
| | | } |
| | | function getStatusText1(taskType) { |
| | | switch (taskType) { |
| | | case 1: |
| | | return t('sorter.advancetask');//进片任务 |
| | | case 2: |
| | | return t('sorter.outputtasks');//出片任务 |
| | | case 3: |
| | | return t('sorter.schedulingtasks');//调度任务 |
| | | case 4: |
| | | return t('sorter.advancerequests');//进片请求 |
| | | case 5: |
| | | return t('sorter.releaserequest');//出片请求 |
| | | } |
| | | function getStatusText1(taskType) { |
| | | switch (taskType) { |
| | | case 1: |
| | | return t('sorter.advancetask');//进片任务 |
| | | case 2: |
| | | return t('sorter.outputtasks');//出片任务 |
| | | case 3: |
| | | return t('sorter.schedulingtasks');//调度任务 |
| | | case 4: |
| | | return t('sorter.advancerequests');//进片请求 |
| | | case 5: |
| | | return t('sorter.releaserequest');//出片请求 |
| | | } |
| | | } |
| | | function getStatusType2(taskState) { |
| | | switch (taskState) { |
| | | case 0: |
| | | return 'info'; |
| | | case 2: |
| | | return 'warning'; |
| | | case 1: |
| | | return 'success'; |
| | | } |
| | | function getStatusType2(taskState) { |
| | | switch (taskState) { |
| | | case 0: |
| | | return 'info'; |
| | | case 2: |
| | | return 'warning'; |
| | | case 1: |
| | | return 'success'; |
| | | } |
| | | } |
| | | function getStatusText2(taskState) { |
| | | switch (taskState) { |
| | | case 0: |
| | | return t('film.built');//新建 |
| | | case 2: |
| | | return t('film.fail');//失败 |
| | | case 1: |
| | | return t('film.finish');//完成 |
| | | } |
| | | function getStatusText2(taskState) { |
| | | switch (taskState) { |
| | | case 0: |
| | | return t('film.built');//新建 |
| | | case 2: |
| | | return t('film.fail');//失败 |
| | | case 1: |
| | | return t('film.finish');//完成 |
| | | } |
| | | } |
| | | onBeforeUnmount(() => { |
| | | closeWebSocket(); |
| | |
| | | {{ $t('film.pwarehousing') }} |
| | | </el-button> |
| | | <el-button style="margin-left: 20px;" id="searchButton" type="success" @click="handleBinde">{{ |
| | | $t('film.pwareout') |
| | | }} |
| | | $t('film.pwareout') |
| | | }} |
| | | </el-button> |
| | | <el-button style="margin-left: 20px;" id="searchButton" type="success" @click="handlehistorical">{{ |
| | | $t('searchOrder.historicaltasks') |
| | | }} |
| | | $t('searchOrder.historicaltasks') |
| | | }} |
| | | </el-button> |
| | | <el-date-picker style="margin-left: 10px;" v-model="timeRange" type="datetimerange" format="YYYY/MM/DD HH:mm:ss" |
| | | value-format="YYYY-MM-DD HH:mm:ss" :start-placeholder="$t('film.starttime')" |
| | | :end-placeholder="$t('film.endtime')" :default-time="defaultTime" /> |
| | | <el-select v-model="selectValuesa[0]" clearable :placeholder="$t('film.taskstatus')" style="margin-left: 10px;"> |
| | | <el-option :label="$t('film.built')" value="0"></el-option> |
| | | <el-option :label="$t('film.finish')" value="1"></el-option> |
| | | <el-option :label="$t('film.fail')" value="2"></el-option> |
| | | </el-select> |
| | | <el-select v-model="selectValuesa[1]" clearable :placeholder="$t('film.tasktype')" style="margin-left: 10px;"> |
| | | <el-option :label="$t('sorter.advancetask')" value="1"></el-option> |
| | | <el-option :label="$t('sorter.outputtasks')" value="2"></el-option> |
| | | <el-option :label="$t('sorter.schedulingtasks')" value="3"></el-option> |
| | | <el-option :label="$t('sorter.advancerequests')" value="4"></el-option> |
| | | <el-option :label="$t('sorter.releaserequest')" value="5"></el-option> |
| | | </el-select> |
| | | <el-button type="primary" style="margin-left: 10px;" @click="selectReportData()">{{ $t('film.inquire') |
| | | }}</el-button> |
| | | </div> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;"> |
| | | <el-date-picker style="margin-left: 10px;" v-model="timeRange" type="datetimerange" |
| | | format="YYYY/MM/DD HH:mm:ss" |
| | | value-format="YYYY-MM-DD HH:mm:ss" |
| | | :start-placeholder="$t('film.starttime')" |
| | | :end-placeholder="$t('film.endtime')" |
| | | :default-time="defaultTime" /> |
| | | <el-select v-model="selectValuesa[0]" clearable :placeholder="$t('film.taskstatus')" style="margin-left: 10px;" > |
| | | <el-option :label="$t('film.built')" value="0"></el-option> |
| | | <el-option :label="$t('film.finish')" value="1"></el-option> |
| | | <el-option :label="$t('film.fail')" value="2"></el-option> |
| | | </el-select> |
| | | <el-select v-model="selectValuesa[1]" clearable :placeholder="$t('film.tasktype')" style="margin-left: 10px;" > |
| | | <el-option :label="$t('sorter.advancetask')" value="1"></el-option> |
| | | <el-option :label="$t('sorter.outputtasks')" value="2"></el-option> |
| | | <el-option :label="$t('sorter.schedulingtasks')" value="3"></el-option> |
| | | <el-option :label="$t('sorter.advancerequests')" value="4"></el-option> |
| | | <el-option :label="$t('sorter.releaserequest')" value="5"></el-option> |
| | | </el-select> |
| | | <el-button type="primary" style="margin-left: 10px;" @click="selectReportData()">{{ $t('film.inquire') }}</el-button> |
| | | </div> |
| | | <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" > |
| | | <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;"> |
| | | <el-table height="300" ref="table" :data="tableDataa" |
| | | :header-cell-style="{ background: '#F2F3F5 ', color: '#1D2129' }"> |
| | | <el-table-column prop="id" align="center" :label="$t('film.enableid')" /> |
| | | <el-table-column prop="startSlot" align="center" :label="$t('film.originateslot')" /> |
| | | <el-table-column prop="endSlot" align="center" :label="$t('film.endoriginateslot')" /> |
| | | <el-table-column prop="patternQuantity" align="center" :label="$t('film.patternquantity')" /> |
| | | <el-table-column width="100" align="center" :label="$t('film.enabletype')" prop="taskType"> |
| | | <template #default="scope"> |
| | | <el-tag :type="getStatusType1(scope.row.taskType)"> |
| | | {{ getStatusText1(scope.row.taskType) }} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column align="center" :label="$t('film.taskstatus')" prop="taskState"> |
| | | <template #default="scope"> |
| | | <el-tag :type="getStatusType2(scope.row.taskState)"> |
| | | {{ getStatusText2(scope.row.taskState) }} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table height="300" ref="table" |
| | | :data="tableDataa" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | | <el-table-column prop="id" align="center" :label="$t('film.enableid')"/> |
| | | <el-table-column prop="startSlot" align="center" :label="$t('film.originateslot')"/> |
| | | <el-table-column prop="endSlot" align="center" :label="$t('film.endoriginateslot')"/> |
| | | <el-table-column prop="patternQuantity" align="center" :label="$t('film.patternquantity')"/> |
| | | <el-table-column width="100" |
| | | align="center" |
| | | :label="$t('film.enabletype')" |
| | | prop="taskType" |
| | | > |
| | | <template #default="scope"> |
| | | <el-tag :type="getStatusType1(scope.row.taskType)"> |
| | | {{ getStatusText1(scope.row.taskType) }} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | align="center" |
| | | :label="$t('film.taskstatus')" |
| | | prop="taskState" |
| | | > |
| | | <template #default="scope"> |
| | | <el-tag :type="getStatusType2(scope.row.taskState)"> |
| | | {{ getStatusText2(scope.row.taskState) }} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="createTime" align="center" :label="$t('film.createtime')" /> |
| | | <el-table-column fixed="right" :label="$t('film.operate')" align="center"> |
| | | <template #default="scope"> |
| | | <el-button :disabled="(scope.row.taskState !== 0)" type="text" plain @click="successfull(scope.row)">{{ |
| | | $t('searchOrder.successfullyprocessed') }}</el-button> |
| | | <el-button :disabled="(scope.row.taskState !== 0)" type="text" plain @click="handleptask(scope.row)">{{ |
| | | $t('searchOrder.taskfailure') }}</el-button> |
| | | <el-button :disabled="(scope.row.taskState !== 0)" type="text" plain @click="successfull(scope.row)">{{ $t('searchOrder.successfullyprocessed') }}</el-button> |
| | | <el-button :disabled="(scope.row.taskState !== 0)" type="text" plain @click="handleptask(scope.row)">{{ $t('searchOrder.taskfailure') }}</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-card> |
| | |
| | | <div class="card103" v-show="card103" style="z-index:999;top:109px;left:96px;position:absolute;"></div> |
| | | <div class="card104" v-show="card104" style="z-index:999;top:109px;left:70px;position:absolute;"></div> |
| | | </div> |
| | | <el-dialog v-model="dialogFormVisiblea" top="5vh" width="85%"> |
| | | <el-table ref="table" style="margin-top: 20px;height: 700px;" :data="tableDatab" |
| | | :header-cell-style="{ background: '#F2F3F5 ', color: '#1D2129' }"> |
| | | <el-table-column prop="deviceId" fixed align="center" :label="$t('film.station')" min-width="80" /> |
| | | <el-table-column prop="slot" fixed align="center" :label="$t('film.slot')" min-width="80" /> |
| | | <el-table-column prop="patternWidth" align="center" :label="$t('film.width')" min-width="80" /> |
| | | <el-table-column prop="patternHeight" align="center" :label="$t('film.height')" min-width="80" /> |
| | | <el-table-column prop="patternThickness" align="center" :label="$t('film.thickness')" min-width="80" /> |
| | | <el-table-column prop="filmsId" align="center" :label="$t('film.films')" min-width="80" /> |
| | | <el-table-column prop="remainQuantity" align="center" :label="$t('film.remainquantity')" min-width="120" /> |
| | | <el-table-column align="center" :label="$t('film.enablestate')" min-width="80" prop="state"> |
| | | <template #default="scope"> |
| | | <el-tag :type="scope.row.state == 1 ? 'success' : 'danger'" @click="toggleEnableState(scope.row)"> |
| | | {{ scope.row.state == 1 ? $t('film.start') : $t('film.disable') }} |
| | | </el-tag> |
| | | </template> |
| | | <el-dialog v-model="dialogFormVisiblea" top="5vh" width="85%" > |
| | | <el-table ref="table" style="margin-top: 20px;height: 700px;" |
| | | :data="tableDatab" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | | <el-table-column prop="deviceId" fixed align="center" :label="$t('film.station')" min-width="80"/> |
| | | <el-table-column prop="slot" fixed align="center" :label="$t('film.slot')" min-width="80"/> |
| | | <el-table-column prop="patternWidth" align="center" :label="$t('film.width')" min-width="80" /> |
| | | <el-table-column prop="patternHeight" align="center" :label="$t('film.height')" min-width="80" /> |
| | | <el-table-column prop="patternThickness" align="center" :label="$t('film.thickness')" min-width="80" /> |
| | | <el-table-column prop="filmsId" align="center" :label="$t('film.films')" min-width="80" /> |
| | | <el-table-column prop="remainQuantity" align="center" :label="$t('film.remainquantity')" min-width="120" /> |
| | | <el-table-column |
| | | align="center" |
| | | :label="$t('film.enablestate')" |
| | | min-width="80" |
| | | prop="state" |
| | | > |
| | | <template #default="scope"> |
| | | <el-tag |
| | | :type="scope.row.state == 1 ? 'success' : 'danger'" |
| | | @click="toggleEnableState(scope.row)" |
| | | > |
| | | {{ scope.row.state == 1 ? $t('film.start') : $t('film.disable')}} |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" :label="$t('film.operate')" align="center" width="270"> |
| | | <template #default="scope"> |
| | | <el-button type="text" plain @click="handleEdit(scope.row)">{{ $t('film.exit') }}</el-button> |
| | | <el-button :disabled="!scope.row.remainQuantity" type="text" plain @click="deleteWarehousing(scope.row)">{{ $t('film.delete') }}</el-button> |
| | | <el-button :disabled="!scope.row.remainQuantity || scope.row.remainQuantity === 0" type="text" plain @click="openc(scope.row)">{{ $t('film.outbound') }}</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" :label="$t('film.operate')" align="center" width="270"> |
| | | <template #default="scope"> |
| | | <el-button type="text" plain @click="handleEdit(scope.row)">{{ $t('film.exit') }}</el-button> |
| | | <el-button :disabled="!scope.row.remainQuantity" type="text" plain @click="deleteWarehousing(scope.row)">{{ |
| | | $t('film.delete') }}</el-button> |
| | | <el-button :disabled="!scope.row.remainQuantity || scope.row.remainQuantity === 0" type="text" plain |
| | | @click="openc(scope.row)">{{ $t('film.outbound') }}</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-dialog> |
| | | <!-- 历史任务 --> |
| | | <el-dialog v-model="blindb" top="5vh" width="95%" @close="iframeUrl = ''"> |
| | | <iframe :src="iframeUrl" marginwidth="2000px" marginheight="2000px" width="100%" height="750px" |
| | | frameborder="0"></iframe> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisibleb" top="23vh" width="55%" :title="$t('film.addglass')"> |
| | | <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;"> |
| | | <el-form label-width="150px"> |
| | | <el-form label-width="100px" 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('film.widtha')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inwidth')" v-model="patternWidth" autocomplete="off" /> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.heighta')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inheight')" v-model="patternHeight" 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('film.thicknessa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inthickness')" v-model="patternThickness" autocomplete="off" /> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.filmsa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.infilms')" v-model="filmsId" 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('film.quantitya')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inquantity')" v-model="remainQuantity" autocomplete="off" /> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.inwarehousing')" :required="true" style="width: 17vw"> |
| | | <el-select :placeholder="$t('film.selectwarehousing')" style="width: 270px" v-model="slot"> |
| | | <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" /> |
| | | </el-select> |
| | | </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="handleup"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="dialogFormVisibleb = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisiblec" top="24vh" width="30%" :title="$t('film.pwarehousing')"> |
| | | <div style="margin-left: 50px;margin-bottom: 10px;"> |
| | | <el-form-item :label="$t('film.position')" :required="true"> |
| | | <el-select v-model="leftingStation" clearable :placeholder="$t('film.cposition')" style="margin-left: 20px;"> |
| | | <el-option :label="$t('film.position1')" value="98"></el-option> |
| | | <el-option :label="$t('film.position2')" value="99"></el-option> |
| | | </el-table> |
| | | </el-dialog> |
| | | <!-- 历史任务 --> |
| | | <el-dialog v-model="blindb" top="5vh" width="95%" @close="iframeUrl=''"> |
| | | <iframe |
| | | :src="iframeUrl" |
| | | marginwidth="2000px" |
| | | marginheight="2000px" |
| | | width="100%" |
| | | height="750px" |
| | | frameborder="0" |
| | | ></iframe> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisibleb" top="23vh" width="55%" :title="$t('film.addglass')" > |
| | | <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;"> |
| | | <el-form label-width="150px"> |
| | | <el-form label-width="100px" 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('film.widtha')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inwidth')" v-model="patternWidth" autocomplete="off" /> |
| | | </el-form-item> |
| | | </div></div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.heighta')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inheight')" v-model="patternHeight" 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('film.thicknessa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inthickness')" v-model="patternThickness" autocomplete="off" /> |
| | | </el-form-item></div></div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.filmsa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.infilms')" v-model="filmsId" 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('film.quantitya')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inquantity')" v-model="remainQuantity" autocomplete="off" /> |
| | | </el-form-item></div></div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.inwarehousing')" :required="true" style="width: 17vw"> |
| | | <el-select |
| | | :placeholder="$t('film.selectwarehousing')" |
| | | style="width: 270px" |
| | | v-model="slot"> |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleupc"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="dialogFormVisiblec = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisiblee" top="24vh" width="30%" :title="$t('film.pwareout')"> |
| | | <div style="margin-left: 50px;margin-bottom: 10px;"> |
| | | <el-form-item :label="$t('film.position')" :required="true"> |
| | | <el-select v-model="leftingStation" clearable :placeholder="$t('film.cposition')" style="margin-left: 20px;"> |
| | | <el-option :label="$t('film.position1')" value="98"></el-option> |
| | | <el-option :label="$t('film.position2')" value="99"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleupe"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="dialogFormVisiblee = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="Edit" top="23vh" width="55%" :title="$t('film.addglass')"> |
| | | <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;"> |
| | | <el-form label-width="150px"> |
| | | <el-form label-width="100px" 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('film.widtha')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inwidth')" v-model="patternWidth" autocomplete="off" /> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.heighta')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inheight')" v-model="patternHeight" 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('film.thicknessa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inthickness')" v-model="patternThickness" autocomplete="off" /> |
| | | </el-form-item> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.filmsa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.infilms')" v-model="filmsId" 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 label-width="210px"> |
| | | <el-form-item :label="$t('film.thickremainquantity')" :required="true" |
| | | style="width: 44.5vw;margin-left: -40px;"> |
| | | <el-input v-model="remainQuantity" autocomplete="off" :placeholder="$t('film.inquantity')" /> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | </div> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | </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="handleup"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="dialogFormVisibleb = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="Editclick"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="Edit = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisiblec" top="24vh" width="30%" :title="$t('film.pwarehousing')"> |
| | | <div style="margin-left: 50px;margin-bottom: 10px;"> |
| | | <el-form-item :label="$t('film.position')" :required="true"> |
| | | <el-select v-model="leftingStation" clearable :placeholder="$t('film.cposition')" style="margin-left: 20px;" > |
| | | <el-option :label="$t('film.position1')" value="98"></el-option> |
| | | <el-option :label="$t('film.position2')" value="99"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleupc"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="dialogFormVisiblec = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisiblee" top="24vh" width="30%" :title="$t('film.pwareout')"> |
| | | <div style="margin-left: 50px;margin-bottom: 10px;"> |
| | | <el-form-item :label="$t('film.position')" :required="true"> |
| | | <el-select v-model="leftingStation" clearable :placeholder="$t('film.cposition')" style="margin-left: 20px;" > |
| | | <el-option :label="$t('film.position1')" value="98"></el-option> |
| | | <el-option :label="$t('film.position2')" value="99"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleupe"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="dialogFormVisiblee = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <el-dialog v-model="Edit" top="23vh" width="55%" :title="$t('film.addglass')" > |
| | | <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;"> |
| | | <el-form label-width="150px"> |
| | | <el-form label-width="100px" 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('film.widtha')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inwidth')" v-model="patternWidth" autocomplete="off" /> |
| | | </el-form-item> |
| | | </div></div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.heighta')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inheight')" v-model="patternHeight" 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('film.thicknessa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.inthickness')" v-model="patternThickness" autocomplete="off" /> |
| | | </el-form-item></div></div> |
| | | </el-col> |
| | | <el-col :span="9"> |
| | | <div id="dta" style="font-size: 15px;"> |
| | | <div> |
| | | <el-form-item :label="$t('film.filmsa')" :required="true" style="width: 17vw;"> |
| | | <el-input :placeholder="$t('film.infilms')" v-model="filmsId" 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 label-width="210px"> |
| | | <el-form-item :label="$t('film.thickremainquantity')" :required="true" style="width: 44.5vw;margin-left: -40px;"> |
| | | <el-input v-model="remainQuantity" autocomplete="off" :placeholder="$t('film.inquantity')"/> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div></div> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | </el-form> |
| | | </div> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="Editclick"> |
| | | {{ $t('basicData.confirm') }} |
| | | </el-button> |
| | | <el-button @click="Edit = false">{{ $t('basicData.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | <style scoped> |
| | | #dt { |
| | | display: block; |
| | | float: left; |
| | | line-height: 20px; |
| | | margin-left: 100px; |
| | | } |
| | | |
| | | #dta { |
| | | display: block; |
| | | float: left; |
| | | line-height: 20px; |
| | | margin-left: 80%; |
| | | } |
| | | |
| | | .awatch { |
| | | #dt { display:block; float:left;line-height: 20px;margin-left: 100px;} |
| | | #dta { display:block; float:left;line-height: 20px;margin-left: 80%;} |
| | | .awatch{ |
| | | height: 400px; |
| | | width: 1500px; |
| | | max-width: 100%; |
| | | } |
| | | |
| | | #dialog-footer { |
| | | text-align: center; |
| | | margin-top: -15px; |
| | | } |
| | | |
| | | .img-dlpl { |
| | | .img-dlpl{ |
| | | margin-left: 330px; |
| | | margin-top: 10px; |
| | | background-image: url('../../assets/ypcc.png'); |
| | | background-image:url('../../assets/ypcc.png'); |
| | | background-repeat: no-repeat; |
| | | background-attachment: local; |
| | | min-height: 700px; |
| | |
| | | max-width: 100%; |
| | | background-size: 800px 700px; |
| | | overflow: hidden; |
| | | position: relative |
| | | position:relative |
| | | } |
| | | |
| | | .img-car1 { |
| | | .img-car1{ |
| | | display: flex; |
| | | background-image: url('../../assets/C1.png'); |
| | | background-image:url('../../assets/C1.png'); |
| | | position: absolute; |
| | | background-repeat: no-repeat; |
| | | background-attachment: local; |
| | |
| | | max-width: 100%; |
| | | background-size: 70px 150px; |
| | | overflow: hidden; |
| | | position: relative |
| | | position:relative |
| | | } |
| | | |
| | | .card1 { |
| | | .card1{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card2 { |
| | | .card2{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card3 { |
| | | .card3{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card4 { |
| | | .card4{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card5 { |
| | | .card5{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card6 { |
| | | .card6{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card7 { |
| | | .card7{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card8 { |
| | | .card8{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card9 { |
| | | .card9{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card10 { |
| | | .card10{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card11 { |
| | | .card11{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card12 { |
| | | .card12{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card13 { |
| | | .card13{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card14 { |
| | | .card14{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card15 { |
| | | .card15{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card16 { |
| | | .card16{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card17 { |
| | | .card17{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card18 { |
| | | .card18{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card19 { |
| | | .card19{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card20 { |
| | | .card20{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card21 { |
| | | .card21{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card22 { |
| | | .card22{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card23 { |
| | | .card23{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card24 { |
| | | .card24{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card25 { |
| | | .card25{ |
| | | width: 14px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card101 { |
| | | .card101{ |
| | | width: 10px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card102 { |
| | | .card102{ |
| | | width: 10px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card103 { |
| | | .card103{ |
| | | width: 10px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card104 { |
| | | .card104{ |
| | | width: 10px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card98 { |
| | | .card98{ |
| | | width: 25px; |
| | | height: 110px; |
| | | background-color: #911005 |
| | | } |
| | | |
| | | .card99 { |
| | | .card99{ |
| | | width: 25px; |
| | | height: 110px; |
| | | background-color: #911005 |