From 2ffa2054a2ed4367f493e1063e23572c8c0cf698 Mon Sep 17 00:00:00 2001 From: wangfei <3597712270@qq.com> Date: 星期五, 23 八月 2024 11:05:46 +0800 Subject: [PATCH] 钢化模块、掰片模块解决推送数据时的bug,修改文字样式,新增打印功能 --- UI-Project/src/views/PurchaseReturn/purchaseReturn.vue | 268 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 231 insertions(+), 37 deletions(-) diff --git a/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue b/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue index fdfcfd0..dd35c4e 100644 --- a/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue +++ b/UI-Project/src/views/PurchaseReturn/purchaseReturn.vue @@ -85,7 +85,61 @@ }; const socketUrl = `ws://${WebSocketHost}:${host}/api/temperingGlass/api/talk/temperingGlass`; const handleMessage = (data) => { + // if (data.intoGlass2 && data.intoGlass2.length > 0) { + // const newRects = data.intoGlass2[0].map(rect => { + // const scaleFactor = 794.67/5087; + // let adjustedWidth, adjustedHeight, adjustedWidtha, adjustedHeighta,widtha,heighta;; + // let newX = rect.yCoordinate; + // if (rect.width < rect.height) { + // widtha = rect.height; + // heighta = rect.width; + // }else { + // widtha = rect.width; + // heighta = rect.height; + // } + // if (rect.angle === 0) { + // adjustedWidth = widtha * scaleFactor; + // adjustedHeight = heighta * 0.1; + // // adjustedWidtha = widtha; + // // adjustedHeighta = heighta; + // newX = 5087 - (rect.yCoordinate + widtha); + // } else { + // adjustedWidth = heighta * scaleFactor; + // adjustedHeight = widtha * 0.1; + // // adjustedWidtha = widtha; + // // adjustedHeighta = heighta; + // newX = 5087 - (rect.yCoordinate + heighta); + // } + // return { + // ...rect, + // xcoordinate: newX * scaleFactor, + // ycoordinate: rect.xCoordinate * 0.1, + // width: adjustedWidth, + // height: adjustedHeight, + // widtha: rect.width, + // heighta: rect.height, + // } + // }); + // // 鍚堝苟鏂版棫鐭╁舰锛屼繚鐣� isActive 鐘舵�� + // adjustedRects2.value = adjustedRects2.value.map(oldRect => { + // const newRect = newRects.find(r => r.glassId === oldRect.glassId); + // if (newRect) { + // return { ...oldRect, ...newRect, isActive: oldRect.isActive }; + // } + // return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝鍒欎繚鐣欏師鏍� + // }).concat(newRects.filter(r => !adjustedRects2.value.some(o => o.glassId === r.glassId))); + // } + // else { + // adjustedRects2.value = '' + // } if (data.intoGlass2 && data.intoGlass2.length > 0) { + // 鎻愬彇鏂扮殑鐭╁舰ID + const newGlassIds = new Set(data.intoGlass2[0].map(rect => rect.glassId)); + + // 杩囨护鍑哄凡瀛樺湪鐨勭煩褰� + const existingRects = adjustedRects2.value.filter(rect => newGlassIds.has(rect.glassId)); + + // 璁$畻鏂扮殑鐭╁舰 const newRects = data.intoGlass2[0].map(rect => { const scaleFactor = 794.67/5087; let adjustedWidth, adjustedHeight, adjustedWidtha, adjustedHeighta,widtha,heighta;; @@ -119,17 +173,79 @@ widtha: rect.width, heighta: rect.height, } - }); - // 鍚堝苟鏂版棫鐭╁舰锛屼繚鐣� isActive 鐘舵�� - adjustedRects2.value = adjustedRects2.value.map(oldRect => { + }); + + // 鍚堝苟鏂版棫鐭╁舰锛屽苟淇濈暀 isActive 鐘舵�� + adjustedRects2.value = existingRects.map(oldRect => { const newRect = newRects.find(r => r.glassId === oldRect.glassId); if (newRect) { return { ...oldRect, ...newRect, isActive: oldRect.isActive }; } - return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝鍒欎繚鐣欏師鏍� - }).concat(newRects.filter(r => !adjustedRects2.value.some(o => o.glassId === r.glassId))); + return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝浣嗕繚鐣欏湪newGlassIds涓紝鍒欎繚鐣欏師鏍� + }).concat(newRects.filter(r => !existingRects.some(o => o.glassId === r.glassId))); + } + else if (data.intoGlass2 == null) { + adjustedRects2.value = [] } + + + + + // if (data.intoGlass && data.intoGlass.length > 0) { + // const newRects = data.intoGlass[0].map(rect => { + // const scaleFactor = 794.67/5087; + // let adjustedWidth, adjustedHeight, adjustedWidtha, adjustedHeighta,widtha,heighta;; + // let newX = rect.yCoordinate; + // if (rect.width < rect.height) { + // widtha = rect.height; + // heighta = rect.width; + // }else { + // widtha = rect.width; + // heighta = rect.height; + // } + // if (rect.angle === 0) { + // adjustedWidth = widtha * scaleFactor; + // adjustedHeight = heighta * 0.1; + // // adjustedWidtha = widtha; + // // adjustedHeighta = heighta; + // newX = 5087 - (rect.yCoordinate + widtha); + // } else { + // adjustedWidth = heighta * scaleFactor; + // adjustedHeight = widtha * 0.1; + // // adjustedWidtha = widtha; + // // adjustedHeighta = heighta; + // newX = 5087 - (rect.yCoordinate + heighta); + // } + // return { + // ...rect, + // xcoordinate: newX * scaleFactor, + // ycoordinate: rect.xCoordinate * 0.1, + // width: adjustedWidth, + // height: adjustedHeight, + // widtha: rect.width, + // heighta: rect.height, + // } + // }); + // // 鍚堝苟鏂版棫鐭╁舰锛屼繚鐣� isActive 鐘舵�� + // adjustedRects1.value = adjustedRects1.value.map(oldRect => { + // const newRect = newRects.find(r => r.glassId === oldRect.glassId); + // if (newRect) { + // return { ...oldRect, ...newRect, isActive: oldRect.isActive }; + // } + // return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝鍒欎繚鐣欏師鏍� + // }).concat(newRects.filter(r => !adjustedRects1.value.some(o => o.glassId === r.glassId))); + // } + // else { + // adjustedRects1.value = '' + // } if (data.intoGlass && data.intoGlass.length > 0) { + // 鎻愬彇鏂扮殑鐭╁舰ID + const newGlassIds = new Set(data.intoGlass[0].map(rect => rect.glassId)); + + // 杩囨护鍑哄凡瀛樺湪鐨勭煩褰� + const existingRects = adjustedRects1.value.filter(rect => newGlassIds.has(rect.glassId)); + + // 璁$畻鏂扮殑鐭╁舰 const newRects = data.intoGlass[0].map(rect => { const scaleFactor = 794.67/5087; let adjustedWidth, adjustedHeight, adjustedWidtha, adjustedHeighta,widtha,heighta;; @@ -163,17 +279,80 @@ widtha: rect.width, heighta: rect.height, } - }); - // 鍚堝苟鏂版棫鐭╁舰锛屼繚鐣� isActive 鐘舵�� - adjustedRects1.value = adjustedRects1.value.map(oldRect => { + }); + + // 鍚堝苟鏂版棫鐭╁舰锛屽苟淇濈暀 isActive 鐘舵�� + adjustedRects1.value = existingRects.map(oldRect => { const newRect = newRects.find(r => r.glassId === oldRect.glassId); if (newRect) { return { ...oldRect, ...newRect, isActive: oldRect.isActive }; } - return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝鍒欎繚鐣欏師鏍� - }).concat(newRects.filter(r => !adjustedRects1.value.some(o => o.glassId === r.glassId))); + return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝浣嗕繚鐣欏湪newGlassIds涓紝鍒欎繚鐣欏師鏍� + }).concat(newRects.filter(r => !existingRects.some(o => o.glassId === r.glassId))); + } + else if (data.overGlass == null) { + adjustedRects1.value = [] } + + + + + + // if (data.waitingGlass && data.waitingGlass.length > 0) { + // const newRects = data.waitingGlass[0].map(rect => { + // const scaleFactor = 1621.78/5190; + // let adjustedWidth, adjustedHeight, adjustedWidtha, adjustedHeighta,widtha,heighta;; + // let newX = rect.yCoordinate; + // if (rect.width < rect.height) { + // widtha = rect.height; + // heighta = rect.width; + // }else { + // widtha = rect.width; + // heighta = rect.height; + // } + // if (rect.angle === 0) { + // adjustedWidth = widtha * scaleFactor; + // adjustedHeight = heighta * 0.16; + // // adjustedWidtha = widtha; + // // adjustedHeighta = heighta; + // newX = 5190 - (rect.yCoordinate + widtha); + // } else { + // adjustedWidth = heighta * scaleFactor; + // adjustedHeight = widtha * 0.16; + // // adjustedWidtha = widtha; + // // adjustedHeighta = heighta; + // newX = 5190 - (rect.yCoordinate + heighta); + // } + // return { + // ...rect, + // x: newX * scaleFactor, + // y: rect.xCoordinate * 0.16, + // width: adjustedWidth, + // height: adjustedHeight, + // widtha: rect.width, + // heighta: rect.height, + // } + // }); + // // 鍚堝苟鏂版棫鐭╁舰锛屼繚鐣� isActive 鐘舵�� + // adjustedRectsa.value = adjustedRectsa.value.map(oldRect => { + // const newRect = newRects.find(r => r.glassId === oldRect.glassId); + // if (newRect) { + // return { ...oldRect, ...newRect, isActive: oldRect.isActive }; + // } + // return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝鍒欎繚鐣欏師鏍� + // }).concat(newRects.filter(r => !adjustedRectsa.value.some(o => o.glassId === r.glassId))); + // } + // else { + // adjustedRectsa.value = '' + // } if (data.waitingGlass && data.waitingGlass.length > 0) { + // 鎻愬彇鏂扮殑鐭╁舰ID + const newGlassIds = new Set(data.waitingGlass[0].map(rect => rect.glassId)); + + // 杩囨护鍑哄凡瀛樺湪鐨勭煩褰� + const existingRects = adjustedRectsa.value.filter(rect => newGlassIds.has(rect.glassId)); + + // 璁$畻鏂扮殑鐭╁舰 const newRects = data.waitingGlass[0].map(rect => { const scaleFactor = 1621.78/5190; let adjustedWidth, adjustedHeight, adjustedWidtha, adjustedHeighta,widtha,heighta;; @@ -207,17 +386,28 @@ widtha: rect.width, heighta: rect.height, } - }); - // 鍚堝苟鏂版棫鐭╁舰锛屼繚鐣� isActive 鐘舵�� - adjustedRectsa.value = adjustedRectsa.value.map(oldRect => { + }); + + // 鍚堝苟鏂版棫鐭╁舰锛屽苟淇濈暀 isActive 鐘舵�� + adjustedRectsa.value = existingRects.map(oldRect => { const newRect = newRects.find(r => r.glassId === oldRect.glassId); if (newRect) { return { ...oldRect, ...newRect, isActive: oldRect.isActive }; } - return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝鍒欎繚鐣欏師鏍� - }).concat(newRects.filter(r => !adjustedRectsa.value.some(o => o.glassId === r.glassId))); + return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝浣嗕繚鐣欏湪newGlassIds涓紝鍒欎繚鐣欏師鏍� + }).concat(newRects.filter(r => !existingRects.some(o => o.glassId === r.glassId))); + } + else if (data.waitingGlass == null) { + adjustedRectsa.value = [] } if (data.outGlass && data.outGlass.length > 0) { + // 鎻愬彇鏂扮殑鐭╁舰ID + const newGlassIds = new Set(data.outGlass[0].map(rect => rect.glassId)); + + // 杩囨护鍑哄凡瀛樺湪鐨勭煩褰� + const existingRects = adjustedRectsb.value.filter(rect => newGlassIds.has(rect.glassId)); + + // 璁$畻鏂扮殑鐭╁舰 const newRects = data.outGlass[0].map(rect => { const scaleFactor = 1621.78/5190; const scaleFactory = 550/2800; @@ -254,15 +444,19 @@ widtha: rect.width, heighta: rect.height, } - }); - // 鍚堝苟鏂版棫鐭╁舰锛屼繚鐣� isActive 鐘舵�� - adjustedRectsb.value = adjustedRectsb.value.map(oldRect => { + }); + + // 鍚堝苟鏂版棫鐭╁舰锛屽苟淇濈暀 isActive 鐘舵�� + adjustedRectsb.value = existingRects.map(oldRect => { const newRect = newRects.find(r => r.glassId === oldRect.glassId); if (newRect) { return { ...oldRect, ...newRect, isActive: oldRect.isActive }; } - return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝鍒欎繚鐣欏師鏍� - }).concat(newRects.filter(r => !adjustedRectsb.value.some(o => o.glassId === r.glassId))); + return oldRect; // 濡傛灉鏃х煩褰㈠湪鏂版暟鎹腑涓嶅瓨鍦紝浣嗕繚鐣欏湪newGlassIds涓紝鍒欎繚鐣欏師鏍� + }).concat(newRects.filter(r => !existingRects.some(o => o.glassId === r.glassId))); + } + else if (data.outGlass == null) { + adjustedRectsb.value = [] } }; onMounted(() => { @@ -364,7 +558,7 @@ glassId: currentGlassId.value, // temperingFeedSequence: currenttemperingFeedSequence.value, line: 4001, - status: 2, + status: 8, workingProcedure: '閽㈠寲', }) if (response.code == 200) { @@ -387,7 +581,7 @@ glassId: currentGlassId.value, // temperingFeedSequence: currenttemperingFeedSequence.value, line: 4001, - status: 2, + status: 8, workingProcedure: '閽㈠寲', }) if (response.code == 200) { @@ -410,7 +604,7 @@ glassId: currentGlassId.value, // temperingFeedSequence: currenttemperingFeedSequence.value, line: 4001, - status: 2, + status: 8, workingProcedure: '閽㈠寲', }) if (response.code == 200) { @@ -433,7 +627,7 @@ glassId: currentGlassId.value, // temperingFeedSequence: currenttemperingFeedSequence.value, line: 4001, - status: 2, + status: 8, workingProcedure: '閽㈠寲', }) if (response.code == 200) { @@ -482,9 +676,9 @@ backgroundColor: rect.isActive ? '#ADFF2F' : rect.state === 5 ? '#911005' : 'lightblue' }" > <div class="centered-text"> - <div >{{ rect.glassId }}</div> - <div >{{ rect.flowCardId }}</div> - <div>{{ rect.widtha }}*{{ rect.heighta }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.glassId }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.flowCardId }}</div> + <div style="font-size: 30px;font-weight: bold;">{{ rect.widtha }}*{{ rect.heighta }}</div> </div> </div> </div> @@ -510,9 +704,9 @@ backgroundColor: rect.isActive ? '#ADFF2F' : rect.state === 5 ? '#911005' : 'lightblue' }" > <div class="centered-text"> - <div >{{ rect.glassId }}</div> - <div >{{ rect.flowCardId }}</div> - <div>{{ rect.widtha }}*{{ rect.heighta }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.glassId }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.flowCardId }}</div> + <div style="font-size: 30px;font-weight: bold;">{{ rect.widtha }}*{{ rect.heighta }}</div> </div> </div> </div> @@ -538,9 +732,9 @@ width: `${rect.width}px`, height: `${rect.height}px`, backgroundColor: rect.isActive ? '#ADFF2F' : getRectColora(rect.state) }"> <div class="centered-text"> - <div>{{ rect.glassId }}</div> - <div >{{ rect.flowCardId }}</div> - <div>{{ rect.widtha }}*{{ rect.heighta }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.glassId }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.flowCardId }}</div> + <div style="font-size: 30px;font-weight: bold;">{{ rect.widtha }}*{{ rect.heighta }}</div> </div> </div> </div> @@ -566,9 +760,9 @@ backgroundColor: rect.isActive ? '#ADFF2F' : getRectColorb(rect.state) }"> <!-- backgroundColor: rect.state === 4 ? '#911005' : '#f8e3c5' }"> --> <div class="centered-text"> - <div >{{ rect.glassId }}</div> - <div >{{ rect.flowCardId }}</div> - <div>{{ rect.widtha }}*{{ rect.heighta }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.glassId }}</div> + <div style="font-size: 15px;font-weight: bold;">{{ rect.flowCardId }}</div> + <div style="font-size: 30px;font-weight: bold;">{{ rect.widtha }}*{{ rect.heighta }}</div> </div> </div> </div> @@ -584,7 +778,7 @@ <el-button type="primary" style="margin-left: 10px;" @click="selectReportData()">{{ $t('processCard.inquire') }}</el-button> <el-button type="info" style="margin-left: 10px;" @click="printing()">{{ $t('processCard.printing') }}</el-button> </div> - + <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 -- Gitblit v1.8.0