From e78c402a248ff252ee93e724396c62d806087fab Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期日, 03 七月 2022 10:32:33 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wvp-28181-2.0' into commercial

---
 web_src/src/components/service/DeviceService.js |   43 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 43 insertions(+), 0 deletions(-)

diff --git a/web_src/src/components/service/DeviceService.js b/web_src/src/components/service/DeviceService.js
index fb66374..45d4ac2 100644
--- a/web_src/src/components/service/DeviceService.js
+++ b/web_src/src/components/service/DeviceService.js
@@ -133,6 +133,49 @@
       if (typeof (callback) == "function") callback(res.data)
     }).catch(errorCallback);
   }
+
+  getTree(deviceId, id, param3, param4) {
+
+  }
+
+  getTree(deviceId, parentId, onlyCatalog, callback, endCallback, errorCallback) {
+    let currentPage = 1;
+    let count = 100;
+    let catalogList = []
+    this.getTreeIteration(deviceId, parentId, onlyCatalog, catalogList, currentPage, count, callback, endCallback, errorCallback)
+  }
+
+  getTreeIteration(deviceId, parentId, onlyCatalog, catalogList, currentPage, count, callback, endCallback, errorCallback) {
+    this.getTreeInfo(deviceId, parentId, onlyCatalog, currentPage, count, (data) => {
+      if (data.list) {
+        if (typeof (callback) == "function") callback(data.list)
+        catalogList = catalogList.concat(data.list);
+        if (catalogList.length < data.total) {
+          currentPage ++
+          this.getTreeIteration(deviceId, parentId, onlyCatalog, catalogList, currentPage, count, callback, endCallback, errorCallback)
+        }else {
+          if (typeof (endCallback) == "function") endCallback(catalogList)
+        }
+      }
+    }, errorCallback)
+  }
+  getTreeInfo(deviceId, parentId, onlyCatalog, currentPage, count, callback, errorCallback) {
+    if (onlyCatalog == null || typeof onlyCatalog === "undefined") {
+      onlyCatalog = false;
+    }
+    this.$axios({
+      method: 'get',
+      url: `/api/device/query/tree/${deviceId}`,
+      params:{
+        page: currentPage,
+        count: count,
+        parentId: parentId,
+        onlyCatalog: onlyCatalog
+      }
+    }).then((res) =>{
+      if (typeof (callback) == "function") callback(res.data)
+    }).catch(errorCallback);
+  }
 }
 
 export default DeviceService;

--
Gitblit v1.8.0