From 83a982e1e889cb8f6ba03cab92b222d83434a398 Mon Sep 17 00:00:00 2001 From: wxw <Administrator@DESKTOP-5BIMHQ3> Date: 星期五, 06 九月 2024 16:55:50 +0800 Subject: [PATCH] 新增箱码明细表;开发分拣码垛绑定任务功能 --- Web/src/views/device/sortPallet/index.vue | 188 +++++++++++++++++++++++++--------------------- 1 files changed, 102 insertions(+), 86 deletions(-) diff --git a/Web/src/views/device/sortPallet/index.vue b/Web/src/views/device/sortPallet/index.vue index 950d163..2a94f23 100644 --- a/Web/src/views/device/sortPallet/index.vue +++ b/Web/src/views/device/sortPallet/index.vue @@ -1,6 +1,6 @@ <template> <el-container> - <el-cloum> + <el-col> <el-row :span="1"> <div class="card-page"> <el-button @@ -18,7 +18,7 @@ <div class="card-container"> <el-card class="other-box-card" v-for="deviceInfo in devicePointData" :key="deviceInfo.id"> <div slot="header" class="linefix"> - <span>{{ deviceInfo.name }}</span> + <span>{{ deviceInfo.text }}</span> <div :class="['lineStatus', { 'device-status-0': deviceInfo.status === 0 }, { 'device-status-1': deviceInfo.status === 1 }]"></div> </div> <div class="otherValuefix" > @@ -29,6 +29,9 @@ <el-form-item label="浠诲姟鍙�"> <el-input v-model="deviceInfo.taskNumber"></el-input> </el-form-item> + <el-form-item label="鎵规鍙�"> + <el-input></el-input> + </el-form-item> <el-form-item label="鐗╂枡缂栫爜"> <el-input></el-input> </el-form-item> @@ -38,19 +41,19 @@ <el-form-item label="鍖呰鍚嶇О"> <el-input></el-input> </el-form-item> - <el-form-item label="鐘舵��"> + <el-form-item label="缁戝畾鐘舵��"> <el-input></el-input> </el-form-item> <el-form-item label="鎶撶鍝佺"> <el-input></el-input> </el-form-item> - <el-form-item label="DB璁板綍绠辨暟"> - <el-input></el-input> - </el-form-item> <el-form-item label="鎵樼洏鍙�"> <el-input></el-input> </el-form-item> - <el-form-item label="鐮佸灈绠辨暟"> + <el-form-item label="鎻掔爜鏁伴噺"> + <el-input></el-input> + </el-form-item> + <el-form-item label="鎵樼洏涓婄鏁伴噺"> <el-input></el-input> </el-form-item> <el-form-item label="WMS涓嬪彂鏁伴噺"> @@ -61,7 +64,7 @@ <div class="otherButtonfix"> <el-form label-position="left"> <el-form-item> - <el-button type="primary">缁戝畾</el-button> + <el-button type="primary" @click="openBindDialog()">缁戝畾</el-button> <el-button>缁撴壒</el-button> </el-form-item> </el-form> @@ -69,97 +72,105 @@ </el-card> </div> </el-row> - </el-cloum> - </el-container> + </el-col> + + <!-- 缁戝畾浠诲姟寮规 --> + <el-dialog v-model="bindDialogVisible" title="閫夋嫨鏁版嵁"> + <el-table + :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="" /> + <el-table-column prop="skuNo" label="鐗╂枡缂栫爜" show-overflow-tooltip="" /> + <el-table-column prop="skuName" label="鐗╂枡鍚嶇О" show-overflow-tooltip="" /> + <el-table-column prop="boxType" label="瑙勬牸" show-overflow-tooltip="" /> + <el-table-column prop="qty" label="鎬荤鏁�/璁″垝绠辨暟/棰勪及绠辨暟" show-overflow-tooltip="" /> + </el-table> + <div slot="footer" class="dialog-footer"> + <el-button @click="bindDialogVisible = false">鍙栨秷</el-button> + <el-button type="primary" @click="confirmBinding">纭</el-button> + </div> + </el-dialog> + </el-container> </template> <script lang="ts" setup> import { ref } from 'vue'; -import { GetWcsPackPlcList } from '/@/api/wcs/wcsDevice'; +import { GetWcsPackPlcList,GetWcsPackStationPlcList } from '/@/api/wcs/wcsDevice'; +import { pageWcsOderTask } from '/@/api/device/wcsOderTask'; +//璁惧鏁版嵁 const deviceList=ref<any>([]); - -const devicePointList=[ - { - id: 1, - deviceId:586494087331909, - name: '1鍙风爜鍨涙満鍣ㄤ汉 1宸ヤ綅', - taskNumber: 'T000001', - taskType: '', - plc: '', - wcs: '', - status: 0 - }, - { - id: 2, - deviceId:586494087331909, - name: '1鍙风爜鍨涙満鍣ㄤ汉 2宸ヤ綅', - taskNumber: '', - taskType: '', - plc: '', - wcs: '', - status: 1 - }, - { - id: 3, - deviceId:586494087331909, - name: '1鍙风爜鍨涙満鍣ㄤ汉 3宸ヤ綅', - taskNumber: '', - taskType: '', - plc: '', - wcs: '', - status: 1 - }, - { - id: 4, - deviceId:586494241939525, - name: '2鍙风爜鍨涙満鍣ㄤ汉 1宸ヤ綅', - taskNumber: 'T000001', - taskType: '', - plc: '', - wcs: '', - status: 0 - }, - { - id: 5, - deviceId:586494241939525, - name: '2鍙风爜鍨涙満鍣ㄤ汉 2宸ヤ綅', - taskNumber: '', - taskType: '', - plc: '', - wcs: '', - status: 1 - }, - { - id: 6, - deviceId:3, - name: '3鍙锋満鍣ㄤ汉 1宸ヤ綅', - taskNumber: 'T000001', - taskType: '', - plc: '', - wcs: '', - status: 0 - } -]; - -let devicePointData = ref<any>([]); +//璁惧瀵瑰簲宸ヤ綅鏁版嵁 +const devicePointData = ref<any>([]); +//閫変腑璁惧ID const selectedDeviceId=ref<any>(); -// 鏌ヨ鎿嶄綔 -const handleQuery = async () => { + +const bindDialogVisible = ref(false); +const bindData = ref<any>([]); +const selectedRow = ref<any>(null); +const queryParams = ref<any>({}); +const tableParams = ref({ + page: 1, + pageSize: 10, + total: 0, +}); + +//鑾峰彇璁惧瀵瑰簲鐨勫伐浣嶆暟鎹� +const fetchStationData = async (plcId: any) => { + const res2 = await GetWcsPackStationPlcList({ plcId }); + devicePointData.value = res2.data.result; +}; +// 鑾峰彇璁惧鏁版嵁 +const fetchPLCDeviceData = async () => { var res = await GetWcsPackPlcList(); deviceList.value = res.data.result; - //杈撻�佺嚎鏁版嵁 - selectedDeviceId.value = deviceList.value[0].id; - devicePointData.value= devicePointList.filter(device => device.deviceId === selectedDeviceId.value); + if (deviceList.value.length > 0) { + selectedDeviceId.value = deviceList.value[0].id; + await fetchStationData(selectedDeviceId.value); + } }; -handleQuery(); +fetchPLCDeviceData(); -//鍒囨崲 +//鍒囨崲璁惧 function chooseDevice(id) { selectedDeviceId.value = id; - devicePointData.value = devicePointList.filter(device => device.deviceId === id); + fetchStationData(id); } + +const handleQuery = async () => { + var res = await pageWcsOderTask(Object.assign(queryParams.value, tableParams.value)); + bindData.value = res.data.result?.items ?? []; + tableParams.value.total = res.data.result?.total; + }; +//鎵撳紑缁戝畾寮规 +function openBindDialog() { + bindDialogVisible.value = true; + // Mock data for binding + handleQuery(); +} +//鐐瑰嚮琛屾椂璁剧疆閫変腑琛� +function handleRowClick(row) { + selectedRow.value = row; +} + +//纭缁戝畾鎿嶄綔 +function confirmBinding() { + if (selectedRow.value) { + console.log('Selected Row:', selectedRow.value); + // Do binding logic here + bindDialogVisible.value = false; + } else { + console.error('No row selected'); + } +} + </script> <style scoped> @@ -204,13 +215,13 @@ } .otherValuefix{ width: 100%; - height: 500px; + height: 540px; padding: 10px; border-bottom: 1px solid rgb(197, 195, 195); } .otherButtonfix{ width: 100%; - height: 100px; + height: 60px; display: flex; align-items: center; justify-content: center; @@ -222,5 +233,10 @@ .device-status-1{ background-color: red; } + .dialog-footer { + display: flex; + justify-content: flex-end; + margin-top: 20px; + } </style> \ No newline at end of file -- Gitblit v1.8.0