From 1a0e4972f80278bfa9e53283374b745b6c968341 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期二, 13 八月 2024 17:30:57 +0800
Subject: [PATCH] 设备信息管理模块

---
 pages/inspection/scene/info/device-info-items.js |  144 ++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 109 insertions(+), 35 deletions(-)

diff --git a/pages/inspection/scene/info/device-info-items.js b/pages/inspection/scene/info/device-info-items.js
index 92f4ff4..e3b9907 100644
--- a/pages/inspection/scene/info/device-info-items.js
+++ b/pages/inspection/scene/info/device-info-items.js
@@ -1,35 +1,109 @@
-export const menuData = [
-  {
-    label: '绔欑偣鍚嶇О',
-    placeholder: '璇疯緭鍏ョ珯鐐瑰悕绉�',
-    name: 'diName',
-    value: '',
-    status: 'success',
-    tips: '绔欑偣鍚嶇О涓嶈兘涓虹┖',
-    onChange:(v)=>{
-      this.value = v
-    }
-  },
-  {
-    label: 'MN缂栧彿',
-    placeholder: '璇疯緭鍏N缂栧彿',
-    name: 'diMnCode',
-    value: '',
-    status: 'success',
-    tips: 'MN缂栧彿涓嶈兘涓虹┖',
-    onChange:(v)=>{
-      this.value = v
-    }
-  },
-  {
-    label: '璁惧绫诲瀷',
-    placeholder: '璇疯緭鍏ヨ澶囩被鍨�',
-    name: 'diType',
-    value: '',
-    status: 'success',
-    tips: '璁惧绫诲瀷涓嶈兘涓虹┖',
-    onChange:(v)=>{
-      this.value = v
-    }
-  },
-];
+import { baseInputItem, hideInputItem, setDefaultValue } from "../../../../components/form/form-util.js";
+import { monitorDevices } from '../../../../common/dataMonitorDeviceType';
+import { treatmentDevices } from '../../../../common/dataTreatmentDeviceType';
+import { productionDevices } from '../../../../common/dataProductionDeviceType';
+import { freq } from '../../../../common/dataMaintainFrequency';
+import { status } from '../../../../common/dataRunningStatus';
+import { ownership } from '../../../../common/dataOwnership';
+
+/**
+ * 鐩戞祴璁惧琛ㄥ崟
+ * @param {Number} sceneType 鍦烘櫙绫诲瀷锛堥缇界洃绠$郴缁燂級
+ * @param {Object} defaultValue 琛ㄥ崟榛樿鍊�
+ */
+export function monitorDeviceForm(sceneType, defaultValue) {
+  const items = [
+    hideInputItem('id', 'diId'),
+    hideInputItem('鍒涘缓鏃堕棿', 'diCreateTime'),
+    hideInputItem('鏇存柊鏃堕棿', 'diUpdateTime'),
+    hideInputItem('鍦烘櫙id', 'diSceneGuid'),
+    hideInputItem('鍦烘櫙绫诲瀷', 'diSceneTypeId'),
+
+    baseInputItem('绔欑偣鍚嶇О', 'diName', true),
+    baseInputItem('璁惧缂栧彿', 'diDeviceCode'),
+    // 璁惧绫诲瀷鍜岃澶囧瓙绫诲悎骞剁敤绾ц仈閫夋嫨鍣ㄥ睍绀�
+    baseInputItem(
+      '璁惧绫诲瀷',
+      '_type',
+      true,
+      'cascader',
+      monitorDevices(sceneType),
+      ['閫夋嫨璁惧绫诲瀷', '閫夋嫨璁惧瀛愮被'],
+      ['diTypeId', 'diSubtypeId'],
+    ),
+    // baseInputItem('璁惧绫诲瀷', 'diTypeId', true, 'picker'),
+    // baseInputItem('璁惧瀛愮被', 'diSubtypeId', true, 'picker'),
+    baseInputItem('渚涘簲鍟�', 'diSupplier'),
+    baseInputItem('杩愮淮鍟�', 'diMaintainer'),
+    baseInputItem('杩愮淮棰戞', 'diMaintainFrequency', true, 'picker', freq),
+    baseInputItem('杩愮淮浜哄憳', 'diMaintainStaff'),
+    baseInputItem('杩愮淮鐢佃瘽', 'diMaintainTel'),
+    baseInputItem('杩愯鐘舵��', 'diRunningStatus', true, 'picker', status),
+    baseInputItem('鍝佺墝鍨嬪彿', 'diBrandModel'),
+    baseInputItem('璁惧鍙傛暟', 'diDeviceParam'),
+    baseInputItem('鎵�鏈夋潈', 'diOwnership', true, 'picker', ownership),
+
+    // todo 2024/8/12: 鍚庣画瑕佹坊鍔犱簩缁寸爜鐨勪俊鎭壂鎻忓綍鍏�
+    // baseInputItem('鏍囪瘑浜岀淮鐮�', 'DI_QR_Code'),
+    // baseInputItem('鍏朵粬绗笁鏂规垨璁惧鑷甫浜岀淮鐮�', 'DI_Other_QR_Code'),
+  ];
+
+  // 濉厖榛樿鏁版嵁
+  setDefaultValue(items, defaultValue);
+
+  return items;
+}
+
+/**
+ * 娌荤悊璁惧琛ㄥ崟
+ */
+export function treatmentDeviceForm(sceneType, defaultValue) {
+  return [
+    baseInputItem('绔欑偣鍚嶇О', 'diName', true),
+    baseInputItem('璁惧缂栧彿', 'diDeviceCode'),
+    baseInputItem('璁惧绫诲瀷', 'diType', true),
+    baseInputItem('渚涘簲鍟�', 'diSupplier'),
+    baseInputItem('杩愮淮鍟�', 'diMaintainer'),
+    baseInputItem('鏄惁涓婄嚎', 'diRunningStatus', true, 'switch'),
+    baseInputItem('鏄惁鎷嗛櫎', 'diRemoved', true, 'switch'),
+  ];
+}
+
+/**
+ * 鐢熶骇璁惧琛ㄥ崟
+ */
+export function productionDeviceForm(sceneType, defaultValue) {
+  return [
+    baseInputItem('绔欑偣鍚嶇О', 'diName', true),
+    baseInputItem('璁惧缂栧彿', 'diDeviceCode'),
+    baseInputItem('璁惧绫诲瀷', 'diType', true),
+    baseInputItem('渚涘簲鍟�', 'diSupplier'),
+    baseInputItem('杩愮淮鍟�', 'diMaintainer'),
+    baseInputItem('鏄惁涓婄嚎', 'diRunningStatus', true, 'switch'),
+    baseInputItem('鏄惁鎷嗛櫎', 'diRemoved', true, 'switch'),
+  ];
+}
+
+/**
+ * 璁惧鐘舵�佽〃鍗�
+ */
+export function deviceStatusForm(defaultValue) {
+  return [
+    hideInputItem('id', 'dlId'),
+    hideInputItem('璁惧id', 'dlDeviceId'),
+    hideInputItem('璁惧绫诲瀷', 'dlDeviceType'),
+    hideInputItem('鍦烘櫙id', 'dlSceneGuid'),
+    hideInputItem('鍦烘櫙绫诲瀷', 'dlSceneTypeId'),
+    hideInputItem('鐜板満鍥剧墖', 'dlPicUrl'),
+    hideInputItem('鐜板満瑙嗛', 'dlVideoUrl'),
+    hideInputItem('鍒涘缓鏃堕棿', 'dlCreateTime'),
+    hideInputItem('鏇存柊鏃堕棿', 'dlUpdateTime'),
+    
+    baseInputItem('璁惧浣嶇疆', 'DL_Location', true),
+    baseInputItem('缁忓害', 'DL_Longitude'),
+    baseInputItem('缁村害', 'DL_Latitude', true),
+    baseInputItem('鏄惁瑙勮寖', 'DL_Standard', true, 'switch'),
+    baseInputItem('涓嶈鑼冨師鍥�', 'DL_UnStandard_Reason'),
+    baseInputItem('杩愯鐘舵��', 'DL_Real_Time_Status', true, 'picker', status),
+  ];
+}
\ No newline at end of file

--
Gitblit v1.9.3