2022-04-08 18:09:23 +08:00
|
|
|
import axios from 'axios';
|
|
|
|
|
|
|
|
class DeviceService{
|
|
|
|
|
|
|
|
constructor() {
|
|
|
|
this.$axios = axios;
|
|
|
|
}
|
|
|
|
|
|
|
|
getDeviceList(currentPage, count, callback, errorCallback){
|
|
|
|
this.$axios({
|
|
|
|
method: 'get',
|
2023-03-05 09:53:26 +08:00
|
|
|
url:`/api/device/query/devices`,
|
2022-04-08 18:09:23 +08:00
|
|
|
params: {
|
|
|
|
page: currentPage,
|
|
|
|
count: count
|
|
|
|
}
|
|
|
|
}).then((res) => {
|
|
|
|
if (typeof (callback) == "function") callback(res.data)
|
|
|
|
}).catch((error) => {
|
|
|
|
console.log(error);
|
|
|
|
if (typeof (errorCallback) == "function") errorCallback(error)
|
|
|
|
});
|
|
|
|
}
|
2022-06-15 16:04:36 +08:00
|
|
|
|
|
|
|
getDevice(deviceId, callback, errorCallback){
|
|
|
|
this.$axios({
|
|
|
|
method: 'get',
|
2023-03-05 09:53:26 +08:00
|
|
|
url:`/api/device/query/devices/${deviceId}`,
|
2022-06-15 16:04:36 +08:00
|
|
|
}).then((res) => {
|
|
|
|
if (typeof (callback) == "function") callback(res.data)
|
|
|
|
}).catch((error) => {
|
|
|
|
console.log(error);
|
|
|
|
if (typeof (errorCallback) == "function") errorCallback(error)
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
2022-05-26 12:10:46 +08:00
|
|
|
getAllDeviceList(callback,endCallback, errorCallback) {
|
2022-04-08 18:09:23 +08:00
|
|
|
let currentPage = 1;
|
|
|
|
let count = 100;
|
|
|
|
let deviceList = []
|
2022-05-26 12:10:46 +08:00
|
|
|
this.getAllDeviceListIteration(deviceList, currentPage, count, callback, endCallback, errorCallback)
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
|
2022-05-26 12:10:46 +08:00
|
|
|
getAllDeviceListIteration(deviceList, currentPage, count, callback, endCallback, errorCallback) {
|
2022-04-08 18:09:23 +08:00
|
|
|
this.getDeviceList(currentPage, count, (data) => {
|
2022-08-22 16:16:31 +08:00
|
|
|
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) {
|
2022-04-08 18:09:23 +08:00
|
|
|
currentPage ++
|
2022-05-26 12:10:46 +08:00
|
|
|
this.getAllDeviceListIteration(deviceList, currentPage, count, callback, endCallback, errorCallback)
|
2022-04-08 18:09:23 +08:00
|
|
|
}else {
|
2022-05-26 12:10:46 +08:00
|
|
|
if (typeof (endCallback) == "function") endCallback(deviceList)
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}, errorCallback)
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2022-05-26 12:10:46 +08:00
|
|
|
getAllChannel(isCatalog, catalogUnderDevice, deviceId, callback, endCallback, errorCallback) {
|
2022-04-08 18:09:23 +08:00
|
|
|
let currentPage = 1;
|
|
|
|
let count = 100;
|
|
|
|
let catalogList = []
|
2022-05-26 12:10:46 +08:00
|
|
|
this.getAllChannelIteration(isCatalog, catalogUnderDevice, deviceId, catalogList, currentPage, count, callback, endCallback, errorCallback)
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
|
2022-05-26 12:10:46 +08:00
|
|
|
getAllChannelIteration(isCatalog, catalogUnderDevice, deviceId, catalogList, currentPage, count, callback, endCallback, errorCallback) {
|
2022-04-26 17:24:41 +08:00
|
|
|
this.getChanel(isCatalog, catalogUnderDevice, deviceId, currentPage, count, (data) => {
|
2022-04-08 18:09:23 +08:00
|
|
|
if (data.list) {
|
2022-05-26 12:10:46 +08:00
|
|
|
if (typeof (callback) == "function") callback(data.list)
|
2022-04-08 18:09:23 +08:00
|
|
|
catalogList = catalogList.concat(data.list);
|
|
|
|
if (catalogList.length < data.total) {
|
|
|
|
currentPage ++
|
2022-04-26 17:24:41 +08:00
|
|
|
this.getAllChannelIteration(isCatalog,catalogUnderDevice, deviceId, catalogList, currentPage, count, callback, errorCallback)
|
2022-04-08 18:09:23 +08:00
|
|
|
}else {
|
2022-04-22 16:21:05 +08:00
|
|
|
console.log(1)
|
2022-05-26 12:10:46 +08:00
|
|
|
if (typeof (endCallback) == "function") endCallback(catalogList)
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}, errorCallback)
|
|
|
|
}
|
2022-04-26 17:24:41 +08:00
|
|
|
getChanel(isCatalog, catalogUnderDevice, deviceId, currentPage, count, callback, errorCallback) {
|
2022-04-08 18:09:23 +08:00
|
|
|
this.$axios({
|
|
|
|
method: 'get',
|
2023-03-05 09:53:26 +08:00
|
|
|
url: `/api/device/query/devices/${deviceId}/channels`,
|
2022-04-08 18:09:23 +08:00
|
|
|
params:{
|
|
|
|
page: currentPage,
|
|
|
|
count: count,
|
|
|
|
query: "",
|
|
|
|
online: "",
|
2022-04-26 17:24:41 +08:00
|
|
|
channelType: isCatalog,
|
|
|
|
catalogUnderDevice: catalogUnderDevice
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
}).then((res) =>{
|
|
|
|
if (typeof (callback) == "function") callback(res.data)
|
|
|
|
}).catch(errorCallback);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
2022-05-26 12:10:46 +08:00
|
|
|
getAllSubChannel(isCatalog, deviceId, channelId, callback, endCallback, errorCallback) {
|
2022-04-08 18:09:23 +08:00
|
|
|
let currentPage = 1;
|
|
|
|
let count = 100;
|
|
|
|
let catalogList = []
|
2022-05-26 12:10:46 +08:00
|
|
|
this.getAllSubChannelIteration(isCatalog, deviceId, channelId, catalogList, currentPage, count, callback, endCallback, errorCallback)
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
|
2022-05-26 12:10:46 +08:00
|
|
|
getAllSubChannelIteration(isCatalog, deviceId,channelId, catalogList, currentPage, count, callback, endCallback, errorCallback) {
|
2022-04-20 18:21:18 +08:00
|
|
|
this.getSubChannel(isCatalog, deviceId, channelId, currentPage, count, (data) => {
|
2022-04-08 18:09:23 +08:00
|
|
|
if (data.list) {
|
2022-05-26 12:10:46 +08:00
|
|
|
if (typeof (callback) == "function") callback(data.list)
|
2022-04-08 18:09:23 +08:00
|
|
|
catalogList = catalogList.concat(data.list);
|
|
|
|
if (catalogList.length < data.total) {
|
|
|
|
currentPage ++
|
2022-05-26 12:10:46 +08:00
|
|
|
this.getAllSubChannelIteration(isCatalog, deviceId, channelId, catalogList, currentPage, count, callback, endCallback, errorCallback)
|
2022-04-08 18:09:23 +08:00
|
|
|
}else {
|
2022-05-26 12:10:46 +08:00
|
|
|
if (typeof (endCallback) == "function") endCallback(catalogList)
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}, errorCallback)
|
|
|
|
}
|
2022-04-20 18:21:18 +08:00
|
|
|
getSubChannel(isCatalog, deviceId, channelId, currentPage, count, callback, errorCallback) {
|
2022-04-08 18:09:23 +08:00
|
|
|
this.$axios({
|
|
|
|
method: 'get',
|
2023-03-05 09:53:26 +08:00
|
|
|
url: `/api/device/query/sub_channels/${deviceId}/${channelId}/channels`,
|
2022-04-08 18:09:23 +08:00
|
|
|
params:{
|
|
|
|
page: currentPage,
|
|
|
|
count: count,
|
|
|
|
query: "",
|
|
|
|
online: "",
|
2022-04-20 18:21:18 +08:00
|
|
|
channelType: isCatalog
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
}).then((res) =>{
|
|
|
|
if (typeof (callback) == "function") callback(res.data)
|
|
|
|
}).catch(errorCallback);
|
|
|
|
}
|
2022-07-03 07:40:54 +08:00
|
|
|
|
|
|
|
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) => {
|
2022-08-22 16:16:31 +08:00
|
|
|
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) {
|
2022-07-03 07:40:54 +08:00
|
|
|
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',
|
2023-03-05 09:53:26 +08:00
|
|
|
url: `/api/device/query/tree/${deviceId}`,
|
2022-07-03 07:40:54 +08:00
|
|
|
params:{
|
|
|
|
page: currentPage,
|
|
|
|
count: count,
|
|
|
|
parentId: parentId,
|
|
|
|
onlyCatalog: onlyCatalog
|
|
|
|
}
|
|
|
|
}).then((res) =>{
|
|
|
|
if (typeof (callback) == "function") callback(res.data)
|
|
|
|
}).catch(errorCallback);
|
|
|
|
}
|
2022-04-08 18:09:23 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
export default DeviceService;
|