@jdlinker/linker
Version:
jdLinker 系统模块
51 lines (48 loc) • 1.62 kB
text/typescript
import { edgeCollector, edgePoint } from "../../../../../api/device/instance";
const channelMap = new Map()
const queryDataList = (_val: string, edgeId: string, type: string) => new Promise(async (resolve) => {
if (!_val || !edgeId || !type) {
resolve([])
} else {
if (channelMap.get(_val)) {
resolve(channelMap.get(_val))
} else {
let resp = undefined
if (type === 'POINT') {
resp = await edgePoint(edgeId, {
terms: [
{
terms: [
{
column: 'collectorId',
value: _val,
},
],
},
],
});
} else {
resp = await edgeCollector(edgeId, {
terms: [
{
terms: [
{
column: 'channelId',
value: _val,
},
],
},
],
});
}
// @ts-ignore
if (resp && resp.code === 200) {
// @ts-ignore
const _data = (resp.result as any[])?.[0] || []
channelMap.set(_val, _data)
resolve(_data)
}
}
}
})
export default queryDataList