From ca6e546a02c7c168263ba057ea51369ba44eb3cc Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期二, 06 八月 2024 11:01:01 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/HangZhouMes

---
 UI-Project/src/views/UnLoadGlass/loadmachinerack.vue |   88 +++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 83 insertions(+), 5 deletions(-)

diff --git a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
index 8bbc6f5..844a323 100644
--- a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
+++ b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
@@ -1,6 +1,6 @@
 <script setup>
 import {Search} from "@element-plus/icons-vue";
-import {reactive, onMounted, onBeforeUnmount} from "vue";
+import {reactive, onMounted, onBeforeUnmount,onUnmounted} from "vue";
 import {useRouter} from "vue-router"
 const router = useRouter()
 import { useI18n } from 'vue-i18n'
@@ -15,6 +15,7 @@
 import { WebSocketHost ,host} from '@/utils/constants'
 const dialogFormVisiblea = ref(false)
 const dialogFormVisiblea2 = ref(false)
+const dialogFormVisibleaDownGlass = ref(false)
 // 鏁版嵁
 const loading = ref(false);
 // 寮规鏄剧ず鎺у埗
@@ -25,6 +26,7 @@
 const flowCardId = ref('');
 const flowCardOptions = ref('[]');
 const tableData = reactive([]);
+const downGlass= ref([]);
 // 鏂规硶
 const handleSelectionChange = () => {
   // 澶勭悊琛ㄦ牸琛岄�夋嫨浜嬩欢
@@ -106,7 +108,7 @@
             console.log('娓呴櫎鎴愬姛');
             ElMessage.success(response.message);
             dialogFormVisiblea2.value = false;
-        } else if (response.code === 400) {
+        } else if (response.code === 500) {
             // 娓呴櫎澶辫触鐨勯�昏緫
             console.log('娓呴櫎澶辫触');
             console.log(response.message); // 鎵撳嵃鏈嶅姟鍣ㄨ繑鍥炵殑閿欒淇℃伅
@@ -139,23 +141,74 @@
     ElMessage.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触锛岃閲嶈瘯');
   }
 };
+let socket = null;
 const socketUrl = `ws://${WebSocketHost}:${host}/api/unLoadGlass/api/talk/unloadglass`;
 // 瀹氫箟娑堟伅澶勭悊鍑芥暟锛屾洿鏂� receivedData 鍙橀噺
 const handleMessage = (data) => {
   // 鏇存柊 tableData 鐨勬暟鎹�
-  tableData.splice(0, tableData.length, ...data.params[0]);
+  if(data.sendDownGlass!=null){
+    downGlass.value=data.sendDownGlass[0][1];
+    console.log(downGlass.value);
+    console.log(tableData.value);
+  }
+  // tableData.splice(0, tableData.length, ...data.params[0]);
+
 //  console.log("鏇存柊鍚庢暟鎹�", data.params[0]);
 };
 // 鍒濆鍖� WebSocket锛屽苟浼犻�掓秷鎭鐞嗗嚱鏁�
 onMounted(() => {
   fetchFlowCardId();
   fetchTableData(); // 鑾峰彇鏁版嵁
-  initializeWebSocket(socketUrl, handleMessage);
+  socket = initializeWebSocket(socketUrl, handleMessage);
 });
+  onUnmounted(() => {
+    if (socket) {
+    closeWebSocket(socket);
+    }
+    });
 onBeforeUnmount(() => {
   console.log("鍏抽棴浜�")
   closeWebSocket();
 });
+
+
+const getTagType =(status) => {
+      return status === 1 ? 'success' : 'danger';
+      // 鏍规嵁鐘舵�佸�煎喅瀹氭爣绛剧被鍨嬶紝杩欓噷鍋囪鐘舵�佷负1鏃朵负鎴愬姛锛堢豢鑹诧級锛屽惁鍒欎负澶辫触锛堢孩鑹诧級
+    }
+ 
+    const toggleStatus = (row) => {
+      // 鍒囨崲鏂欐灦鐘舵�佺殑閫昏緫
+      row.enableState = 1 - row.enableState; // Toggle between 0 and 1
+      // 姝ゅ鍙互娣诲姞淇濆瓨鐘舵�佺殑閫昏緫锛屾瘮濡傝皟鐢� API 鏇存柊鏁版嵁
+      updateRowStatus(row);
+    };
+ 
+    const updateRowStatus = async (row) => {
+  try {
+    // 鍋囪浣犵殑鍚庣 API 鎺ユ敹 PUT 璇锋眰锛屽苟涓旈渶瑕佷紶閫� row.id 鍜� row.enableState 鍙傛暟
+   
+ 
+    const response = await request.post('unLoadGlass/downWorkStation/updateDownWorkstation', {
+      enableState: row.enableState,
+      id: row.id
+
+ 
+    }); 
+    console.log('Updated row status:', response.data);
+    // 鍙互鏍规嵁鍚庣杩斿洖鐨勬暟鎹繘琛岃繘涓�姝ュ鐞嗭紝姣斿鏇存柊鏈湴鐘舵�佺瓑
+  } catch (error) {
+    console.error('Error updating row status:', error);
+    // 澶勭悊閿欒鎯呭喌锛屾瘮濡傛彁绀虹敤鎴锋洿鏂板け璐�
+  }
+};
+ 
+
+
+
+
+
+
 // beforeUnmount(() => {
 //   closeWebSocket();
 // });
