From 72c1b36d6d2ece497e032c8434641d6576590f9d Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期日, 03 七月 2022 00:44:36 +0800
Subject: [PATCH] 优化对讲逻辑

---
 web_src/src/components/service/DeviceService.js |   67 +++++++++++++++++++--------------
 1 files changed, 39 insertions(+), 28 deletions(-)

diff --git a/web_src/src/components/service/DeviceService.js b/web_src/src/components/service/DeviceService.js
index 93c98f6..fb66374 100644
--- a/web_src/src/components/service/DeviceService.js
+++ b/web_src/src/components/service/DeviceService.js
@@ -21,54 +21,65 @@
       if (typeof (errorCallback) == "function") errorCallback(error)
     });
   }
-  getAllDeviceList(callback, errorCallback) {
+
+  getDevice(deviceId, callback, errorCallback){
+    this.$axios({
+      method: 'get',
+      url:`/api/device/query/devices/${deviceId}`,
+    }).then((res) => {
+      if (typeof (callback) == "function") callback(res.data)
+    }).catch((error) => {
+      console.log(error);
+      if (typeof (errorCallback) == "function") errorCallback(error)
+    });
+  }
+
+  getAllDeviceList(callback,endCallback, errorCallback) {
     let currentPage = 1;
     let count = 100;
     let deviceList = []
-    this.getAllDeviceListIteration(deviceList, currentPage, count, (data) => {
-      if (typeof (callback) == "function") callback(data)
-    }, errorCallback)
+    this.getAllDeviceListIteration(deviceList, currentPage, count, callback, endCallback, errorCallback)
   }
 
-  getAllDeviceListIteration(deviceList, currentPage, count, callback, errorCallback) {
+  getAllDeviceListIteration(deviceList, currentPage, count, callback, endCallback, errorCallback) {
     this.getDeviceList(currentPage, count, (data) => {
-      console.log(data)
       if (data.list) {
+        if (typeof (callback) == "function") callback(data.list)
         deviceList = deviceList.concat(data.list);
         if (deviceList.length < data.total) {
           currentPage ++
-          this.getAllDeviceListIteration(deviceList, currentPage, count, callback, errorCallback)
+          this.getAllDeviceListIteration(deviceList, currentPage, count, callback,  endCallback, errorCallback)
         }else {
-          if (typeof (callback) == "function") callback(deviceList)
+          if (typeof (endCallback) == "function") endCallback(deviceList)
         }
       }
     }, errorCallback)
   }
 
 
-  getAllCatalog(deviceId, callback, errorCallback) {
+  getAllChannel(isCatalog, catalogUnderDevice, deviceId, callback, endCallback, errorCallback) {
     let currentPage = 1;
     let count = 100;
     let catalogList = []
-    this.getAllCatalogIteration(deviceId, catalogList, currentPage, count, callback, errorCallback)
+    this.getAllChannelIteration(isCatalog, catalogUnderDevice, deviceId, catalogList, currentPage, count, callback, endCallback, errorCallback)
   }
 
-  getAllCatalogIteration(deviceId, catalogList, currentPage, count, callback, errorCallback) {
-    this.getCatalog(deviceId, currentPage, count, (data) => {
-      console.log(data)
+  getAllChannelIteration(isCatalog, catalogUnderDevice, deviceId, catalogList, currentPage, count, callback, endCallback, errorCallback) {
+    this.getChanel(isCatalog, catalogUnderDevice, deviceId, 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.getAllCatalogIteration(deviceId, catalogList, currentPage, count, callback, errorCallback)
+          this.getAllChannelIteration(isCatalog,catalogUnderDevice, deviceId, catalogList, currentPage, count, callback, errorCallback)
         }else {
-          console.log(2222)
-          if (typeof (callback) == "function") callback(catalogList)
+          console.log(1)
+          if (typeof (endCallback) == "function") endCallback(catalogList)
         }
       }
     }, errorCallback)
   }
-  getCatalog(deviceId, currentPage, count, callback, errorCallback) {
+  getChanel(isCatalog, catalogUnderDevice, deviceId, currentPage, count, callback, errorCallback) {
     this.$axios({
       method: 'get',
       url: `/api/device/query/devices/${deviceId}/channels`,
@@ -77,7 +88,8 @@
         count: count,
         query: "",
         online: "",
-        channelType: true
+        channelType: isCatalog,
+        catalogUnderDevice: catalogUnderDevice
       }
     }).then((res) =>{
       if (typeof (callback) == "function") callback(res.data)
@@ -85,29 +97,28 @@
   }
 
 
-  getAllSubCatalog(deviceId, channelId, callback, errorCallback) {
+  getAllSubChannel(isCatalog, deviceId, channelId, callback, endCallback, errorCallback) {
     let currentPage = 1;
     let count = 100;
     let catalogList = []
-    this.getAllSubCatalogIteration(deviceId, channelId, catalogList, currentPage, count, callback, errorCallback)
+    this.getAllSubChannelIteration(isCatalog, deviceId, channelId, catalogList, currentPage, count, callback, endCallback, errorCallback)
   }
 
-  getAllSubCatalogIteration(deviceId,channelId, catalogList, currentPage, count, callback, errorCallback) {
-    this.getSubCatalog(deviceId, channelId, currentPage, count, (data) => {
-      console.log(data)
+  getAllSubChannelIteration(isCatalog, deviceId,channelId, catalogList, currentPage, count, callback, endCallback, errorCallback) {
+    this.getSubChannel(isCatalog, deviceId, channelId, 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.getAllSubCatalogIteration(deviceId, channelId, catalogList, currentPage, count, callback, errorCallback)
+          this.getAllSubChannelIteration(isCatalog, deviceId, channelId, catalogList, currentPage, count, callback, endCallback, errorCallback)
         }else {
-          console.log(2222)
-          if (typeof (callback) == "function") callback(catalogList)
+          if (typeof (endCallback) == "function") endCallback(catalogList)
         }
       }
     }, errorCallback)
   }
-  getSubCatalog(deviceId, channelId, currentPage, count, callback, errorCallback) {
+  getSubChannel(isCatalog, deviceId, channelId, currentPage, count, callback, errorCallback) {
     this.$axios({
       method: 'get',
       url: `/api/device/query/sub_channels/${deviceId}/${channelId}/channels`,
@@ -116,7 +127,7 @@
         count: count,
         query: "",
         online: "",
-        channelType: true
+        channelType: isCatalog
       }
     }).then((res) =>{
       if (typeof (callback) == "function") callback(res.data)

--
Gitblit v1.8.0