From adc9abd145c24f2d3e7033bb738e1e8641eaf4cf Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期二, 02 九月 2025 17:30:43 +0800
Subject: [PATCH] 2025.9.2

---
 src/constant/checkbox-options.js |  255 +++++++++++++++-----------------------------------
 1 files changed, 79 insertions(+), 176 deletions(-)

diff --git a/src/constant/checkbox-options.js b/src/constant/checkbox-options.js
index 6f1178d..e3d5327 100644
--- a/src/constant/checkbox-options.js
+++ b/src/constant/checkbox-options.js
@@ -1,186 +1,89 @@
 import { TYPE0, TYPE1, TYPE2, TYPE4 } from '@/constant/device-type';
+import {
+  option1,
+  option1All,
+  default1,
+  option2,
+  option3,
+  default3,
+  option4
+} from '@/constant/checkbox-options/options';
+import {
+  option1 as option1Jingan,
+  default1 as default1Jingan
+} from '@/constant/checkbox-options/options-jingan';
 
 // 鐩戞祴鍥犲瓙鍗曢�夋閫夐」
-function checkboxOptions(deviceType) {
-  switch (deviceType) {
-    case TYPE0:
-      return option1;
-    case TYPE1:
-      return option3;
-    case TYPE2:
-      return option2;
-    case TYPE4:
-      return option4;
-    default:
-      return option1;
+function checkboxOptions(deviceType, allOptions) {
+  if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+    switch (deviceType) {
+      case TYPE0:
+        return option1Jingan;
+      default:
+        return option1Jingan;
+    }
+  } else {
+    switch (deviceType) {
+      case TYPE0:
+        return allOptions ? option1All : option1;
+      case TYPE1:
+        return option3;
+      case TYPE2:
+        return option2;
+      case TYPE4:
+        return option4;
+      default:
+        return option1;
+    }
   }
 }
 
-const option1 = [
-  {
-    label: 'NO2',
-    name: 'NO2',
-    value: '1'
-  },
-  {
-    label: 'CO',
-    name: 'CO',
-    value: '2'
-  },
-  {
-    label: 'H2S',
-    name: 'H2S',
-    value: '3'
-  },
-  {
-    label: 'SO2',
-    name: 'SO2',
-    value: '4'
-  },
-  {
-    label: 'O3',
-    name: 'O3',
-    value: '5'
-  },
-  {
-    label: 'PM2.5',
-    name: 'PM25',
-    value: '6'
-  },
-  {
-    label: 'PM10',
-    name: 'PM10',
-    value: '7'
-  },
-  {
-    label: 'TVOC',
-    name: 'VOC',
-    value: '10'
-  },
-
-  // {
-  //     label: "NOI",
-  //     name: "NOI",
-  //     value: "11"
-  // },
-  {
-    label: '杞﹂��',
-    name: 'VELOCITY',
-    value: '14'
-  },
-  {
-    label: '椋庨��',
-    name: 'WIND_SPEED',
-    value: '16'
-  },
-  {
-    label: '椋庡悜',
-    name: 'WIND_DIRECTION',
-    value: '17'
-  },
-  {
-    label: '楂樺害',
-    name: 'HEIGHT',
-    value: '18'
+function defaultOptions(deviceType) {
+  if (import.meta.env.VITE_DATA_MODE == 'jingan') {
+    switch (deviceType) {
+      case TYPE0:
+        return default1Jingan;
+      default:
+        return undefined;
+    }
+  } else {
+    switch (deviceType) {
+      case TYPE0:
+        return default1;
+      case TYPE1:
+        return default3;
+      case TYPE2:
+        return undefined;
+      case TYPE4:
+        return undefined;
+      default:
+        return undefined;
+    }
   }
-];
+}
 
-const option2 = [
-  {
-    label: '娓╁害',
-    name: 'TMP',
-    value: '1'
-  },
-  {
-    label: '鐢靛鐜�',
-    name: 'spC',
-    value: '2'
-  },
-  {
-    label: '娴婂害',
-    name: 'tur',
-    value: '3'
-  },
-  {
-    label: '婧惰В姘�',
-    name: 'DO',
-    value: '4'
-  },
-  {
-    label: 'PH',
-    name: 'PH',
-    value: '5'
+/**
+ * 榛樿閫夐」
+ * @param {*} deviceType 璁惧绫诲瀷
+ * @param {*} count 榛樿閫変腑涓暟
+ * @returns
+ */
+function defaultFactorTypes(deviceType, count = 3) {
+  const defaultOpt = defaultOptions(deviceType);
+  if (defaultOpt) {
+    if (defaultOpt.length > count) {
+      return defaultOpt.slice(0, count);
+    } else {
+      return defaultOpt;
+    }
+  } else {
+    const list = checkboxOptions(deviceType);
+    if (list.length > count) {
+      return list.slice(0, count).map((v) => v.value);
+    } else {
+      return list.map((v) => v.value);
+    }
   }
-];
+}
 
-const option3 = [
-  {
-    label: 'NO2',
-    name: 'NO2',
-    value: '1'
-  },
-  {
-    label: 'CO',
-    name: 'CO',
-    value: '2'
-  },
-  {
-    label: 'H2S',
-    name: 'H2S',
-    value: '3'
-  },
-  {
-    label: 'SO2',
-    name: 'SO2',
-    value: '4'
-  },
-  {
-    label: 'O3',
-    name: 'O3',
-    value: '5'
-  },
-  {
-    label: 'PM2.5',
-    name: 'PM25',
-    value: '6'
-  },
-  {
-    label: 'PM10',
-    name: 'PM10',
-    value: '7'
-  },
-  {
-    label: 'TVOC',
-    name: 'VOC',
-    value: '10'
-  },
-  {
-    label: '椋庨��',
-    name: 'WIND_SPEED',
-    value: '16'
-  },
-  {
-    label: '椋庡悜',
-    name: 'WIND_DIRECTION',
-    value: '17'
-  }
-];
-
-const option4 = [
-  {
-    label: 'A鐩哥數娴�',
-    name: 'EA',
-    value: '1'
-  },
-  {
-    label: 'B鐩哥數娴�',
-    name: 'EB',
-    value: '2'
-  },
-  {
-    label: 'C鐩哥數娴�',
-    name: 'EC',
-    value: '3'
-  }
-];
-export { checkboxOptions };
+export { checkboxOptions, defaultFactorTypes };

--
Gitblit v1.9.3