From 10a65bdb100ea964d5eff3b67198c89c6c3ba9e7 Mon Sep 17 00:00:00 2001 From: bklLiudl <673013083@qq.com> Date: 星期三, 11 九月 2024 16:15:05 +0800 Subject: [PATCH] Merge branch 'master' into liudl --- Web/src/views/device/sortPallet/index.vue | 96 ++++++++++++++++++++++++++++++++++------------- 1 files changed, 69 insertions(+), 27 deletions(-) diff --git a/Web/src/views/device/sortPallet/index.vue b/Web/src/views/device/sortPallet/index.vue index 2a94f23..a4aba31 100644 --- a/Web/src/views/device/sortPallet/index.vue +++ b/Web/src/views/device/sortPallet/index.vue @@ -19,53 +19,54 @@ <el-card class="other-box-card" v-for="deviceInfo in devicePointData" :key="deviceInfo.id"> <div slot="header" class="linefix"> <span>{{ deviceInfo.text }}</span> - <div :class="['lineStatus', { 'device-status-0': deviceInfo.status === 0 }, { 'device-status-1': deviceInfo.status === 1 }]"></div> + <div :class="['lineStatus', 'device-status-0']"></div> + <!-- <div :class="['lineStatus', { 'device-status-0': deviceInfo.status === 0 }, { 'device-status-1': deviceInfo.status === 1 }]"></div> --> </div> <div class="otherValuefix" > <el-form label-position="left" label-width="90px"> <el-form-item label="WMS鏄庣粏鍗曞彿"> - <el-input></el-input> + <el-input v-model="deviceInfo.orderNo" readonly></el-input> </el-form-item> <el-form-item label="浠诲姟鍙�"> - <el-input v-model="deviceInfo.taskNumber"></el-input> + <el-input v-model="deviceInfo.taskNo"></el-input> </el-form-item> <el-form-item label="鎵规鍙�"> - <el-input></el-input> + <el-input v-model="deviceInfo.lotNo" readonly></el-input> </el-form-item> <el-form-item label="鐗╂枡缂栫爜"> - <el-input></el-input> + <el-input v-model="deviceInfo.skuNo" readonly></el-input> </el-form-item> <el-form-item label="鐗╂枡鍚嶇О"> - <el-input></el-input> + <el-input v-model="deviceInfo.skuName" readonly></el-input> </el-form-item> - <el-form-item label="鍖呰鍚嶇О"> - <el-input></el-input> + <el-form-item label="鍒嗘嫞绾跨紪鍙�"> + <el-input v-model="deviceInfo.lineNo" readonly></el-input> </el-form-item> <el-form-item label="缁戝畾鐘舵��"> - <el-input></el-input> + <el-input :value="deviceInfo.status === '0' ? '鏈粦瀹�' : '宸茬粦瀹�'" readonly></el-input> </el-form-item> <el-form-item label="鎶撶鍝佺"> - <el-input></el-input> + <el-input v-model="deviceInfo.pzNo" readonly></el-input> </el-form-item> <el-form-item label="鎵樼洏鍙�"> - <el-input></el-input> + <el-input readonly></el-input> </el-form-item> <el-form-item label="鎻掔爜鏁伴噺"> - <el-input></el-input> + <el-input readonly></el-input> </el-form-item> <el-form-item label="鎵樼洏涓婄鏁伴噺"> - <el-input></el-input> + <el-input readonly></el-input> </el-form-item> <el-form-item label="WMS涓嬪彂鏁伴噺"> - <el-input></el-input> + <el-input v-model="deviceInfo.qty" readonly></el-input> </el-form-item> </el-form> </div> - <div class="otherButtonfix"> + <div v-if="!deviceInfo.text.includes('鎷嗗灈')" class="otherButtonfix"> <el-form label-position="left"> <el-form-item> - <el-button type="primary" @click="openBindDialog()">缁戝畾</el-button> - <el-button>缁撴壒</el-button> + <el-button type="primary" @click="openBindDialog(deviceInfo.id)">缁戝畾</el-button> + <el-button @click="closeBindDialog(deviceInfo.lotNo)">缁撴壒</el-button> </el-form-item> </el-form> </div> @@ -80,9 +81,7 @@ :data="bindData" highlight-current-row @row-click="handleRowClick" - > - <el-table-column type="selection" width="55"/> - + > <el-table-column prop="orderNo" label="WMS涓嬪彂鍗曞彿" show-overflow-tooltip="" /> <el-table-column prop="taskNo" label="浠诲姟鍙�" show-overflow-tooltip="" /> <el-table-column prop="lotNo" label="鎵规鍙�" show-overflow-tooltip="" /> @@ -101,8 +100,9 @@ <script lang="ts" setup> import { ref } from 'vue'; -import { GetWcsPackPlcList,GetWcsPackStationPlcList } from '/@/api/wcs/wcsDevice'; +import { GetWcsPackPlcList,GetWcsPackStationPlcList,BindTaskForPLC,CloseTaskForPLC } from '/@/api/wcs/wcsDevice'; import { pageWcsOderTask } from '/@/api/device/wcsOderTask'; +import { ElMessageBox,ElMessage } from 'element-plus'; //璁惧鏁版嵁 const deviceList=ref<any>([]); @@ -110,6 +110,8 @@ const devicePointData = ref<any>([]); //閫変腑璁惧ID const selectedDeviceId=ref<any>(); +//閫変腑宸ヤ綅ID +const selectedStationId=ref<any>(); const bindDialogVisible = ref(false); const bindData = ref<any>([]); @@ -141,7 +143,7 @@ //鍒囨崲璁惧 function chooseDevice(id) { selectedDeviceId.value = id; - fetchStationData(id); + fetchStationData(selectedDeviceId.value); } const handleQuery = async () => { @@ -150,9 +152,13 @@ tableParams.value.total = res.data.result?.total; }; //鎵撳紑缁戝畾寮规 -function openBindDialog() { +function openBindDialog(id) { + selectedStationId.value=null; + selectedRow.value=null; + + selectedStationId.value=id; bindDialogVisible.value = true; - // Mock data for binding + handleQuery(); } //鐐瑰嚮琛屾椂璁剧疆閫変腑琛� @@ -163,13 +169,46 @@ //纭缁戝畾鎿嶄綔 function confirmBinding() { if (selectedRow.value) { - console.log('Selected Row:', selectedRow.value); - // Do binding logic here + //鎵嬪姩缁戝畾浠诲姟鍒癙LC + bindTaskForPLC(selectedStationId.value,selectedRow.value.id); + bindDialogVisible.value = false; } else { - console.error('No row selected'); + ElMessage.error('璇烽�夋嫨瑕佺粦瀹氱殑浠诲姟锛�'); } } +const bindTaskForPLC = async (deviceId: any,oderTaskId:any) => { + const res = await BindTaskForPLC({ deviceId,oderTaskId }); + if(res.status==200){ + ElMessage.success('缁戝畾鎴愬姛锛�'); + // 鍒锋柊 + fetchStationData(selectedDeviceId.value); + } +} +//缁撴壒鎿嶄綔 +function closeBindDialog(lotNo){ + if(lotNo==''){ + ElMessage.error('璇ュ伐浣嶆湭缁戝畾浠诲姟锛�'); + return; + } + ElMessageBox.confirm(`纭畾瀵硅鎵规浠诲姟缁撴壒鍚�?`, '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning', + }) + .then(async () => { + closeTaskForPLC(lotNo); + }) + .catch(() => {}); +} +const closeTaskForPLC = async (lotNo: string) => { + const res = await CloseTaskForPLC({ lotNo }); + if(res.status==200){ + ElMessage.success('缁撴壒鎴愬姛锛�'); + // 鍒锋柊 + fetchStationData(selectedDeviceId.value); + } +} </script> @@ -238,5 +277,8 @@ justify-content: flex-end; margin-top: 20px; } + .divDisplay{ + display:none + } </style> \ No newline at end of file -- Gitblit v1.8.0