From 56fab901b298857ff4985b7429ef843c9a9d1471 Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期三, 28 八月 2024 16:20:02 +0800
Subject: [PATCH] 钢化模块打印功能,新增表格字段

---
 UI-Project/src/views/UnLoadGlass/Landingindication.vue |   76 ++++++++++++-------------------------
 1 files changed, 25 insertions(+), 51 deletions(-)

diff --git a/UI-Project/src/views/UnLoadGlass/Landingindication.vue b/UI-Project/src/views/UnLoadGlass/Landingindication.vue
index 41a6a45..e3d52c3 100644
--- a/UI-Project/src/views/UnLoadGlass/Landingindication.vue
+++ b/UI-Project/src/views/UnLoadGlass/Landingindication.vue
@@ -1,7 +1,7 @@
 <template>
   <div class="glass-rack">
     <div >
-      <svg width="500" height="500" xmlns="http://www.w3.org/2000/svg">
+      <svg width="500" height="370" xmlns="http://www.w3.org/2000/svg">
         <g stroke="null" id="Layer_1">
           <!-- 浣跨敤 v-for 寰幆娓叉煋鏁版嵁 -->
           <g v-for="(rack, index) in racks" :key="index"   :data="tableData">
@@ -30,85 +30,70 @@
     </div>
   </div>
 </template>
-
 <script  setup>
-import { ref, watchEffect ,onMounted} from 'vue';
-
+import { ref, watchEffect ,onMounted,onUnmounted} from 'vue';
 import { useI18n } from 'vue-i18n'
   const { t } = useI18n()
   let language = ref(localStorage.getItem('lang') || 'zh')
 import Swal from 'sweetalert2'
 import request from "@/utils/request";
-import { initializeWebSocket } from '@/utils/WebSocketService';
+import { initializeWebSocket,closeWebSocket } from '@/utils/WebSocketService';
  import { WebSocketHost } from '@/utils/constants';
 const racks = ref([
   { x: 50, y: 100, height: 100, width: 60, fillColor: '#6a6da9', item: { height: 90, width: 10, fillColor: 'yellow', content: 'NG123456',downGlassInfoList:"" } },
  
+  { x: 140, y: 280, height: 60, width: 110, fillColor: '#6a6da9', item: { height: 20, width: 100, fillColor: 'yellow', content: 'NG1234561454' ,downGlassInfoList:""} },
+
   { x: 280, y: 100, height: 100, width: 60, fillColor: '#6a6da9', item: { height: 90, width: 10, fillColor: 'yellow', content: 'NG12345678',downGlassInfoList:"" } },
- 
-  { x: 140, y: 320, height: 60, width: 110, fillColor: '#6a6da9', item: { height: 20, width: 100, fillColor: 'yellow', content: 'NG1234561454' ,downGlassInfoList:""} }
+
   
 ]);
-
 watchEffect(() => {
   // 瑙﹀彂鏁版嵁鍙樺寲鏃堕噸鏂版覆鏌�
 });
-
-
 const calculateItemXPosition = (rack, item, index) => {
   if (index === 0 ) {
     return rack.x;
   } else if (index === 1 ) {
-    return rack.x + rack.width - item.width;
-  } else {
     return rack.x + (rack.width - item.width) / 2;
+  } else {
+    return rack.x + rack.width - item.width;
   }
 };
-
 const calculateItemYPosition = (rack, item, index) => {
   if (index === 0 ) {
     return rack.y + (rack.height - item.height) / 2;
   } else if (index === 1) {
-    return rack.y + (rack.height - item.height) / 2;
-  } else {
     return rack.y + rack.height - item.height;
+  } else {
+    return rack.y + (rack.height - item.height) / 2;
   }
 };
