From e084592304b0499d05eaa31d59c463a8649352c2 Mon Sep 17 00:00:00 2001
From: wangjuncheng <1>
Date: 星期一, 30 六月 2025 22:24:13 +0800
Subject: [PATCH] 1

---
 src/components/monifangzhen/schemeInfo.vue |   48 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 43 insertions(+), 5 deletions(-)

diff --git a/src/components/monifangzhen/schemeInfo.vue b/src/components/monifangzhen/schemeInfo.vue
index f1f0c89..2050608 100644
--- a/src/components/monifangzhen/schemeInfo.vue
+++ b/src/components/monifangzhen/schemeInfo.vue
@@ -108,24 +108,61 @@
 // 澶勭悊 data 瀛楁瑙f瀽
 function parseDataField(dataStr) {
   if (typeof dataStr !== "string") return [];
+  // console.log(dataStr, '鏂规璇︽儏鍐呯殑闄嶉洦鏁版嵁');
 
   try {
     const parsed = JSON.parse(dataStr);
     const fields = {
       total: "闄嶉洦鎬婚噺锛坢m锛夛細",
       duration: "闄嶉洦鏃堕暱锛堝皬鏃讹級锛�",
-      intensity: "闄嶉洦寮哄害锛坢m/灏忔椂锛夛細",
+      intensity: "闄嶉洦寮哄害锛坢m/灏忔椂锛夛細", // 缁熶竴涓� mm/h
       prediction: "闄嶉洦鍦烘锛�",
       model: "闄嶉洦妯″紡锛�",
       history: "鍘嗗彶闄嶉洦锛�",
     };
 
+    let { total, duration, intensity, intensityUnit } = parsed;
+
+    // 鏍规嵁 intensityUnit 纭畾杞崲绯绘暟
+    let factor = 1;
+    switch (intensityUnit) {
+      case "mm/min":
+        factor = 60;
+        break;
+      case "mm/5min":
+        factor = 12;
+        break;
+      case "mm/h":
+        factor = 1;
+        break;
+      default:
+        factor = 1;
+    }
+
+    // 杞崲鍗曚綅锛氬皢 intensity 鍜� total 缁熶竴涓烘寜灏忔椂璁$畻鐨勫��
+    intensity = intensity != null ? (intensity * factor).toFixed(2) : "鏃�";
+    total = total != null ? (total * factor).toFixed(2) : "鏃�";
+
+    // 鎺у埗鍙拌緭鍑轰綘闇�瑕佺殑鍏抽敭瀛楁
+    // console.log('杞崲鍚庣殑闄嶉洦寮哄害锛坢m/h锛�:', intensity);
+    // console.log('杞崲鍚庣殑闄嶉洦鎬婚噺锛坢m锛�:', total);
+
+    // 澶勭悊 duration锛屽鏋滈潪鏁板瓧鍒欒涓洪粯璁ゅ��
+    duration = duration != null ? parseInt(duration) : "鏃�";
+
     const result = Object.entries(parsed)
       .filter(([k]) => fields[k])
-      .map(([k, v]) => ({
-        name: fields[k],
-        value: v || "鏃�",
-      }));
+      .map(([k, v]) => {
+        let displayValue = v || "鏃�";
+        if (k === "total") displayValue = total;
+        if (k === "duration") displayValue = duration;
+        if (k === "intensity") displayValue = intensity;
+
+        return {
+          name: fields[k],
+          value: displayValue,
+        };
+      });
 
     // 澶勭悊闆ㄩ噺璁℃暟鎹�
     if (parsed.type == 2 && parsed.gauges && Array.isArray(parsed.gauges)) {
@@ -140,6 +177,7 @@
 
     return result;
   } catch (e) {
+    console.error("瑙f瀽 dataStr 鍑洪敊锛�", e);
     return [{ name: "鏁版嵁锛�", value: dataStr || "鏃�" }];
   }
 }

--
Gitblit v1.9.3