From c3ce2bc5d069ba57309567aee4ae418bc0cf75ed Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期五, 17 三月 2023 13:22:05 +0800 Subject: [PATCH] 优化异常处理以及级联设备状态查询 --- web_src/src/components/service/DeviceService.js | 47 +++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 43 insertions(+), 4 deletions(-) diff --git a/web_src/src/components/service/DeviceService.js b/web_src/src/components/service/DeviceService.js index fb66374..85d36f8 100644 --- a/web_src/src/components/service/DeviceService.js +++ b/web_src/src/components/service/DeviceService.js @@ -43,10 +43,10 @@ getAllDeviceListIteration(deviceList, currentPage, count, callback, endCallback, errorCallback) { this.getDeviceList(currentPage, count, (data) => { - if (data.list) { - if (typeof (callback) == "function") callback(data.list) - deviceList = deviceList.concat(data.list); - if (deviceList.length < data.total) { + if (data.code === 0 && data.data.list) { + if (typeof (callback) == "function") callback(data.data.list) + deviceList = deviceList.concat(data.data.list); + if (deviceList.length < data.data.total) { currentPage ++ this.getAllDeviceListIteration(deviceList, currentPage, count, callback, endCallback, errorCallback) }else { @@ -133,6 +133,45 @@ if (typeof (callback) == "function") callback(res.data) }).catch(errorCallback); } + + 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.code === 0 && data.data.list) { + if (typeof (callback) == "function") callback(data.data.list) + catalogList = catalogList.concat(data.data.list); + if (catalogList.length < data.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