[frontedd] 能源管理 自動須量圖修正 | 歷史資料查詢後正確呈現資料 | 首頁 icon 警示後修改為 gif | 系統監控 供水系統及燈具呈現
This commit is contained in:
parent
bb6b9107ee
commit
bc1b2470dd
@ -208,11 +208,7 @@
|
||||
|
||||
|
||||
</main>
|
||||
|
||||
|
||||
|
||||
<script>
|
||||
|
||||
var tarElePath = '';
|
||||
var sysSubList = [];
|
||||
var viewer3DNodeIds = [];
|
||||
@ -227,29 +223,28 @@
|
||||
var chartDataCnt = { alarmCnt: 0, recCnt: 0, chkedErrCnt: 0, unChkedErrCnt: 0 };
|
||||
|
||||
var sysIconList = [
|
||||
{ mainSys: "EE", subSys: "E1", iconClass: "SVG/fuse-box_white.svg" },
|
||||
{ mainSys: "EE", subSys: "E2", iconClass: "SVG/electricity_white.svg" },
|
||||
{ mainSys: "EE", subSys: "E3", iconClass: "SVG/generator_white.svg" },
|
||||
{ mainSys: "EE", subSys: "E4", iconClass: "SVG/electric-meter_white.svg" }, // 電表
|
||||
{ mainSys: "LT", subSys: "L1", iconClass: "SVG/creative_white.svg" },
|
||||
{ mainSys: "ME", subSys: "M5", iconClass: "SVG/air-flow_white.svg" }, // 送排風
|
||||
{ mainSys: "ME", subSys: "M10", iconClass: "SVG/ice-crystal_white.svg" },
|
||||
{ mainSys: "ME", subSys: "M12", iconClass: "SVG/leaf_white.svg" },
|
||||
{ mainSys: "ELEV", subSys: "EL", iconClass: "SVG/lift-sign_white.svg" },
|
||||
{ mainSys: "FE", subSys: "F1", iconClass: "SVG/fire-hydrant_white.svg" },
|
||||
{ mainSys: "FE", subSys: "F2", iconClass: "SVG/lamp_white.svg" },// 排煙 0131目前沒有
|
||||
{ mainSys: "WP", subSys: "W1", iconClass: "SVG/lamp_white.svg" },// 電子水表0131目前沒有
|
||||
{ mainSys: "WP", subSys: "W2", iconClass: "SVG/gear_white.svg" },
|
||||
{ mainSys: "WP", subSys: "P1", iconClass: "SVG/water-pollution_white.svg" },
|
||||
{ mainSys: "S", subSys: "C", iconClass: "SVG/security-camera_white.svg" }, // CCTV
|
||||
{ mainSys: "S", subSys: "P", iconClass: "SVG/sos_white.svg" }, // 緊急求救
|
||||
{ mainSys: "S", subSys: "R", iconClass: "SVG/key-card_white.svg" }, // 門禁
|
||||
{ mainSys: "P", subSys: "PSC", iconClass: "SVG/parking_white.svg" }, // 停管
|
||||
{ mainSys: "LT", subSys: "L2", iconClass: "SVG/lamp_white.svg" },// 景觀照明 0131目前沒有
|
||||
{ mainSys: "ME", subSys: "M1", iconClass: "SVG/lamp_white.svg" },// 儲冰 0131目前沒有
|
||||
{ mainSys: "ME", subSys: "M8", iconClass: "SVG/lamp_white.svg" },// 排油煙0131目前沒有
|
||||
{ mainSys: "W3", subSys: "W1", iconClass: "SVG/lamp_white.svg" },// 0131目前沒有
|
||||
|
||||
{ mainSys: "EE", subSys: "E1", iconClass: "./gif/E1_white.png" },
|
||||
{ mainSys: "EE", subSys: "E2", iconClass: "./gif/E2_white.png" },
|
||||
{ mainSys: "EE", subSys: "E3", iconClass: "./gif/E3_white.png" },
|
||||
{ mainSys: "EE", subSys: "E4", iconClass: "./gif/E4-1_white.png" }, // 電表
|
||||
{ mainSys: "LT", subSys: "L1", iconClass: "./gif/L1_white.png" },
|
||||
{ mainSys: "LT", subSys: "L2", iconClass: "./gif/L2_white.png" },// 景觀照明 0131目前沒有
|
||||
{ mainSys: "ME", subSys: "M1", iconClass: "./gif/M1_white.png" },// 儲冰 0131目前沒有
|
||||
{ mainSys: "ME", subSys: "M5", iconClass: "./gif/M5-2_white.png" }, // 送排風
|
||||
{ mainSys: "ME", subSys: "M8", iconClass: "./gif/M8_white.png" },// 排油煙0131目前沒有
|
||||
{ mainSys: "ME", subSys: "M10", iconClass: "./gif/M10_white.png" },
|
||||
{ mainSys: "ME", subSys: "M12", iconClass: "./gif/M12_white.png" },
|
||||
{ mainSys: "ELEV", subSys: "EL", iconClass: "./gif/EL_white.png" },
|
||||
{ mainSys: "FE", subSys: "F1", iconClass: "./gif/F1_white.png" },
|
||||
{ mainSys: "FE", subSys: "F2", iconClass: "./gif/lamp_white.png" }, // 排煙 0131目前沒有
|
||||
{ mainSys: "WP", subSys: "W1", iconClass: "./gif/W1_white.png" },// 電子水表0131目前沒有
|
||||
{ mainSys: "WP", subSys: "W2", iconClass: "./gif/W2_white.png" },
|
||||
{ mainSys: "WP", subSys: "P1", iconClass: "./gif/P1_white.png" },
|
||||
{ mainSys: "S", subSys: "C", iconClass: "./gif/C_white.png" }, // CCTV
|
||||
{ mainSys: "S", subSys: "P", iconClass: "./gif/P_white.png" }, // 緊急求救
|
||||
{ mainSys: "S", subSys: "R", iconClass: "./gif/R_white.png" }, // 門禁
|
||||
{ mainSys: "P", subSys: "PSC", iconClass: "./gif/PSC_white.png" }, // 停管
|
||||
{ mainSys: "W3", subSys: "W1", iconClass: "./gif/W3_white.png" },// 0131目前沒有
|
||||
];
|
||||
|
||||
var tempSysSubText = [
|
||||
@ -265,10 +260,10 @@
|
||||
{ text: "緊急發電機", mainSys: "EE", subSys: "E3", },//10
|
||||
{ text: "消防設備", mainSys: "FE", subSys: "F1", }, //11
|
||||
{ text: "CCTV系統", mainSys: "S", subSys: "C", }, //12
|
||||
{ text: "緊急求救系統", mainSys: "S", subSys: "P", }, //13
|
||||
{ text: "門禁系統", mainSys: "S", subSys: "R", }, //14
|
||||
{ text: "停管系統", mainSys: "P", subSys: "PSC", }, //15
|
||||
{ text: "送排風系統", mainSys: "ME", subSys: "M5", }, // 2 //16
|
||||
{ text: "門禁系統", mainSys: "S", subSys: "R", }, //13
|
||||
{ text: "停管系統", mainSys: "P", subSys: "PSC", }, //14
|
||||
{ text: "緊急求救系統", mainSys: "S", subSys: "P", }, //15
|
||||
{ text: "送排風系統", mainSys: "ME", subSys: "M5", }, //16
|
||||
//{ text: "景觀照明系統", mainSys: "LT", subSys: "L2", },
|
||||
//{ text: "儲冰系統", mainSys: "ME", subSys: "M1", },
|
||||
// { text: "排油煙設備", mainSys: "ME", subSys: "M8", },
|
||||
@ -280,10 +275,10 @@
|
||||
$(document).ready(function () {
|
||||
|
||||
$(loadEle).Loading("start");
|
||||
$(loadEle).Loading("close");
|
||||
show3DModel();
|
||||
getSubList();
|
||||
getFirstEletric();
|
||||
|
||||
});
|
||||
|
||||
function demoSubList() {
|
||||
@ -294,7 +289,9 @@
|
||||
if (isExiNames.indexOf(obj.text) == -1 && $("#sysSubBtnList .dev-group").length < 16) {
|
||||
let iconObj = sysIconList.filter(x => x.mainSys == obj.mainSys && x.subSys == obj.subSys)[0];
|
||||
strHtml = `<div class="btn-group btn-group-lg col-lg-3 mb-4 dev-group">
|
||||
<button name="topFunBtn" data-page="alert" type="button" class="btn btn-secondary col-4"><img src="${iconObj.iconClass}" class="w-100"></img></button>
|
||||
<button name="topFunBtn" data-page="alert" type="button" class="btn btn-secondary col-4 d-flex jusity-content-center">
|
||||
<img src="${iconObj.iconClass}" class="w-100"></img>
|
||||
</button>
|
||||
<button id="sysSubCardBtn${obj.subSys}" type="button" class="btn btn-secondary" data-id="${obj.subSys}">${obj.text}</button>
|
||||
</div>`;
|
||||
$("#sysSubBtnList").append(strHtml);
|
||||
@ -323,7 +320,9 @@
|
||||
}
|
||||
let iconClass = sysIconList.filter(x => x.mainSys == mainSysObj.main_system_tag && x.subSys == subSysObj.sub_system_tag)[0]?.iconClass;
|
||||
strHtml += `<div class="btn-group btn-group-lg col-lg-3 mb-4 dev-group" data-id="/${pageAct.AreaTag}/${pageAct.buiTag}/${mainSysObj.main_system_tag}/${subSysObj.sub_system_tag}">
|
||||
<button name="topFunBtn" data-page="alert" type="button" class="btn btn-secondary col-4"><img src="${iconClass}" class="w-100"></img></button>
|
||||
<button name="topFunBtn" data-page="alert" type="button" class="btn btn-secondary col-4">
|
||||
<img src="${iconClass}" class="w-100 "></img>
|
||||
</button>
|
||||
<button id="sysSubCardBtn${subSysObj.sub_system_tag}" type="button" class="btn btn-secondary" data-id="${subSysObj.sub_system_tag}">${subSysObj.full_name}</button>
|
||||
</div>`;
|
||||
})
|
||||
@ -536,7 +535,9 @@
|
||||
|
||||
// 圖表 - 這週與上週用電量 (長條圖)
|
||||
function chartEveWeeksElec(curWeekData, prevWeekData) {
|
||||
// console.log(curWeekData.map(x => x.sum),prevWeekData.map(x => x.sum))
|
||||
let eveWeekElecChartCanvas = $('#eveWeekElecChart').get(0).getContext('2d');
|
||||
|
||||
let eveWeekElecChartData = {
|
||||
labels: curWeekData.map(x => dayToChiDay(strToDate(x.timestamp.$cEncStr, "day"))),
|
||||
datasets: [
|
||||
@ -566,7 +567,7 @@
|
||||
}
|
||||
]
|
||||
}
|
||||
console.log(eveWeekElecChartData)
|
||||
// console.log(eveWeekElecChartData)
|
||||
let eveWeekElecChartOptions = {
|
||||
maintainAspectRatio: false,
|
||||
responsive: true,
|
||||
@ -592,17 +593,20 @@
|
||||
return isTodayOrYes + "用電量 : " + tooltipItem.value + " kWH";
|
||||
},
|
||||
title: function (tooltipItem) {
|
||||
console.log(tooltipItem)
|
||||
let result = tooltipItem[0]?.xLabel.toString();
|
||||
return result;
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
// console.log(eveWeekElecChartOptions)
|
||||
if (eveWeekElecChart == null) {
|
||||
eveWeekElecChart = new Chart(eveWeekElecChartCanvas, {
|
||||
data: eveWeekElecChartData,
|
||||
options: eveWeekElecChartOptions
|
||||
})
|
||||
// console.log(eveWeekElecChart,eveWeekElecChartData, eveWeekElecChartOptions)
|
||||
} else {
|
||||
eveWeekElecChart.data.datasets.forEach((dataset) => {
|
||||
if (dataset.order == 1) {
|
||||
@ -792,21 +796,28 @@
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 從 baja 訂閱 左下角各系統小類異常狀態
|
||||
function getAlarmSub(data) {
|
||||
$.each(data.data, (idx, alaObj) => {
|
||||
if (alaObj.alarmClass.indexOf("_") != -1) {
|
||||
let mainSubSys = alaObj.alarmClass.split("_").slice(0, 2).join("/");
|
||||
$(`.btn-group.dev-group[data-id*='${mainSubSys}'] i`).addClass("blink");
|
||||
const img = $(`.btn-group.dev-group[data-id*='${mainSubSys}'] img`)[0].src.split('.')
|
||||
const { length } = img
|
||||
img[length - 1] = 'gif'
|
||||
$(`.btn-group.dev-group[data-id*='${mainSubSys}'] img`)[0].src = img.join('.')
|
||||
// $(`.btn-group.dev-group[data-id*='${mainSubSys}'] img`).addClass("blink");
|
||||
}
|
||||
})
|
||||
$(`.dev-group i.fa-lightbulb-on.blink`).each((idx, ele) => {
|
||||
$(`.dev-group img.blink`).each((idx, ele) => {
|
||||
let devPath = $(ele).parents(".dev-group").data("id");
|
||||
let sysPath = devPath.split("/").slice(3, 5).join("/");
|
||||
let alaDevPath = data.data.map(x => x.alarmClass?.split("_").slice(0, 2).join("/"));
|
||||
if (alaDevPath.indexOf(sysPath) == -1) {
|
||||
$(ele).removeClass("blink");
|
||||
const img = $(`.btn-group.dev-group[data-id*='${mainSubSys}'] img`)[0].src.split('.')
|
||||
const { length } = img
|
||||
img[length - 1] = 'png'
|
||||
$(`.btn-group.dev-group[data-id*='${mainSubSys}'] img`)[0].src = img.join('.')
|
||||
// $(ele).removeClass("blink");
|
||||
}
|
||||
})
|
||||
}
|
||||
|
@ -57,22 +57,22 @@
|
||||
|
||||
<button id="ediAutDemBtn" class="btn btn-success"><i class="fal fa-pencil"></i> 編輯</button>
|
||||
</div>
|
||||
<div class="row align-items-center">
|
||||
<div class="col-sm-12 col-lg-5">
|
||||
<p class="card-text color-white pl-5 pr-3 d-flex justify-content-between">
|
||||
<div class="row align-items-center justify-content-between d-flex flex-column">
|
||||
<div class="col d-flex">
|
||||
<p class="card-text color-white d-flex justify-content-between mr-3">
|
||||
<span>契約容量</span>
|
||||
<span><span data-id="contract_capacity"></span> kW</span>
|
||||
</p>
|
||||
<p class="card-text color-white pl-5 pr-3 d-flex justify-content-between">
|
||||
<p class="card-text color-white d-flex justify-content-between mr-3">
|
||||
<span>警戒容量</span>
|
||||
<span><span data-id="warning_capacity"></span> kW</span>
|
||||
</p>
|
||||
<p class="card-text color-white pl-5 pr-3 d-flex justify-content-between">
|
||||
<p class="card-text color-white d-flex justify-content-between mr-3">
|
||||
<span>復歸值</span>
|
||||
<span><span data-id="resetting_value"></span> kW</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="col-sm-12 col-lg-7" style=" min-height:250px;">
|
||||
<div class="col" style=" min-height:250px;">
|
||||
<canvas class="chart" id="autDemChart"></canvas>
|
||||
</div>
|
||||
</div>
|
||||
@ -354,7 +354,7 @@
|
||||
|
||||
if (autDemChart.data.labels.length > 0) {
|
||||
// 當 label 還未補齊,則直接替換 array 裡的值,已補齊之後就從後面補值
|
||||
if (autDemChart.data.labels.filter(x => x != "").length > 10) {
|
||||
if (autDemChart.data.labels.filter(x => x != "").length > 35) {
|
||||
autDemChart.data.labels.push(displayDate(time, "Hms"));
|
||||
} else {
|
||||
let cnt = autDemChart.data.labels.filter(x => x != "").length;
|
||||
@ -366,7 +366,7 @@
|
||||
autDemChart.data.datasets[3].data.push(value);
|
||||
}
|
||||
|
||||
if (autDemChart.data.labels.filter(x => x != "").length > 10) {
|
||||
if (autDemChart.data.labels.filter(x => x != "").length > 35) {
|
||||
autDemChart.data.labels.shift();
|
||||
autDemChart.data.datasets[0].data.shift();
|
||||
autDemChart.data.datasets[1].data.shift();
|
||||
@ -387,7 +387,7 @@
|
||||
autDemChart.data.labels.push(displayDate(time, "Hms"));
|
||||
autDemChart.data.datasets[3].data.push(d.value);
|
||||
// 補齊空缺 最多10個
|
||||
for (let i = autDemChart.data.labels.length; i < 10; i++) {
|
||||
for (let i = autDemChart.data.labels.length; i < 35; i++) {
|
||||
autDemChart.data.labels.push("");
|
||||
}
|
||||
|
||||
|
@ -247,13 +247,13 @@
|
||||
|
||||
$.each(res.data, function (index, val) {
|
||||
if (index == 0) {
|
||||
strHtml += `<button onClick="setValue(null, null, '${val.points}', this)" type="button" class="btn btn-info waves-effect waves-themed">${val.full_name} ${val.points}</button>`;
|
||||
strHtml += `<button onClick="setValue(null, null, '${val.points}', this)" type="button" class="btn btn-info waves-effect waves-themed">${val.full_name || val.points}</button>`;
|
||||
pageAct.deviceItem = val.points;
|
||||
pageAct.devicePoiName = val.full_name + ' ' + val.points;
|
||||
pageAct.deviceComName = val.parent_path;
|
||||
getData();
|
||||
} else {
|
||||
strHtml += `<button onClick="setValue(null, null, '${val.points}', this)" type="button" class="btn btn-secondary waves-effect waves-themed">${val.full_name} ${val.points}</button>`;
|
||||
strHtml += `<button onClick="setValue(null, null, '${val.points}', this)" type="button" class="btn btn-secondary waves-effect waves-themed">${val.full_name || val.points}</button>`;
|
||||
}
|
||||
});
|
||||
|
||||
@ -267,6 +267,8 @@
|
||||
var edt = new Date(new Date().setDate(sdt.getDate() + 1));
|
||||
start = start ?? sdt.toLocaleDateString();
|
||||
end = end ?? edt.toLocaleDateString();
|
||||
$(loadEle).Loading("start");
|
||||
callBackFromHistory()
|
||||
getHistoryDataByBaja(pageAct.deviceNumber + "_" + pageAct.deviceItem,
|
||||
new Date(start).getTime(),
|
||||
new Date(end).getTime(),
|
||||
@ -275,8 +277,10 @@
|
||||
callBackFromHistory);
|
||||
}
|
||||
|
||||
function callBackFromHistory(res) {
|
||||
function callBackFromHistory(res = '{"count":0,"data":[]}') {
|
||||
// console.log("@H1",res)
|
||||
res = JSON.parse(res);
|
||||
// console.log("@history",res.data)
|
||||
loadTable(res.data);
|
||||
if (historyTable != null) {
|
||||
let t = $('#historyTable').dataTable();
|
||||
@ -387,7 +391,8 @@
|
||||
function loadTable(data) {
|
||||
if (data) {
|
||||
$.each(data, function (i, v) {
|
||||
v.type = pageAct.devicePoiName;
|
||||
// console.log("loadTable",pageAct.devicePoiName.split(" ")[0])
|
||||
v.type = pageAct.devicePoiName.split(" ")[0];
|
||||
});
|
||||
}
|
||||
|
||||
@ -412,6 +417,9 @@
|
||||
"title": "數值",
|
||||
"data": "value",
|
||||
"render": function (data) {
|
||||
if (isNaN(data)) {
|
||||
return data
|
||||
}
|
||||
return data.roundDecimal(2);
|
||||
}
|
||||
},
|
||||
@ -419,6 +427,7 @@
|
||||
"title": "紀錄時間",
|
||||
"data": "timestamp",
|
||||
"render": function (data) {
|
||||
// console.log(data)
|
||||
return displayDate(data, "datetime");
|
||||
}
|
||||
}
|
||||
|
@ -376,13 +376,17 @@
|
||||
function show3DModel(urn) {
|
||||
$(loadEle).Loading("start");
|
||||
launchViewerForHotspot(urn, (viewer, nodeIds) => {
|
||||
let devDbIds = allDevList.map(x => x.forge_dbid);
|
||||
|
||||
let devDbIds = allDevList.map(x => x.forge_dbid); // 大類
|
||||
console.log(allDevList);
|
||||
let subDevDbId = [];
|
||||
allDevList.forEach(({ device_nodes }) => {
|
||||
subDevDbId = [...subDevDbId, ...device_nodes.map(n => n.forge_dbid)]
|
||||
})
|
||||
// 從資料庫設定不可視模型的類型,若沒有取道該小類不可視類型,則套用資料庫設定預設類型
|
||||
if (forgeInvType) {
|
||||
setInviForge(forgeInvType, devDbIds);
|
||||
setInviForge(forgeInvType, [...devDbIds, ...subDevDbId]);
|
||||
} else {
|
||||
setInviForge(forgeInvTypeDef, devDbIds);
|
||||
setInviForge(forgeInvTypeDef, [...devDbIds, ...subDevDbId]);
|
||||
}
|
||||
|
||||
$(loadEle).Loading("close");
|
||||
@ -435,8 +439,10 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (pageAct.sub_system_tag == "W2") {
|
||||
getWaterNodeId();
|
||||
}
|
||||
|
||||
}, () => {
|
||||
$(loadEle).Loading("close");
|
||||
}, "[name=forgeViewer]");
|
||||
@ -444,20 +450,24 @@
|
||||
|
||||
// 供水系統 - 取得欲染色 dbid
|
||||
function getWaterNodeId() {
|
||||
let url = baseApiUrl + "/api/Device/GetForgeNodeIdFromVar";
|
||||
let sendData = { forgeNodeKey: "water_wupply" };
|
||||
objSendData.Data = sendData;
|
||||
ytAjax = new YourTeam.Ajax(url, objSendData, function (res) {
|
||||
if (!res || res.code != "0000" || !res.data) {
|
||||
//let url = baseApiUrl + "/api/Device/GetForgeNodeIdFromVar";
|
||||
//let sendData = { forgeNodeKey: "water_wupply" };
|
||||
//objSendData.Data = sendData;
|
||||
//ytAjax = new YourTeam.Ajax(url, objSendData, function (res) {
|
||||
// if (!res || res.code != "0000" || !res.data) {
|
||||
|
||||
} else {
|
||||
if (!isNaN(parseInt(res.data[0]?.system_value))) {
|
||||
changeColor(parseInt(res.data[0]?.system_value))
|
||||
}
|
||||
console.log(res.data)
|
||||
}
|
||||
}, null, "POST").send();
|
||||
// } else {
|
||||
// if (!isNaN(parseInt(res.data[0]?.system_value))) {
|
||||
// changeColor(parseInt(res.data[0]?.system_value))
|
||||
// }
|
||||
// console.log(res.data)
|
||||
// }
|
||||
//}, null, "POST").send();
|
||||
|
||||
viewer.model.search("給水", (nodeIds) => {
|
||||
console.log(nodeIds)
|
||||
viewer.show(nodeIds)
|
||||
}, (e) => { console.log(e) })
|
||||
}
|
||||
|
||||
function getHotspotPoint(callback = null) {
|
||||
|
@ -35,8 +35,8 @@
|
||||
// }
|
||||
|
||||
function getHistoryDataByBaja(devicePath, startDate_millisecond, endDate_millisecond, deviceName, company, callback) {
|
||||
var _result = "";
|
||||
var _ss = "";
|
||||
var _result = {};
|
||||
var _ss = [];
|
||||
var _index = 0;
|
||||
|
||||
require(['baja!'], function (baja) {
|
||||
@ -45,23 +45,37 @@ function getHistoryDataByBaja(devicePath, startDate_millisecond, endDate_millise
|
||||
.then(function (table) {
|
||||
return table.cursor({
|
||||
each: function (record) {
|
||||
if (_index == 0)
|
||||
_ss += '{"deviceName":"' + deviceName + '", "value":' + record.get('value') + ', "timestamp":"' + record.get('timestamp') + '"}';
|
||||
else
|
||||
_ss += ',{"deviceName":"' + deviceName + '", "value":' + record.get('value') + ', "timestamp":"' + record.get('timestamp') + '"}';
|
||||
console.log(record.get('timestamp'))
|
||||
// if (_index == 0)
|
||||
// _ss += '{"deviceName":"' + deviceName + '", "value":' + record.get('value') + ', "timestamp":"' + record.get('timestamp').$cEncStr
|
||||
// + '"}';
|
||||
// else
|
||||
// _ss += ',{"deviceName":"' + deviceName + '", "value":' + record.get('value') + ', "timestamp":"' + record.get('timestamp').$cEncStr
|
||||
// + '"}';
|
||||
_ss.push({
|
||||
deviceName: deviceName, value: record.get('value'), timestamp: record.get('timestamp').$cEncStr
|
||||
});
|
||||
_index++;
|
||||
},
|
||||
after: function () {
|
||||
_result += '{' + '"count": ' + _index + ', "data":[';
|
||||
_result += _ss;
|
||||
_result += ']}';
|
||||
_result = { count: _index, data: _ss }
|
||||
// _result += '{' + '"count": ' + _index + ', "data":[';
|
||||
// _result += _ss;
|
||||
// _result += ']}';
|
||||
if (typeof callback === 'function') {
|
||||
// console.log(_result)
|
||||
_result = JSON.stringify(_result)
|
||||
callback(_result);
|
||||
}
|
||||
},
|
||||
limit: -1,
|
||||
offset: 0
|
||||
});
|
||||
})
|
||||
.catch(() => {
|
||||
console.log("error");
|
||||
// const res = JSON.stringify({count:0, data:[]})
|
||||
callback()
|
||||
});
|
||||
});
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user