From 2f367eea0033c59e3739c6821e86b3a34af49ebb Mon Sep 17 00:00:00 2001
From: zhoushihao <zsh19950802@163.com>
Date: 星期一, 03 六月 2024 08:27:42 +0800
Subject: [PATCH] fixbug:玻璃种类过多导致机系统异常

---
 UI-Project/src/views/Caching/cachingbefore.vue |   51 +++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 47 insertions(+), 4 deletions(-)

diff --git a/UI-Project/src/views/Caching/cachingbefore.vue b/UI-Project/src/views/Caching/cachingbefore.vue
index 7cd44ea..2c6fe1a 100644
--- a/UI-Project/src/views/Caching/cachingbefore.vue
+++ b/UI-Project/src/views/Caching/cachingbefore.vue
@@ -6,7 +6,8 @@
 const adda = ref(false)
 
 import request from "@/utils/request"
-import { ref, onMounted } from "vue";
+import { ref, onMounted , onBeforeUnmount} from "vue";
+import { initializeWebSocket, closeWebSocket } from '@/utils/WebSocketService';
 // import { ref } from 'vue'
 import { ElMessage, ElMessageBox } from 'element-plus'
 //  import LanguageMixin from './lang/LanguageMixin'
@@ -35,7 +36,17 @@
     // console.error('Error fetching rects :', error);  
   }  
 }); 
-
+const toggleEnableState = async (row) => {  
+  const newState = row.enable_state === 1 ? 0 : 1;  
+  // 鍙戦�佽姹傚埌鍚庣鏇存柊鐘舵�侊紙杩欓噷鐪佺暐浜嗗疄闄呯殑璇锋眰閫昏緫锛�  
+  const response = await request.post('/cacheGlass/edgStorageCage/updateEdgStorageCage', { id: row.id, enablestate: newState });  
+  if (response.code === 200) {
+      ElMessage.success(response.message);
+      } else {  
+      ElMessage.error(response.message);
+      }  
+  row.enable_state = newState;  
+}; 
 const open = async(row) => {  
   try {  
     const confirmResult = await ElMessageBox.confirm(  
@@ -67,6 +78,30 @@
     console.error('鍙戠敓閿欒:', error);  
   }  
 };   
+const socketUrl = `ws://10.153.19.150:88/api/cacheGlass/api/talk/cacheGlass`;
+// 瀹氫箟娑堟伅澶勭悊鍑芥暟锛屾洿鏂� receivedData 鍙橀噺
+const handleMessage = (data) => {
+  // 鏇存柊 tableData 鐨勬暟鎹�
+  tableData.value = data.EdgStorageCageinfos[0]
+  // adjustedRects.value = data.EdgStorageCageinfos[0]
+  adjustedRects.value = data.EdgStorageCageinfos[0].map(rect => ({  
+            ...rect, // 澶嶅埗鍘熷瀵硅薄鐨勫叾浠栧睘鎬�  
+            width: rect.width * 0.5 ,
+            id: rect.id * 10,
+          })); 
+
+};
+// 鍒濆鍖� WebSocket锛屽苟浼犻�掓秷鎭鐞嗗嚱鏁�
+onMounted(() => {
+  // fetchFlowCardId();
+  // fetchTableData(); // 鑾峰彇鏁版嵁
+  initializeWebSocket(socketUrl, handleMessage);
+});
+
+onBeforeUnmount(() => {
+  console.log("鍏抽棴浜�")
+  closeWebSocket();
+});
 </script>
 
 <template>
@@ -86,9 +121,17 @@
             min-width="80"
             prop="enable_state"
           >
-          <template #default="scope">
+          <template #default="scope">  
+          <el-tag  
+            :type="scope.row.enable_state === 1 ? 'success' : 'danger'"  
+            @click="toggleEnableState(scope.row)"  
+          >  
+            {{ scope.row.enable_state === 1 ? '鍚敤' : '绂佺敤' }}  
+          </el-tag>  
+        </template> 
+          <!-- <template #default="scope">
             <el-tag type="success" >{{ scope.row.enable_state==1?"鍚敤":"鏈惎鐢�"  }}</el-tag>
-          </template>
+          </template> -->
           </el-table-column>
           <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200">
             <template #default="scope">

--
Gitblit v1.8.0