From 772190e7b2e3f6ef0695ba54d9209324acdcb30a Mon Sep 17 00:00:00 2001
From: 艺术家 <10819716+q100102@user.noreply.gitee.com>
Date: 星期三, 04 六月 2025 13:57:17 +0800
Subject: [PATCH] 伸缩杆代码提交

---
 项目代码/伸缩杆/client/src/views/tts/AlarmReset/AlarmReset.vue |  102 ++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 77 insertions(+), 25 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/AlarmReset/AlarmReset.vue" "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/AlarmReset/AlarmReset.vue"
index b1124bc..3dbae62 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/AlarmReset/AlarmReset.vue"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/\344\274\270\347\274\251\346\235\206/client/src/views/tts/AlarmReset/AlarmReset.vue"
@@ -1,10 +1,22 @@
 <template>
   <div class="AlarmReset">
-    <div style="width: 100%; text-align: center; font-size: 5rem; color: #fff">
+    <div
+      :style="{
+        width: '100%',
+        textAlign: 'center',
+        fontSize: isMin ? '5rem' : '2rem',
+        color: '#fff',
+      }"
+    >
       鎶ヨ澶嶄綅
     </div>
     <div style="margin-top: 3rem">
-      <el-table :data="tableData" style="width: 100%" height="800">
+      <el-table
+        empty-text="鏆傛棤鏁版嵁"
+        :data="tableData"
+        style="width: 100%"
+        :height="isMin ? '800' : '450'"
+      >
         <el-table-column prop="Id" label="搴忓彿" />
         <el-table-column prop="AlarmContent" label="鎶ヨ鍐呭" />
         <el-table-column prop="ResetStatus" label="澶嶄綅鐘舵��" />
@@ -40,18 +52,34 @@
       />
     </div>
     <div
-      style="
-        width: 100%;
-        display: flex;
-        justify-content: center;
-        margin-top: 4rem;
-      "
+      :style="{
+        width: '100%',
+        display: 'flex',
+        justifyContent: 'center',
+        marginTop: isMin ? '4rem' : '2rem',
+      }"
     >
       <el-button
         type="primary"
-        style="width: 10rem; height: 3rem"
+        :style="{
+          width: isMin ? '16rem' : '10rem',
+          height: isMin ? '5rem' : '2.5rem',
+        }"
         @click="handleBecomeTrue"
-        >鎶ヨ澶嶄綅</el-button
+        ><span :style="{ fontSize: isMin ? '3rem' : '1.5rem' }">
+          鎶ヨ澶嶄綅</span
+        ></el-button
+      >
+      <el-button
+        type="primary"
+        :style="{
+          width: isMin ? '20rem' : '10rem',
+          height: isMin ? '5rem' : '2.5rem',
+        }"
+        @click="handleClearAlarm"
+        ><span :style="{ fontSize: isMin ? '3rem' : '1.5rem' }">
+          娓呴櫎鎶ヨ淇℃伅</span
+        ></el-button
       >
     </div>
   </div>
@@ -59,7 +87,7 @@
 <script setup>
 import { ref, onMounted, onUnmounted } from "vue";
 import { ElMessage } from "element-plus";
-import { BecomeTrue } from "@/api/newapi/AlarmReset.js";
+import { BecomeTrue, ClearAlarm } from "@/api/newapi/AlarmReset.js";
 import { formatTime } from "@/utils/index.js";
 
 const timer = ref(null);
@@ -68,26 +96,37 @@
 const pageSize = ref(10); // 姣忛〉鏄剧ず鐨勬潯鏁�
 const currentPage = ref(0); // 褰撳墠椤电爜
 const total = ref(0); // 鎬绘潯鏁�
+const isStart = ref(false); // 鏄惁寮�濮�
+const positionvalue = ref({}); // 浣嶇疆鍊�
+
 const createSocket = (url) => {
   clearInterval(timer.value);
   // 鍒涘缓WebSocket杩炴帴
   //"ws://127.0.0.1:9295/admin"
-  client.value = new WebSocket("ws://192.168.2.103:5173/");
+  //192.168.1.103
+  client.value = new WebSocket("ws://192.168.1.103:5173/");
   client.value.onopen = function () {
     console.log("WebSocket 杩炴帴鎴愬姛");
   };
   client.value.onmessage = function (event) {
     let data = JSON.parse(event.data);
-    tableData.value = data.Data.slice(
-      currentPage.value * pageSize.value,
-      (currentPage.value + 1) * pageSize.value
-    );
-    total.value = data.Data.length; // 鏇存柊鎬绘潯鏁�
-    console.log("WebSocket 鎺ユ敹鍒版秷鎭�", tableData.value);
+    if (data.Status) {
+      tableData.value = data.Data.slice(
+        currentPage.value * pageSize.value,
+        (currentPage.value + 1) * pageSize.value
+      );
+      total.value = data.Data.length; // 鏇存柊鎬绘潯鏁�
+    } else {
+      positionvalue.value = data;
+    }
+
+    console.log("WebSocket 鎺ユ敹鍒版秷鎭�", data);
   };
   client.value.onclose = function () {
     console.log("WebSocket 杩炴帴鍏抽棴");
-    timer.value = setTimeout(createSocket, 1000);
+    if (isStart.value) {
+      timer.value = setTimeout(createSocket, 1000);
+    }
   };
 
   client.value.onerror = function () {};
@@ -95,12 +134,10 @@
 const handleCurrentChange = (val) => {
   currentPage.value = val - 1; // 鏇存柊褰撳墠椤电爜
 };
-const account = JSON.parse(localStorage.getItem("user")).userName; // 鑾峰彇璐﹀彿
+// const account = JSON.parse(localStorage.getItem("user")).userName; // 鑾峰彇璐﹀彿
 //澶嶄綅鎸夐挳鏂规硶
-const handleBecomeTrue = (val) => {
-  BecomeTrue({
-    account: account,
-  }).then((res) => {
+const handleBecomeTrue = () => {
+  BecomeTrue().then((res) => {
     if (res.code == 0) {
       ElMessage({
         message: "澶嶄綅鎴愬姛",
@@ -114,16 +151,31 @@
     }
   });
 };
-
+//娓呴櫎鎶ヨ淇℃伅鏂规硶
+const handleClearAlarm = () => {
+  ClearAlarm().then((res) => {
+    if (res.code == 0) {
+      ElMessage({
+        message: "娓呴櫎鎴愬姛",
+        type: "success",
+      });
+    }
+  });
+};
+const isMin = ref(false); // 鏄惁鏈�灏忓寲
 onMounted(() => {
+  isMin.value = window.innerWidth <= 1080; // 鍒ゆ柇鏄惁鏈�灏忓寲
+  isStart.value = true; // 璁剧疆涓哄紑濮嬬姸鎬�
   createSocket();
 });
 
 onUnmounted(() => {
+  isStart.value = false;
   clearInterval(timer.value);
   if (client.value) {
     client.value.close();
   }
+  clearInterval(timer.value);
 });
 </script>
 <style lang="scss" scoped>

--
Gitblit v1.9.3