-
-
 const fetchFlowCardId = async () => {
   try {
     const response = await request.get('unLoadGlass/downWorkStation/getwo');
-    
     if (response.code === 200) {
       console.log(response); 
       // 閬嶅巻鍝嶅簲鏁版嵁骞舵浛鎹acks鏁扮粍涓殑item灞炴��
       response.data.forEach((itemData, index) => {
   if (index < racks.value.length) {
     const rack = racks.value[index];
-    const newItem = {
+      rack.fillColor = itemData.item.fullCardColor === 'red' ? '#911005' : '#6a6da9';
+      const newItem = {
       content: itemData.item.content,
       fillColor: itemData.item.fillColor,
       width: itemData.item.width === 0 ? "" : 10,
       height: itemData.item.height === 0 ? "" : 90,
       downGlassInfoList:itemData.item.downGlassInfoList
     };
-
-    if (index === 2 && itemData.item.width > 0) {
+    if (index === 1 && itemData.item.width > 0) {
       newItem.width = 100;
       newItem.height = 20;
     }
-
     rack.item = newItem;
-
     console.log(racks.value); // 鎵撳嵃鏇存柊鍚庣殑 racks 鍊�
   }
 });
-
-
-
-      
-     
     } else {
       ElMessage.error(response.msg);
     }
@@ -116,43 +101,41 @@
     console.error(error);
   }
 };
+let socket = null;
 const socketUrl = `ws://${WebSocketHost}:8085/api/talk/unloadglass2`;
 //const socketUrl = `ws://${WebSocketHost}:88/api/unLoadGlass/api/talk/unloadglass2`;
 // 瀹氫箟娑堟伅澶勭悊鍑芥暟锛屾洿鏂� receivedData 鍙橀噺
 const handleMessage = (data) => {
-
   // 鏇存柊 tableData 鐨勬暟鎹�
-
   data.glassinfo[0].forEach((itemData, index) => {
   if (index < racks.value.length) {
     const rack = racks.value[index];
-    const newItem = {
+      rack.fillColor = itemData.item.fullCardColor === 'red' ? '#911005' : '#6a6da9';
+      const newItem = {
       content: itemData.item.content,
       fillColor: itemData.item.fillColor,
       width: itemData.item.width === 0 ? "" : 10,
       height: itemData.item.height === 0 ? "" : 90,
       downGlassInfoList:itemData.item.downGlassInfoList
     };
-
-    if (index === 2 && itemData.item.width > 0) {
+    if (index === 1 && itemData.item.width > 0) {
       newItem.width = 100;
       newItem.height = 20;
     }
-
     rack.item = newItem;
-
-
    // console.log("鏄剧ず鍥�1",racks.value); // 鎵撳嵃鏇存柊鍚庣殑 racks 鍊�
   }
 });
 };
-
-// 鍒濆鍖� WebSocket锛屽苟浼犻�掓秷鎭鐞嗗嚱鏁�
-
 onMounted(() => {
   fetchFlowCardId(); // 鑾峰彇鏁版嵁
-  initializeWebSocket(socketUrl, handleMessage);
+  socket = initializeWebSocket(socketUrl, handleMessage);
 });
+  onUnmounted(() => {
+    if (socket) {
+    closeWebSocket(socket);
+    }
+    });
 const showCustomAlert = (downGlassInfoList) => {
   let tableContent = '<table border="1" style="border-collapse: collapse; width: 100%;">';
   tableContent += '<tr><th style="background-color: #f2f2f2;">鐜荤拑ID</th><th style="background-color: #f2f2f2;">鑶滅郴</th><th style="background-color: #f2f2f2;">鍘氬害</th><th style="background-color: #f2f2f2;">瀹藉害</th><th style="background-color: #f2f2f2;">楂樺害</th></tr>';
@@ -166,20 +149,16 @@
       <td>${info.height}</td>
     </tr>`;
   });
-
   tableContent += '</table>';
-
   Swal.fire({
     // title: '鐜荤拑淇℃伅',
-    title: "$t('reportWork.glassinformation')",
+    title: t('reportWork.glassinformation'),
     html: tableContent,
     customClass: {
       popup: 'format-pre'
     }
   });
 };
-
-
     const showRectInfo = (rack) => {
       const content = rack.item.content;
       console.log(rack.item.downGlassInfoList[0].flowCardId)
@@ -188,17 +167,12 @@
     const downGlassInfoList = rack.item.downGlassInfoList;
       console.log(downGlassInfoList)
       showCustomAlert(downGlassInfoList);
-
    }
- 
     };
-
-
 </script>
-
 <style scoped>
 .glass-rack {
-  margin-left: 20px;
+  /* margin-left: 10px; */
   width: 500px;
   margin-top: 5px;
 }

--
Gitblit v1.8.0