From 1fe112d228eae029d5635f47ec0fe4f944da7b50 Mon Sep 17 00:00:00 2001
From: he wei <858544502@qq.com>
Date: 星期三, 23 四月 2025 18:47:48 +0800
Subject: [PATCH] U 修复通信电源告警bug 电池实时告警添加非一级告警的批量确认

---
 src/views/alarmMager/batteryrTimequery.vue |   75 +++++++++++++++++++++++++++++++++++++
 1 files changed, 75 insertions(+), 0 deletions(-)

diff --git a/src/views/alarmMager/batteryrTimequery.vue b/src/views/alarmMager/batteryrTimequery.vue
index 4b8f649..aeda3fa 100644
--- a/src/views/alarmMager/batteryrTimequery.vue
+++ b/src/views/alarmMager/batteryrTimequery.vue
@@ -233,12 +233,21 @@
             <el-table
               id="batteryrTimequeryTable"
               stripe
+              row-key="num"
               size="small"
               :data="table1.datas"
               height="100%"
               class="tableCent"
+              ref="unconfirmTable"
               tooltip-effect="light"
+              @selection-change="handleSelect"
             >
+              <el-table-column
+                type="selection"
+                width="50"
+                align="center"
+              >
+              </el-table-column>
               <el-table-column label="缂栧彿" type="index" width="50">
               </el-table-column>
               <el-table-column
@@ -354,6 +363,12 @@
               layout="total, sizes, prev, pager, next, jumper"
               :total="total1"
             ></el-pagination>
+            <el-button
+              type="danger"
+              size="mini"
+              @click="batchOkAlarm()"
+              >鎵归噺纭鍛婅</el-button
+            >
             <!--  <el-button type="primary" round size="mini" icon="el-icon-wallet">鍏ㄩ儴閫変腑</el-button> -->
           </div>
         </flex-layout>
@@ -654,6 +669,7 @@
   deletionRecord /* 鍒犻櫎 */,
   reporTemergency /* 纭鍛婅 */,
   CancelTheAlarm /* 鍙栨秷鍛婅 */,
+  reporTemergencyBatch,
 } from "./js/batteryrTimequery.js";
 import {
   searchProvince,
@@ -973,6 +989,7 @@
         four: 0,
       },
       detailsVisible: false,
+      selectedRows: [],
     };
   },
   components: {
@@ -1083,6 +1100,55 @@
         "鐢垫睜鍛婅-寰呭鐞�",
       ][idx - 1];
       export_json_to_excel(tHeader, excelData, fileName);
+    },
+    isRowSelectable(row, index) {
+      return row.alarmLevel != 1;
+    },
+    toggleRowSelection(row, selected) {
+      if (selected) {
+        this.selectedRows.push(row);
+      } else {
+        this.selectedRows = this.selectedRows.filter(r => r !== row);
+      }
+    },
+    
+    handleSelect(data) {
+      // console.log('handleSelect', data, '=============');
+      this.selectedRows = data;
+      
+    },
+    // 鎵归噺纭
+    batchOkAlarm() {
+      const selectedData = this.selectedRows;
+      if (selectedData.length === 0) {
+        this.$message.error("璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�");
+        return false;
+      }
+      if (selectedData.some(row => row.alarmLevel == 1)) {
+        this.$message.error("涓�绾у憡璀︿笉鑳芥壒閲忕‘璁�");
+        return false;
+      }
+
+
+      let nums = selectedData.map(row => row.num);
+      // console.log('nums', nums, '=============');
+      
+      let loading = this.$layer.loading();
+      reporTemergencyBatch(nums).then((res) => {
+        let { code, data } = res.data;
+        this.$layer.close(loading);
+        if (code && data) {
+          this.$message.success("鎿嶄綔鎴愬姛");
+          this.sendMessage();
+        } else {
+          this.$message.error("鎿嶄綔澶辫触");
+        }
+      })
+      .catch((err) => {
+        this.$layer.close(loading);
+        console.log(err);
+      });
+      
     },
     /* 缁存姢鍖� */
     async vindicateData() {
@@ -1245,6 +1311,7 @@
               monNum: item.monNum == 0 ? "-" : item.monNum,
               almValue: item.almValue,
               almLevel: item.almLevelName,
+              alarmLevel: item.almLevel,
               almStartTime: item.almStartTime,
               almConfirmedTime: "",
               almIsConfirmed: false,
@@ -1257,6 +1324,7 @@
           this.exportFile(list, 1);
         } else {
           this.table1.datas = list;
+          // this.updateSelectionState();
         }
       } else {
         this.total1 = 0;
@@ -1581,6 +1649,9 @@
       this.sendMessage();
     },
     sendMessage() {
+      if (!this.isWSOpen) {
+        return false;
+      }
       let params = this.formatParams();
       console.log("====", params, JSON.stringify(params));
       this.SOCKET.send(JSON.stringify(params));
@@ -1812,4 +1883,8 @@
     background-color: #ccc;
   }
 }
+/* 闅愯棌琛ㄥご閫夋嫨妗� */
+:deep(.el-table__header-wrapper .el-table-column--selection .cell .el-checkbox) {
+  // display: none;
+}
 </style>

--
Gitblit v1.9.1