@@ -163,6 +216,7 @@
 </script>
 <template>
   <div>
+    <el-button style="margin-top: 5px;margin-left: 10px;" id="searchButton" type="primary" @click="dialogFormVisibleaDownGlass = true">钀芥灦璇︽儏</el-button>
     <el-card style="flex: 1;" v-loading="loading">
       <el-card style="flex: 1;margin-left: 4px;margin-top: 1px;" v-loading="loading">
       <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto;">
@@ -185,7 +239,9 @@
             prop="enableState"
           >
           <template #default="scope">
-            <el-tag type="success" >{{ scope.row.enableState==1? $t('reportWork.enable') : $t('reportWork.unenable')}}</el-tag>
+            <el-tag :type="getTagType(scope.row.enableState)" @click="toggleStatus(scope.row)">
+          {{ scope.row.enableState === 1 ? $t('reportWork.enable') : $t('reportWork.unenable') }}
+        </el-tag>
           </template>
           </el-table-column>
           <el-table-column fixed="right" :label="$t('reportWork.operate')" align="center" width="200">
@@ -193,9 +249,29 @@
             <el-button size="mini" type="text" plain v-show="scope.row.enableState !== '宸插惎鐢�' " @click="handleBindRack(scope.row)">{{ $t('reportWork.bindingshelves') }}</el-button>
             <el-button size="mini" type="text" plain  @click="handleBindRack2(scope.row)">{{ $t('reportWork.clear') }}</el-button>
           </template>
+          
         </el-table-column>
         </el-table>
+        
       </div>
+      <el-dialog v-model="dialogFormVisibleaDownGlass" top="2vh" width="97%" :title="$t('searchOrder.cageinformation')">
+        <el-table height="200px" ref="table" 
+        @selection-change="handleSelectionChange"
+        :data="downGlass" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
+        <el-table-column prop="workStationId" align="center" :label="$t('宸ヤ綅鍙�')" min-width="80" />
+        <el-table-column prop="engineerId" align="center" :label="$t('宸ョ▼鍙�')" min-width="80" />
+          <el-table-column prop="flowCardId" align="center" :label="$t('娴佺▼鍗″彿')" min-width="80" />
+          <el-table-column prop="layer" align="center" :label="$t('灞�')" min-width="120" />
+          <el-table-column prop="sequence" align="center" :label="$t('椤哄簭')" min-width="150" />
+          <el-table-column prop="width" align="center" :label="$t('瀹�')" min-width="120" />
+          <el-table-column prop="height" align="center" :label="$t('楂�')" min-width="120" />
+          <el-table-column prop="Filmsid" align="center" :label="$t('鑶滅郴')" min-width="120" />
+          <el-table-column prop="thickness" align="center" label="鍘氬害" min-width="120" />
+          <el-table-column prop="glassId" align="center" :label="$t('鐜荤拑id')" min-width="120" />
+          
+        </el-table>
+      </el-dialog>
+      
     </el-card>
     <!-- workstationId: '1',
     workstationId: '1005',
@@ -212,6 +288,7 @@
     </div>
     </div>
     </el-card>
+    
   </div>
 
     <el-dialog v-model="dialogFormVisiblea" top="21vh" width="40%" :title="$t('reportWork.bindingshelves')">
@@ -231,6 +308,7 @@
     </div>
     <template #footer>
       <div id="dialog-footer">
+
         <el-button type="primary" @click="handleConfirm">
           {{ $t('reportWork.sure') }}
         </el-button>

--
Gitblit v1.8.0