From 3282e95db0207ee133d1e98d9771dec9d83b0fc4 Mon Sep 17 00:00:00 2001
From: riku <risaku@163.com>
Date: 星期四, 02 四月 2026 16:24:38 +0800
Subject: [PATCH] 2026.4.2 新增专题管理功能

---
 model/device.js |   70 ++++++++++++++++++++++++++++++++--
 1 files changed, 65 insertions(+), 5 deletions(-)

diff --git a/model/device.js b/model/device.js
index 506b788..9ee4e16 100644
--- a/model/device.js
+++ b/model/device.js
@@ -5,9 +5,16 @@
 import { toLabel as toLabelMonitor } from '../common/dataMonitorDeviceType';
 import { toLabel as toLabelTreatment } from '../common/dataTreatmentDeviceType';
 import { toLabel as toLabelProduction } from '../common/dataProductionDeviceType';
+import { inspectPicUrl } from '../config/index';
+
+// 璁惧淇℃伅鏇存柊鏃堕棿瓒呰繃鍑犱釜鏈堝悗锛岃璁や负闇�瑕佺‘璁�
+const intervalMonth = 3;
 
 // 鐩戞祴璁惧
 export function getMonitorDevice(data) {
+  data._id = data.diId;
+  data._name = data.diName;
+  data._deviceCode = data.diDeviceCode;
   data._updateTime = dayjs(data.diUpdateTime).format('YYYY骞碝M鏈圖D鏃�');
   data._maintainFrequency = toLabelFreq(data.diMaintainFrequency);
   data._ownership = toLabelOwner(data.diOwnership);
@@ -15,11 +22,26 @@
   const labelArr = toLabelMonitor(data.diSceneTypeId, [data.diTypeId, data.diSubtypeId]);
   data._type = labelArr[0];
   data._subType = labelArr[1];
-  return data
+
+  // 涓婃鏇存柊鏃堕棿璺濈幇鍦ㄧ浉宸殑鏈堜唤鏁�
+  data._diffMonth = dayjs(data.diUpdateTime).diff(dayjs(), 'month');
+  // 蹇呰淇℃伅鏄惁瀹屾暣
+  data._fullInfo =
+    data.diName &&
+    data.diDeviceCode &&
+    data._subType &&
+    data.diSupplier &&
+    data.diMaintainer &&
+    typeof data.diMaintainFrequency === 'number' &&
+    typeof data.diRunningStatus === 'number';
+  return data;
 }
 
 // 娌荤悊璁惧
 export function getTreatmentDevice(data) {
+  data._id = data.piId;
+  data._name = data.piName;
+  data._deviceCode = data.piDeviceCode;
   data._updateTime = dayjs(data.piUpdateTime).format('YYYY骞碝M鏈圖D鏃�');
   data._maintainFrequency = toLabelFreq(data.piMaintainFrequency);
   data._ownership = toLabelOwner(data.piOwnership);
@@ -27,18 +49,44 @@
   const labelArr = toLabelTreatment(data.piSceneTypeId, [data.piTypeId, data.piSubtypeId]);
   data._type = labelArr[0];
   data._subType = labelArr[1];
-  return data
+
+  // 涓婃鏇存柊鏃堕棿璺濈幇鍦ㄧ浉宸殑鏈堜唤鏁�
+  data._diffMonth = dayjs(data.piUpdateTime).diff(dayjs(), 'month');
+  // 蹇呰淇℃伅鏄惁瀹屾暣
+  data._fullInfo =
+    data.piName &&
+    data.piDeviceCode &&
+    data._subType &&
+    data.piSupplier &&
+    data.piMaintainer &&
+    typeof data.piMaintainFrequency === 'number' &&
+    typeof data.piRunningStatus === 'number';
+
+  return data;
 }
 
 // 鐢熶骇璁惧
 export function getProductionDevice(data) {
+  data._id = data.wiId;
+  data._name = data.wiName;
+  data._deviceCode = data.wiDeviceCode;
   data._updateTime = dayjs(data.wiUpdateTime).format('YYYY骞碝M鏈圖D鏃�');
   data._ownership = toLabelOwner(data.wiOwnership);
   data._runningStatus = toLabelStatus(data.wiRunningStatus);
   const labelArr = toLabelProduction(data.wiSceneTypeId, [data.wiTypeId, data.wiSubtypeId]);
   data._type = labelArr[0];
   data._subType = labelArr[1];
-  return data
+
+  // 涓婃鏇存柊鏃堕棿璺濈幇鍦ㄧ浉宸殑鏈堜唤鏁�
+  data._diffMonth = dayjs(data.wiUpdateTime).diff(dayjs(), 'month');
+  // 蹇呰淇℃伅鏄惁瀹屾暣
+  data._fullInfo =
+    data.wiName &&
+    data.wiDeviceCode &&
+    data._subType &&
+    data.wiSupplier &&
+    typeof data.wiRunningStatus === 'number';
+  return data;
 }
 
 export function getDeviceList(dataList, deviceType) {
@@ -46,14 +94,26 @@
     // 鐩戞祴璁惧
     if (deviceType == 0) {
       return getMonitorDevice(item);
-    } 
+    }
     // 娌荤悊璁惧
     else if (deviceType == 1) {
       return getTreatmentDevice(item);
-    } 
+    }
     // 鐢熶骇璁惧
     else if (deviceType == 2) {
       return getProductionDevice(item);
     }
   });
 }
+
+export function getDeviceStatus(data) {
+  data._createTime = dayjs(data.dlCreateTime).format('YYYY骞碝M鏈圖D鏃�');
+  data._imgPath = data.dlPicUrl.split(';').map(p => inspectPicUrl + p);
+  return data;
+}
+
+export function getDeviceStatusList(dataList) {
+  return dataList.map(item => {
+    return getDeviceStatus(item);
+  });
+}

--
Gitblit v1.9.3