From 3cd89b88edd913530062e13e20e7d6b866fd190f Mon Sep 17 00:00:00 2001
From: helongyang <647556386@qq.com>
Date: 星期五, 19 九月 2025 10:02:43 +0800
Subject: [PATCH] 更新

---
 代码管理/WCS/WIDESEAWCS_Client/src/views/deviceMonitoring/PpWarehouse.vue |  294 ++++++++++++++++++++++++++++++----------------------------
 1 files changed, 151 insertions(+), 143 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Client/src/views/deviceMonitoring/PpWarehouse.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Client/src/views/deviceMonitoring/PpWarehouse.vue"
index 706d1b3..27b8a2a 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Client/src/views/deviceMonitoring/PpWarehouse.vue"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Client/src/views/deviceMonitoring/PpWarehouse.vue"
@@ -1,189 +1,194 @@
 <template>
   <div id="title">
     <div id="bkuang" style="border-top: none">
+      <!-- PP浠撳爢鍨涙満鐘舵�侀潰鏉� -->
       <div class="skuang">
         <div class="zhuname">PP浠撳爢鍨涙満</div>
         <div class="zhankuang">
           <div class="xname">鍫嗗灈鏈虹姸鎬�:</div>
-          <div class="xzhi" :title="data.R_PP_Status">{{ data.R_PP_Status }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Status">{{ ppData.R_PP_Status }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍫嗗灈鏈烘墜鑷姩鐘舵��:</div>
-          <div class="xzhi" :title="data.R_PP_AutoStatus">{{ data.R_PP_AutoStatus }}</div>
+          <div class="xzhi" :title="ppData.R_PP_AutoStatus">{{ ppData.R_PP_AutoStatus }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">姝e湪鎵ц鐨勪换鍔″彿:</div>
-          <div class="xzhi" :title="data.R_PP_TaskNum">{{ data.R_PP_TaskNum }}</div>
+          <div class="xzhi" :title="ppData.R_PP_TaskNum">{{ ppData.R_PP_TaskNum }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍫嗗灈鏈哄伐浣滅姸鎬�:</div>
-          <div class="xzhi" :title="data.R_PP_WorkStatus">{{ data.R_PP_WorkStatus }}</div>
+          <div class="xzhi" :title="ppData.R_PP_WorkStatus">{{ ppData.R_PP_WorkStatus }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">浣滀笟绫诲瀷:</div>
-          <div class="xzhi" :title="data.R_PP_WorkType">{{ data.R_PP_WorkType }}</div>
+          <div class="xzhi" :title="ppData.R_PP_WorkType">{{ ppData.R_PP_WorkType }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鎵樼洏绫诲瀷:</div>
-          <div class="xzhi" :title="data.R_PP_TrayType">{{ data.R_PP_TrayType }}</div>
+          <div class="xzhi" :title="ppData.R_PP_TrayType">{{ ppData.R_PP_TrayType }}</div>
         </div>
       </div>
+
+      <!-- PP鍏宠仈绔欏彴锛堝叆搴�2004+鍑哄簱2005锛� -->
       <div class="skuang">
         <div class="zhuname">鍏ュ簱2004绔欏彴</div>
         <div class="zhankuang">
           <div class="xname">璇诲彇绠变綋鐮�(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Boxcode">{{ data.R_PP_Boxcode }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Boxcode">{{ ppData.R_PP_Boxcode || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鎻℃墜淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_HandShake4">{{ data.R_PP_HandShake4 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_HandShake4">{{ ppData.R_PP_HandShake4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鑱旀満(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Online4">{{ data.R_PP_Online4 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Online4">{{ ppData.R_PP_Online4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁绌洪棽(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Free4">{{ data.R_PP_Free4 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Free4">{{ ppData.R_PP_Free4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏈夎揣(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Goods4">{{ data.R_PP_Goods4 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Goods4">{{ ppData.R_PP_Goods4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏁呴殰(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Alarm4">{{ data.R_PP_Alarm4 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Alarm4">{{ ppData.R_PP_Alarm4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_STB4">{{ data.R_PP_STB4 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_STB4">{{ ppData.R_PP_STB4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_ACK4">{{ data.R_PP_ACK4 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_ACK4">{{ ppData.R_PP_ACK4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_STB4">{{ data.W_PP_STB4 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_STB4">{{ ppData.W_PP_STB4 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_ACK4">{{ data.W_PP_ACK4 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_ACK4">{{ ppData.W_PP_ACK4 || '-' }}</div>
         </div>
 
         <div class="zhuname">鍑哄簱2005绔欏彴</div>
         <div class="zhankuang">
           <div class="xname">鎻℃墜淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_HandShake5">{{ data.R_PP_HandShake5 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_HandShake5">{{ ppData.R_PP_HandShake5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鑱旀満(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Online5">{{ data.R_PP_Online5 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Online5">{{ ppData.R_PP_Online5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁绌洪棽(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Free5">{{ data.R_PP_Free5 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Free5">{{ ppData.R_PP_Free5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏈夎揣(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Goods5">{{ data.R_PP_Goods5 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Goods5">{{ ppData.R_PP_Goods5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏁呴殰(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Alarm5">{{ data.R_PP_Alarm5 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Alarm5">{{ ppData.R_PP_Alarm5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_STB5">{{ data.R_PP_STB5 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_STB5">{{ ppData.R_PP_STB5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_ACK5">{{ data.R_PP_ACK5 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_ACK5">{{ ppData.R_PP_ACK5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_STB5">{{ data.W_PP_STB5 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_STB5">{{ ppData.W_PP_STB5 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_ACK5">{{ data.W_PP_ACK5 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_ACK5">{{ ppData.W_PP_ACK5 || '-' }}</div>
         </div>
       </div>
-      
+
+      <!-- PP鍏宠仈绔欏彴锛堝嚭搴�2016+鍑哄簱2017锛� -->
       <div class="skuang">
         <div class="zhuname">鍑哄簱2016绔欏彴</div>
         <div class="zhankuang">
           <div class="xname">鎻℃墜淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_HandShake6">{{ data.R_PP_HandShake6 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_HandShake6">{{ ppData.R_PP_HandShake6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鑱旀満(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Online6">{{ data.R_PP_Online6 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Online6">{{ ppData.R_PP_Online6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁绌洪棽(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Free6">{{ data.R_PP_Free6 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Free6">{{ ppData.R_PP_Free6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏈夎揣(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Goods6">{{ data.R_PP_Goods6 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Goods6">{{ ppData.R_PP_Goods6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏁呴殰(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Alarm6">{{ data.R_PP_Alarm6 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Alarm6">{{ ppData.R_PP_Alarm6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_STB6">{{ data.R_PP_STB6 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_STB6">{{ ppData.R_PP_STB6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_ACK6">{{ data.R_PP_ACK6 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_ACK6">{{ ppData.R_PP_ACK6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_STB6">{{ data.W_PP_STB6 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_STB6">{{ ppData.W_PP_STB6 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_ACK6">{{ data.W_PP_ACK6 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_ACK6">{{ ppData.W_PP_ACK6 || '-' }}</div>
         </div>
+
         <div class="zhuname">鍑哄簱2017绔欏彴</div>
         <div class="zhankuang">
           <div class="xname">鎻℃墜淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_HandShake7">{{ data.R_PP_HandShake7 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_HandShake7">{{ ppData.R_PP_HandShake7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鑱旀満(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Online7">{{ data.R_PP_Online7 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Online7">{{ ppData.R_PP_Online7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁绌洪棽(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Free7">{{ data.R_PP_Free7 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Free7">{{ ppData.R_PP_Free7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏈夎揣(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Goods7">{{ data.R_PP_Goods7 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Goods7">{{ ppData.R_PP_Goods7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鏄惁鏁呴殰(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_Alarm7">{{ data.R_PP_Alarm7 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_Alarm7">{{ ppData.R_PP_Alarm7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_STB7">{{ data.R_PP_STB7 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_STB7">{{ ppData.R_PP_STB7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(璇�):</div>
-          <div class="xzhi" :title="data.R_PP_ACK7">{{ data.R_PP_ACK7 }}</div>
+          <div class="xzhi" :title="ppData.R_PP_ACK7">{{ ppData.R_PP_ACK7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">璇锋眰淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_STB7">{{ data.W_PP_STB7 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_STB7">{{ ppData.W_PP_STB7 || '-' }}</div>
         </div>
         <div class="zhankuang">
           <div class="xname">鍝嶅簲淇″彿(鍐�):</div>
-          <div class="xzhi" :title="data.W_PP_ACK7">{{ data.W_PP_ACK7 }}</div>
+          <div class="xzhi" :title="ppData.W_PP_ACK7">{{ ppData.W_PP_ACK7 || '-' }}</div>
         </div>
       </div>
     </div>
@@ -191,7 +196,7 @@
 </template>
 
 <script>
-import { ref, nextTick } from "vue";
+import { ref, nextTick, watch, onUnmounted } from "vue";
 import { useStore } from "vuex";
 import { onMounted } from "vue";
 
@@ -201,13 +206,16 @@
       xuan: 0
     };
   },
-  methods: {
-  },
   setup() {
     const store = useStore();
-    const data = ref({});
+    // 浠呭瓨鍌≒P鏁版嵁锛岄伩鍏嶄笌ZH鏁版嵁娣锋穯
+    const ppData = ref({});
 
-    // 1. 瀹氫箟鏅�氬瓧娈电殑鏄犲皠瑙勫垯
+    // 寤惰繜鏇存柊閰嶇疆锛岃В鍐抽珮棰戝埛鏂板鑷寸殑闂儊
+    const UPDATE_DELAY = 300; // 寤惰繜300ms鏇存柊UI
+    let updateTimer = null;   // 瀹氭椂鍣ㄥ疄渚�
+
+    // PP鏁版嵁鏄犲皠瑙勫垯锛堜粎澶勭悊PP鐩稿叧瀛楁锛�
     const statusMap = {
       R_PP_Status: {
         1: "姝e父",
@@ -243,121 +251,120 @@
         4: "鐗瑰ぇ鎵樼洏(4)",
       }
     };
-    const onlines = [
-        "R_PP_Online6","R_PP_Online4",
-        "R_PP_Online5","R_PP_Online7"
-    ]
-    const online = {
-      true: "鑱旀満",
-      false: "鑴辨満"
-    };
-    const alarms = [
-        "R_PP_Alarm6","R_PP_Alarm4",
-        "R_PP_Alarm5","R_PP_Alarm7"
-    ]
-    const alarm = {
-      true: "鏁呴殰",
-      false: "姝e父"
-    };
-    const frees = [
-        "R_PP_Free6","R_PP_Free4",
-        "R_PP_Free5","R_PP_Free7"
-    ]
-    const free = {
-      true: "绌洪棽",
-      false: "绻佸繖"
-    };
-    const goods = [
-        "R_PP_Goods6", "R_PP_Goods4",
-        "R_PP_Goods5","R_PP_Goods7"
-    ]
-    const good = {
-      true: "鏈夎揣",
-      false: "鏃犺揣"
+
+    // PP鐩稿叧甯冨皵瀛楁鍒嗙粍
+    const fieldGroups = {
+      online: {
+        fields: ["R_PP_Online6", "R_PP_Online4", "R_PP_Online5", "R_PP_Online7"],
+        map: { true: "鑱旀満", false: "鑴辨満" }
+      },
+      alarm: {
+        fields: ["R_PP_Alarm6", "R_PP_Alarm4", "R_PP_Alarm5", "R_PP_Alarm7"],
+        map: { true: "鏁呴殰", false: "姝e父" }
+      },
+      free: {
+        fields: ["R_PP_Free6", "R_PP_Free4", "R_PP_Free5", "R_PP_Free7"],
+        map: { true: "绌洪棽", false: "绻佸繖" }
+      },
+      goods: {
+        fields: ["R_PP_Goods6", "R_PP_Goods4", "R_PP_Goods5", "R_PP_Goods7"],
+        map: { true: "鏈夎揣", false: "鏃犺揣" }
+      },
+      signal: {
+        fields: [
+          "R_PP_HandShake4", "R_PP_STB4", "R_PP_ACK4", "W_PP_STB4", "W_PP_ACK4",
+          "R_PP_HandShake5", "R_PP_STB5", "R_PP_ACK5", "W_PP_STB5", "W_PP_ACK5",
+          "R_PP_HandShake6", "R_PP_STB6", "R_PP_ACK6", "W_PP_STB6", "W_PP_ACK6",
+          "R_PP_HandShake7", "R_PP_STB7", "R_PP_ACK7", "W_PP_STB7", "W_PP_ACK7"
+        ],
+        map: { true: "鏄�", false: "鍚�" }
+      }
     };
 
-    // 2. 瀹氫箟闇�瑕佸叡鐢ㄦ槧灏勮鍒欑殑瀛楁鍒楄〃鍜屽搴旂殑鏄犲皠瑙勫垯
-    const booleanFields = [
-      "R_PP_HandShake4", "R_PP_STB4",
-      "R_PP_ACK4", "W_PP_STB4",
-      "W_PP_ACK4", 
-      "R_PP_HandShake5", "R_PP_STB5",
-      "R_PP_ACK5", "W_PP_STB5",
-      "W_PP_ACK5",
-      "R_PP_HandShake6", "R_PP_STB6",
-      "R_PP_ACK6", "W_PP_STB6",
-      "W_PP_ACK6",
-      "R_PP_HandShake7", "R_PP_STB7",
-      "R_PP_ACK7", "W_PP_STB7",
-      "W_PP_ACK7",
-    ];
-    const booleanMap = {
-      true: "鏄�",
-      false: "鍚�"
-    };
-
-    // 澶勭悊鏁版嵁锛屽厛澶勭悊鏅�氭槧灏勶紝鍐嶆壒閲忓鐞嗗叡鐢ㄦ槧灏勭殑瀛楁
-    const processData = (rawData) => {
+    // 澶勭悊PP鍘熷鏁版嵁
+    const processPPData = (rawData) => {
       if (!rawData) return {};
+      
+      // 澶嶅埗鍘熷鏁版嵁锛岄伩鍏嶇洿鎺ヤ慨鏀�
       const processed = { ...rawData };
 
-      // 澶勭悊鏅�氬瓧娈垫槧灏�
+      // 澶勭悊鐘舵�佸瓧娈垫槧灏�
       Object.keys(statusMap).forEach(key => {
         if (processed.hasOwnProperty(key)) {
-          const map = statusMap[key];
-          processed[key] = map[processed[key]] || processed[key];
+          processed[key] = statusMap[key][processed[key]] || processed[key];
         }
       });
 
-      // 鎵归噺澶勭悊鍏辩敤鏄犲皠瑙勫垯鐨勫瓧娈�
-      booleanFields.forEach(key => {
-        if (processed.hasOwnProperty(key)) {
-          processed[key] = booleanMap[processed[key]] || processed[key];
-        }
-      });
-      onlines.forEach(key => {
-        if (processed.hasOwnProperty(key)) {
-          processed[key] = online[processed[key]] || processed[key];
-        }
-      });
-      alarms.forEach(key => {
-        if (processed.hasOwnProperty(key)) {
-          processed[key] = alarm[processed[key]] || processed[key];
-        }
-      });
-      frees.forEach(key => {
-        if (processed.hasOwnProperty(key)) {
-          processed[key] = free[processed[key]] || processed[key];
-        }
-      });
-      goods.forEach(key => {
-        if (processed.hasOwnProperty(key)) {
-          processed[key] = good[processed[key]] || processed[key];
-        }
+      // 澶勭悊甯冨皵鍨嬪瓧娈垫槧灏�
+      Object.values(fieldGroups).forEach(group => {
+        group.fields.forEach(key => {
+          if (processed.hasOwnProperty(key)) {
+            processed[key] = group.map[processed[key]] || processed[key];
+          }
+        });
       });
 
       return processed;
     };
 
-    onMounted(() => {
-      nextTick(() => {
-        setInterval(() => {
-          const rawData = store.state.homedata;
-          data.value = processData(rawData);
-          const xian = document.getElementsByClassName("xzhi");
-          for (let i = 0; i < xian.length; i++) {
-            if (xian[i].innerHTML === "鏄�") {
-              xian[i].style.color = "yellow";
-            } else if (xian[i].innerHTML === "鍚�") {
-              xian[i].style.color = "red";
+    // 寤惰繜鏇存柊PP鏁版嵁锛岄伩鍏嶉珮棰戝埛鏂�
+    const delayedUpdatePPData = (newRawData) => {
+      // 娓呴櫎涔嬪墠鐨勫畾鏃跺櫒锛岀‘淇濆彧鎵ц鏈�鍚庝竴娆℃洿鏂�
+      if (updateTimer) {
+        clearTimeout(updateTimer);
+      }
+
+      // 寤惰繜鎸囧畾鏃堕棿鍚庢洿鏂版暟鎹�
+      updateTimer = setTimeout(() => {
+        // 鍙鐞嗗寘鍚玃P鐗瑰緛瀛楁鐨勬暟鎹�
+        if (newRawData && newRawData.R_PP_Status !== undefined) {
+          ppData.value = processPPData(newRawData);
+          
+          // 鏇存柊鏍峰紡
+          nextTick(() => {
+            const valueElements = document.getElementsByClassName("xzhi");
+            for (let i = 0; i < valueElements.length; i++) {
+              if (valueElements[i].innerHTML === "鏄�") {
+                valueElements[i].style.color = "yellow";
+              } else if (valueElements[i].innerHTML === "鍚�") {
+                valueElements[i].style.color = "red";
+              }
             }
+          });
+        }
+      }, UPDATE_DELAY);
+    };
+
+    onMounted(() => {
+      // 鍒濆鍔犺浇鏁版嵁
+      const initialData = store.state.homedata;
+      if (initialData && initialData.R_PP_Status !== undefined) {
+        ppData.value = processPPData(initialData);
+      }
+
+      // 鐩戝惉鏁版嵁鍙樺寲锛屽彧澶勭悊PP鏁版嵁
+      const unwatch = watch(
+        () => store.state.homedata,
+        (newData) => {
+          // 浠呭綋鏁版嵁鍖呭惈PP鐗瑰緛瀛楁鏃舵墠鏇存柊
+          if (newData && newData.R_PP_Status !== undefined) {
+            delayedUpdatePPData(newData);
           }
-        });
+        },
+        { deep: true } // 娣卞害鐩戝惉瀵硅薄鍐呴儴鍙樺寲
+      );
+
+      // 缁勪欢鍗歌浇鏃舵竻鐞嗚祫婧�
+      onUnmounted(() => {
+        unwatch();
+        if (updateTimer) {
+          clearTimeout(updateTimer);
+        }
       });
     });
 
     return {
-      data,
+      ppData
     };
   }
 };
@@ -501,3 +508,4 @@
   border-radius: 10px;
 }
 </style>
+    
\ No newline at end of file

--
Gitblit v1.9.3