1053 lines
44 KiB
JavaScript
1053 lines
44 KiB
JavaScript
function addzero(num) {
|
|
return num < 10 ? "0" + num : num;
|
|
}
|
|
|
|
/**
|
|
* 取得異常資料 by baja
|
|
* @param {any} startDate_millisecond
|
|
* @param {any} endDate_millisecond
|
|
* @param {any} isRecover
|
|
* @param {any} isAck
|
|
* @param {any} alarmClass
|
|
* @param {any} callback
|
|
*/
|
|
// function getAlarmByBaja(startDate_millisecond, endDate_millisecond, isRecover, isAck, alarmClass, callback) {
|
|
// let _sourceTmp;
|
|
// var _result = "";
|
|
// var _ss = "";
|
|
// var _bfName = "";
|
|
// var _sourceName = "";
|
|
// var _index = 0;
|
|
// var _recoverState = isRecover ? "!= null" : "= null";
|
|
// var _ackState = isAck ? "= 1" : "!= 1";
|
|
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime from openAlarms where alarmClass = '" + alarmClass + "' and timestamp.millis > " + startDate_millisecond + " and timestamp.millis < " + endDate_millisecond + " and normalTime " + _recoverState + " order by timestamp asc").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// _sourceTmp = (record.get('alarmData').get('sourceName')).toString().split('_');
|
|
// _bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
// _sourceName = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
// _ss += ', "' + _index + '": {"buildingFloorName_zh":"' + _bfName + '", "uuid":"' + record.get('uuid') + '", "timestamp":"' + record.get('timestamp') + '", "alarmClass":"' + record.get('alarmClass') + '", "sourceName_zh":"' + _sourceName + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "normalTime":"' + record.get('normalTime') + '"}';
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result += '{' + '"count": ' + _index;
|
|
// _result += _ss;
|
|
// _result += '}';
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// }
|
|
// });
|
|
// });
|
|
// });
|
|
// }
|
|
// function getAlarmByBaja(startDate_millisecond, endDate_millisecond, isRecover, isAck, alarmClass, callback) {
|
|
// let _sourceTmp;
|
|
// var _result = "";
|
|
// var _ss = "";
|
|
// var _bfName = "";
|
|
// var _sourceName = "";
|
|
// var _index = 0;
|
|
// var _recoverState = isRecover ? "!= null" : "= null"
|
|
// var _ackState = isAck ? "= 1" : "!= 1";
|
|
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime from openAlarms where alarmClass = '" + alarmClass + "' and timestamp.millis > " + startDate_millisecond + " and timestamp.millis < " + endDate_millisecond + " and normalTime " + _recoverState + " order by timestamp asc").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// _sourceTmp = (record.get('alarmData').get('sourceName')).toString().split('_');
|
|
// _bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
// _sourceName = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
|
|
// if (_index == 0)
|
|
// _ss += '{"buildingFloorName_zh":"' + _bfName + '", "uuid":"' + record.get('uuid') + '", "timestamp":"' + record.get('timestamp') + '", "alarmClass":"' + record.get('alarmClass') + '", "sourceName_zh":"' + _sourceName + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "normalTime":"' + record.get('normalTime') + '"}';
|
|
// else
|
|
// _ss += ',{"buildingFloorName_zh":"' + _bfName + '", "uuid":"' + record.get('uuid') + '", "timestamp":"' + record.get('timestamp') + '", "alarmClass":"' + record.get('alarmClass') + '", "sourceName_zh":"' + _sourceName + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "normalTime":"' + record.get('normalTime') + '"}';
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result += '{' + '"count": ' + _index + ', "data":[';
|
|
// _result += _ss;
|
|
// _result += ']}';
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// },
|
|
// limit: -1,
|
|
// offset: 0
|
|
// });
|
|
// });
|
|
// });
|
|
// }
|
|
function getAlarmByBaja(
|
|
startDate_millisecond,
|
|
endDate_millisecond,
|
|
isRecover,
|
|
isAck,
|
|
alarmClass,
|
|
callback
|
|
) {
|
|
let _sourceTmp;
|
|
var _result = "";
|
|
var _ss = [];
|
|
var _bfName = "";
|
|
var _sourceName = "";
|
|
var _index = 0;
|
|
var _recoverState = isRecover ? "= 'normal'" : "= 'offnormal'";
|
|
var _ackState = isAck ? "= 'acked'" : "= 'unacked'";
|
|
//console.log("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where alarmClass = '" + alarmClass + "' and timestamp.millis > " + startDate_millisecond + " and timestamp.millis < " + endDate_millisecond + " and normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp asc")
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:|alarm:|bql:select timestamp, ackTime, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where alarmClass = '" +
|
|
alarmClass +
|
|
"' and timestamp.millis > " +
|
|
startDate_millisecond +
|
|
" and timestamp.millis < " +
|
|
endDate_millisecond +
|
|
" and sourceState " +
|
|
_recoverState +
|
|
" and ackState " +
|
|
_ackState +
|
|
" order by timestamp asc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
const alarmDisplayName =
|
|
record.get("alarmData").get("sourceName").split(":")[1] ??
|
|
record.get("alarmData").get("sourceName").split(":")[0];
|
|
//console.log(alarmDisplayName)
|
|
_sourceTmp = alarmDisplayName.split("_");
|
|
_bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
_sourceName = _sourceTmp.slice(0, 8).join("_");
|
|
_sourceTmp = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
if (!_sourceTmp.includes("undefined")) {
|
|
_ss.push({
|
|
buildingFloorName_zh: _bfName,
|
|
uuid: record.get("uuid"),
|
|
timestamp: record.get("timestamp").$cEncStr,
|
|
alarmClass: record.get("alarmClass"),
|
|
sourceName_zh: _sourceName,
|
|
sourceTmp: _sourceTmp,
|
|
msgText: record.get("alarmData").get("msgText"),
|
|
ackState: record.get("ackState"),
|
|
normalTime: record.get("normalTime"),
|
|
ackedTime: record.get("ackTime").$cEncStr,
|
|
});
|
|
}
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result = { count: _index, data: _ss };
|
|
|
|
//console.log(552, _result);
|
|
|
|
if (typeof callback === "function") {
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 取得單一設備最新10筆異常資料 by baja
|
|
* @param {any} devicePath
|
|
* @param {any} callback
|
|
*/
|
|
// function getOneDeviceAlarmTop10ByBaja(devicePath, callback) {
|
|
// var _result = "";
|
|
// var _ss = "";
|
|
// var _index = 0;
|
|
// //{ "count":2,"data": [{ "time": "2022/11/14 15:00:00", "errId": "0001", "ackCheck": "未確認", "errReason": "燈泡故障" }, { "time": "2022/11/14 15:00:00", "errId": "0002", "ackCheck": "未確認", "errReason": "燈泡故障" }]}
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:|alarm:|bql:select top 10 timestamp, ackState, alarmData, alarmData.sourceName, sourceState, uuid, alarmData.msgText, normalTime where alarmData.sourceName like '%" + devicePath + "%' order by timestamp desc").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// if (_index == 0)
|
|
// _ss += '{"uuid":"' + record.get('uuid') + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "timestamp":"' + record.get('timestamp') + '"}';
|
|
// else
|
|
// _ss += ',{"uuid":"' + record.get('uuid') + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "timestamp":"' + record.get('timestamp') + '"}';
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result += '{' + '"count": ' + _index +', "data":[';
|
|
|
|
// _result += _ss+']';
|
|
// _result += '}';
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// }
|
|
// });
|
|
// });
|
|
// });
|
|
// }
|
|
function getOneDeviceAlarmTop10ByBaja(devicePath, callback) {
|
|
var _result = {};
|
|
var _ss = [];
|
|
var _occurrenceTime = "";
|
|
var _normalTime = "";
|
|
var _index = 0;
|
|
//{ "count":2,"data": [{ "time": "2022/11/14 15:00:00", "errId": "0001", "ackCheck": "未確認", "errReason": "燈泡故障" }, { "time": "2022/11/14 15:00:00", "errId": "0002", "ackCheck": "未確認", "errReason": "燈泡故障" }]}
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:|alarm:|bql:select top 10 timestamp, ackState, alarmData, alarmData.sourceName, sourceState, uuid, alarmData.msgText, normalTime where alarmData.sourceName like '%" +
|
|
devicePath +
|
|
"%' order by timestamp desc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
_occurrenceTime = "";
|
|
_normalTime = "";
|
|
// console.log(record.get('timestamp'),record.get('normalTime') )
|
|
var _resultUuid = record.get("uuid").toString().split("-"); //43dc7846-bd96-4be2-ab35-f11aec729c60
|
|
|
|
var _occurrenceTime = new Date(
|
|
record.get("timestamp").$cEncStr
|
|
).toLocaleString("zh-tw", {
|
|
year: "numeric",
|
|
month: "2-digit",
|
|
day: "2-digit",
|
|
hour: "2-digit",
|
|
minute: "2-digit",
|
|
});
|
|
// _occurrenceTime += _timestampTemp.getFullYear().toString() + "-" + addzero(_timestampTemp.getMonth() + 1).toString() + "-" + addzero(_timestampTemp.getDate()).toString() + " " + addzero(_timestampTemp.getHours()).toString() + ":" + addzero(_timestampTemp.getMinutes()).toString() + ":" + addzero(_timestampTemp.getSeconds()).toString();
|
|
|
|
//var _occurrenceTime = _timestamp.format("yyyy-MM-dd hh:mm:ss");//.toLocaleString();
|
|
var _normalTime = new Date(
|
|
record.get("normalTime").$cEncStr
|
|
).toLocaleString("zh-tw", {
|
|
year: "numeric",
|
|
month: "2-digit",
|
|
day: "2-digit",
|
|
hour: "2-digit",
|
|
minute: "2-digit",
|
|
});
|
|
// _normalTime += _normaltime.getFullYear().toString() + "-" + addzero(_normaltime.getMonth() + 1).toString() + "-" + addzero(_normaltime.getDate()).toString() + " " + addzero(_normaltime.getHours()).toString() + ":" + addzero(_normaltime.getMinutes()).toString() + ":" + addzero(_normaltime.getSeconds()).toString();
|
|
|
|
var _msgText = record.get("alarmData").get("msgText"); // == 1 ? _occurrenceTime : "未確認";
|
|
var _ackText =
|
|
record.get("ackState") == 1 ? _occurrenceTime : "未確認";
|
|
_ss.push({
|
|
uuid: _resultUuid[0],
|
|
msgText: _msgText,
|
|
ackState: _ackText,
|
|
timestamp: _occurrenceTime,
|
|
normalTime: _normalTime,
|
|
});
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result = JSON.stringify({ count: _index, data: _ss });
|
|
if (typeof callback === "function") {
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 在單一系統下,取得各個設備的異常狀態
|
|
* @param {any} systemPath
|
|
* @param {any} callback
|
|
*/
|
|
// function getOneSystemAlarmStateByBaja(systemPath, callback) {
|
|
// var _result = "";
|
|
// var _ss = "";
|
|
// var _index = 0;
|
|
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:|alarm:|bql:select alarmData, alarmData.sourceName, sourceState, uuid where alarmData.sourceName like '%" + systemPath + "%' order by timestamp desc").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// _ss += ', "' + _index + '": {"uuid":"' + record.get('uuid') + '", "sourceName":"' + record.get('alarmData').get('sourceName') + '", "sourceState":"' + record.get('sourceState') + '"}';
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result += '{' + '"count": ' + _index;
|
|
// _result += _ss;
|
|
// _result += '}';
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// }
|
|
// });
|
|
// });
|
|
// });
|
|
// }
|
|
function getOneSystemAlarmStateByBaja(systemPath, callback) {
|
|
var _result = "";
|
|
var _ss = "";
|
|
var _index = 0;
|
|
/* console.log("local:|foxs:|alarm:|bql:select alarmData, alarmData.sourceName, sourceState, uuid where alarmData.sourceName like '%" + systemPath + "%' order by timestamp desc")*/
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:|alarm:|bql:select alarmData, alarmData.sourceName, sourceState, uuid where alarmData.sourceName like '%" +
|
|
systemPath +
|
|
"%' order by timestamp desc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
if (_index == 0)
|
|
_ss +=
|
|
'{"uuid":"' +
|
|
record.get("uuid") +
|
|
'", "sourceName":"' +
|
|
record.get("alarmData").get("sourceName") +
|
|
'", "sourceState":"' +
|
|
record.get("sourceState") +
|
|
'"}';
|
|
else
|
|
_ss +=
|
|
',{"uuid":"' +
|
|
record.get("uuid") +
|
|
'", "sourceName":"' +
|
|
record.get("alarmData").get("sourceName") +
|
|
'", "sourceState":"' +
|
|
record.get("sourceState") +
|
|
'"}';
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result += "{" + '"count": ' + _index + ', "data":[';
|
|
_result += _ss;
|
|
_result += "]}";
|
|
if (typeof callback === "function") {
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* 在單一系統下,取得各個系統的狀態 異常與否
|
|
* @param {any} systemPath
|
|
* @param {any} callback
|
|
*/
|
|
function getOneSystemStateByBaja(systemPath, callback) {
|
|
var _result = "";
|
|
var _ss = "";
|
|
var _index = 0;
|
|
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:" +
|
|
port +
|
|
"|alarm:|bql:select top 1 alarmData, alarmData.sourceName, sourceState where alarmData.sourceName like '%" +
|
|
systemPath +
|
|
"%' order by timestamp desc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
//if (_index == 0)
|
|
// _ss += '{"sourceState":"' + record.get('sourceState') + '"}';
|
|
//else
|
|
// _ss += '{"sourceState":"' + record.get('sourceState') + '"}';
|
|
_ss += '{"sourceState":"' + record.get("sourceState") + '"}';
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result += "{" + '"count": ' + _index + ', "data":[';
|
|
_result += _ss;
|
|
_result += "]}";
|
|
if (typeof callback === "function") {
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* [首頁] 查詢異常數量
|
|
* @param {any} callback
|
|
*/
|
|
function getAlarmCountByBaja(callback) {
|
|
var _result = { count: 0 };
|
|
var _index = 0;
|
|
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:"+port+"|alarm:|bql:select sourceState where sourceState = 'offnormal'").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result.count = _index;
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// },
|
|
// limit: -1,
|
|
// offset: 0
|
|
// });
|
|
// });
|
|
// });
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:" +
|
|
port +
|
|
"|alarm:|bql:select COUNT(*) where sourceState = 'offnormal'"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
if (typeof callback === "function") {
|
|
// console.log("@@@@@@@@@", record.get("COUNT$28toString$29").$val)
|
|
callback(record.get("COUNT$28toString$29").$val);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* [首頁] 查詢復歸數量
|
|
* @param {any} callback
|
|
*/
|
|
function getRecoverCountByBaja(callback) {
|
|
var _result = { count: 0 };
|
|
var _index = 0;
|
|
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:"+port+"|alarm:|bql:select normalTime where normalTime != null").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result.count = _index;
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// },
|
|
// limit: -1,
|
|
// offset: 0
|
|
// });
|
|
// });
|
|
// });
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:" +
|
|
port +
|
|
"|alarm:|bql:select COUNT(*) where normalTime != null"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
if (typeof callback === "function") {
|
|
callback(record.get("COUNT$28toString$29").$val);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* [首頁] 查詢已確認異常數量
|
|
* @param {any} callback
|
|
*/
|
|
function getCheckedAckedCountByBaja(callback) {
|
|
var _result = { count: 0 };
|
|
var _index = 0;
|
|
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:"+port+"|alarm:|bql:select ackState where ackState ='acked'").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result.count = _index;
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// },
|
|
// limit: -1,
|
|
// offset: 0
|
|
// });
|
|
// });
|
|
// });
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:" +
|
|
port +
|
|
"|alarm:|bql:select COUNT(*) where ackState='acked'"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
if (typeof callback === "function") {
|
|
callback(record.get("COUNT$28toString$29").$val);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* [首頁] 查詢未確認異常數量
|
|
* @param {any} callback
|
|
*/
|
|
function getUnCheckedAckedCountByBaja(callback) {
|
|
var _result = { count: 0 };
|
|
var _index = 0;
|
|
// console.log("######getUnCheckedAckedCountByBaja#######");
|
|
// require(['baja!'], function (baja) {
|
|
// baja.Ord.make("local:|foxs:"+port+"|alarm:|bql:select ackState where ackState ='unacked'").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result.count = _index;
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// },
|
|
// limit: -1,
|
|
// offset: 0
|
|
// });
|
|
// });
|
|
// });
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:" +
|
|
port +
|
|
"|alarm:|bql:select COUNT(*) where ackState='unacked'"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
if (typeof callback === "function") {
|
|
callback(record.get("COUNT$28toString$29").$val);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* [首頁] 取得現在是異常的系統 (較快)
|
|
* @param {any} callback
|
|
*/
|
|
function getSystemAlarmByBaja(callback) {
|
|
var _result = { count: 0, data: [] };
|
|
var _index = 0;
|
|
|
|
require(["baja!"], function (baja) {
|
|
// console.log("local:|foxs:"+ port +"|alarm:|bql:select alarmClass where isAlarm")
|
|
//baja.Ord.make("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where isAlarm").get()
|
|
baja.Ord.make(
|
|
"local:|foxs:" +
|
|
port +
|
|
"|alarm:|bql:select alarmClass where sourceState = 'offnormal'"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
// console.log(record)
|
|
let main = {};
|
|
main.alarmClass = record.get("alarmClass");
|
|
|
|
_result.data.push(main);
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result.count = _index;
|
|
if (typeof callback === "function") {
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
// /**
|
|
// * 取得單一設備異常
|
|
// * @param {any} callback
|
|
// */
|
|
// //(devicePath, callback)
|
|
// function getOneDeviceAlarmByBaja(devicePath, startDate_millisecond, endDate_millisecond, isRecover, isAck, callback) {
|
|
// // var _result = "";
|
|
// // var _ss = "";
|
|
// // var _occurrenceTime = "";
|
|
// // var _normalTime = "";
|
|
// // var _index = 0;
|
|
|
|
// let _sourceTmp;
|
|
// var _result = "";
|
|
// var _ss = "";
|
|
// var _bfName = "";
|
|
// var _sourceName = "";
|
|
// var _index = 0;
|
|
// var _recoverState = isRecover ? "!= null" : "= null";
|
|
// //local:|foxs:|alarm:|bql:select ackState from openAlarms where ackState ='acked'
|
|
// var _ackState = isAck ? "= 'acked'" : "= 'unacked'";
|
|
|
|
// //{ "count":2,"data": [{ "time": "2022/11/14 15:00:00", "errId": "0001", "ackCheck": "未確認", "errReason": "燈泡故障" }, { "time": "2022/11/14 15:00:00", "errId": "0002", "ackCheck": "未確認", "errReason": "燈泡故障" }]}
|
|
// require(['baja!'], function (baja) {
|
|
// console.log("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime from openAlarms where alarmData.sourceName like '%" + devicePath + "%' and timestamp.millis >= " + startDate_millisecond + " and timestamp.millis <= " + endDate_millisecond + " and normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc");
|
|
// baja.Ord.make("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime from openAlarms where alarmData.sourceName like '%" + devicePath + "%' and timestamp.millis >= " + startDate_millisecond + " and timestamp.millis <= " + endDate_millisecond + " and normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc").get()
|
|
// // console.log("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime from openAlarms where alarmData.sourceName like '%" + devicePath + "%' and alarmClass = '" + alarmClass + "' and timestamp.millis >= " + startDate_millisecond + " and timestamp.millis <= " + endDate_millisecond + " and normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc");
|
|
// // baja.Ord.make("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime from openAlarms where alarmData.sourceName like '%" + devicePath + "%' and alarmClass = '" + alarmClass + "' and timestamp.millis >= " + startDate_millisecond + " and timestamp.millis <= " + endDate_millisecond + " and normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc").get()
|
|
// //baja.Ord.make("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmData, alarmData.sourceName, sourceState, uuid, alarmData.msgText, normalTime where alarmData.sourceName like '%" + devicePath + "%' order by timestamp desc").get()
|
|
// .then(function (table) {
|
|
// return table.cursor({
|
|
// each: function (record) {
|
|
|
|
// _sourceTmp = (record.get('alarmData').get('sourceName')).toString().split('_');
|
|
// _bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
// _sourceName = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
// // _occurrenceTime = "";
|
|
// // _normalTime = "";
|
|
// //var _resultUuid = record.get('uuid').toString().split("-");//43dc7846-bd96-4be2-ab35-f11aec729c60
|
|
|
|
// // var _timestampTemp = new Date(record.get('timestamp').toString());
|
|
// // _occurrenceTime += _timestampTemp.getFullYear().toString() + "-" + addzero(_timestampTemp.getMonth() + 1).toString() + "-" + addzero(_timestampTemp.getDate()).toString() + " " + addzero(_timestampTemp.getHours()).toString() + ":" + addzero(_timestampTemp.getMinutes()).toString() + ":" + addzero(_timestampTemp.getSeconds()).toString();
|
|
|
|
// // var _normaltime = new Date(record.get('normalTime').toString());
|
|
// // _normalTime += _normaltime.getFullYear().toString() + "-" + addzero(_normaltime.getMonth() + 1).toString() + "-" + addzero(_normaltime.getDate()).toString() + " " + addzero(_normaltime.getHours()).toString() + ":" + addzero(_normaltime.getMinutes()).toString() + ":" + addzero(_normaltime.getSeconds()).toString();
|
|
|
|
// // var _msgText = record.get('alarmData').get('msgText');// == 1 ? _occurrenceTime : "未確認";
|
|
// // var _ackText = record.get('ackState') == 1 ? _occurrenceTime : "未確認";
|
|
|
|
// //_ss += '{"buildingFloorName_zh":"' + _bfName + '", "uuid":"' + record.get('uuid') + '", "timestamp":"' + record.get('timestamp') + '", "alarmClass":"' + record.get('alarmClass') + '", "sourceName_zh":"' + _sourceName + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "normalTime":"' + record.get('normalTime') + '"}';
|
|
// if (_index == 0)
|
|
// _ss += '{"buildingFloorName_zh":"' + _bfName + '", "uuid":"' + record.get('uuid') + '", "timestamp":"' + record.get('timestamp') + '", "alarmClass":"' + record.get('alarmClass') + '", "sourceName_zh":"' + _sourceName + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "normalTime":"' + record.get('normalTime') + '"}';
|
|
// //_ss += '{"uuid":"' + record.get('uuid') + '", "msgText":"' + _msgText + '", "ackState":"' + _ackText + '", "timestamp":"' + _occurrenceTime + '", "normalTime":"' + _normalTime + '"}';
|
|
// else
|
|
// _ss += ',{"buildingFloorName_zh":"' + _bfName + '", "uuid":"' + record.get('uuid') + '", "timestamp":"' + record.get('timestamp') + '", "alarmClass":"' + record.get('alarmClass') + '", "sourceName_zh":"' + _sourceName + '", "msgText":"' + record.get('alarmData').get('msgText') + '", "ackState":"' + record.get('ackState') + '", "normalTime":"' + record.get('normalTime') + '"}';
|
|
// _index++;
|
|
// },
|
|
// after: function () {
|
|
// _result += '{' + '"count": ' + _index + ', "data":[';
|
|
// _result += _ss + ']';
|
|
// _result += '}';
|
|
// if (typeof callback === 'function') {
|
|
// callback(_result);
|
|
// }
|
|
// },
|
|
// limit: -1,
|
|
// offset: 0
|
|
// });
|
|
// });
|
|
// });
|
|
// }
|
|
|
|
/**
|
|
* 取得單一設備異常
|
|
* @param {any} devicePath
|
|
* @param {any} callback
|
|
*/
|
|
function getOneDeviceAlarmByBaja(devicePath, callback) {
|
|
let _sourceTmp;
|
|
var _result = "";
|
|
var _ss = [];
|
|
var _bfName = "";
|
|
var _sourceName = "";
|
|
var _index = 0;
|
|
|
|
require(["baja!"], function (baja) {
|
|
// console.log("local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where alarmData.sourceName like '%" + devicePath + "%' order by timestamp desc");
|
|
baja.Ord.make(
|
|
"local:|foxs:|alarm:|bql:select timestamp, ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where alarmData.sourceName like '%" +
|
|
devicePath +
|
|
"%' order by timestamp desc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
_sourceTmp = record
|
|
.get("alarmData")
|
|
.get("sourceName")
|
|
.toString()
|
|
.split("_");
|
|
_bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
_sourceName = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
_ss.push({
|
|
buildingFloorName_zh: _bfName,
|
|
uuid: record.get("uuid"),
|
|
timestamp: record.get("timestamp"),
|
|
alarmClass: record.get("alarmClass"),
|
|
sourceName_zh: _sourceName,
|
|
msgText: record.get("alarmData").get("msgText"),
|
|
ackState: record.get("ackState"),
|
|
normalTime: record.get("normalTime"),
|
|
});
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result = { count: _index, data: _ss };
|
|
|
|
//console.log(552, _result);
|
|
|
|
if (typeof callback === "function") {
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
function getOtherAlarmByBaja(
|
|
startDate_millisecond,
|
|
endDate_millisecond,
|
|
isRecover,
|
|
isAck,
|
|
callback
|
|
) {
|
|
var _result = { count: 0, data: [] };
|
|
var _index = 0;
|
|
var _recoverState = isRecover ? "= 'normal'" : "= 'offnormal'";
|
|
var _ackState = isAck ? "= 'acked'" : "= 'unacked'";
|
|
|
|
let startUrl = "";
|
|
if (startDate_millisecond) {
|
|
startUrl = "timestamp.millis >= " + startDate_millisecond + " and ";
|
|
}
|
|
console.log(
|
|
"告警2",
|
|
"local:|foxs:|alarm:|bql:select timestamp, ackTime, priority ,ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where " +
|
|
startUrl +
|
|
"timestamp.millis <= " +
|
|
endDate_millisecond +
|
|
" and sourceState " +
|
|
_recoverState +
|
|
" and ackState " +
|
|
_ackState +
|
|
" order by timestamp desc"
|
|
);
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:|alarm:|bql:select timestamp, ackTime, priority ,ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where " +
|
|
startUrl +
|
|
"timestamp.millis <= " +
|
|
endDate_millisecond +
|
|
" and normalTime " +
|
|
_recoverState +
|
|
" and ackState " +
|
|
_ackState +
|
|
" order by timestamp desc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
// console.log(record)
|
|
let main = {};
|
|
// const alarmDisplayName = record.get('alarmData').get('sourceName').split(":")[1] ?? record.get('alarmData').get('sourceName').split(":")[0]
|
|
const alarmDisplayName =
|
|
record.get("alarmData").get("sourceName").split(":")[1] ??
|
|
record.get("alarmData").get("sourceName");
|
|
_sourceTmp = alarmDisplayName.split("_");
|
|
let _bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
let _sourceName = _sourceTmp.slice(0, 8).join("_");
|
|
_sourceTmp = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
console.log(
|
|
record.get("alarmData").get("sourceName"),
|
|
_bfName,
|
|
_sourceName
|
|
);
|
|
|
|
main.buildingFloorName_zh = _bfName;
|
|
main.sourceName_zh = _sourceName;
|
|
main.uuid = record.get("uuid").$val;
|
|
main.timestamp = record.get("timestamp").$cEncStr;
|
|
main.alarmClass = record.get("alarmClass");
|
|
main.point = _sourceTmp;
|
|
main.sourceTmp = _sourceTmp;
|
|
main.devicePath = _sourceName;
|
|
main.msgText = record.get("alarmData").get("msgText");
|
|
main.normalTime = record.get("normalTime");
|
|
main.priority = record.get("priority");
|
|
main.ackedTime = record.get("ackTime").$cEncStr;
|
|
main.ackState = record.get("ackState").$ordinal;
|
|
if (_sourceTmp.includes("undefined")) {
|
|
main.buildingFloorName_zh = "無";
|
|
main.alarmClass = "系統/設備異常";
|
|
main.sourceTmp = "無";
|
|
main.msgText = "";
|
|
_result.data.push(main);
|
|
}
|
|
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result.count = _index;
|
|
if (typeof callback === "function") {
|
|
//console.log(_result)
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
function getAllDeviceAlarmByBaja(
|
|
startDate_millisecond,
|
|
endDate_millisecond,
|
|
isRecover,
|
|
isAck,
|
|
callback
|
|
) {
|
|
var _result = { count: 0, data: [] };
|
|
var _index = 0;
|
|
var _recoverState = isRecover ? "= 'normal'" : "= 'offnormal'";
|
|
var _ackState = isAck ? "= 'acked'" : "= 'unacked'";
|
|
|
|
let startUrl = "";
|
|
if (startDate_millisecond) {
|
|
startUrl = "timestamp.millis >= " + startDate_millisecond + " and ";
|
|
}
|
|
// console.log("告警", "local:|foxs:|alarm:|bql:select timestamp, ackTime, priority ,ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where " + startUrl + "timestamp.millis <= " + endDate_millisecond + " and normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc");
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:|alarm:|bql:select timestamp, ackTime, priority ,ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where " +
|
|
startUrl +
|
|
"timestamp.millis <= " +
|
|
endDate_millisecond +
|
|
" and sourceState " +
|
|
_recoverState +
|
|
" and ackState " +
|
|
_ackState +
|
|
" order by timestamp desc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
let main = {};
|
|
// const alarmDisplayName = record.get('alarmData').get('sourceName').split(":")[1] ?? record.get('alarmData').get('sourceName').split(":")[0]
|
|
const alarmDisplayName =
|
|
record.get("alarmData").get("sourceName").split(":")[1] ??
|
|
record.get("alarmData").get("sourceName");
|
|
_sourceTmp = alarmDisplayName.split("_");
|
|
let _bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
let _sourceName = _sourceTmp.slice(0, 8).join("_");
|
|
_sourceTmp = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
|
|
main.buildingFloorName_zh = _bfName;
|
|
main.sourceName_zh = _sourceName;
|
|
main.uuid = record.get("uuid").$val;
|
|
main.timestamp = record.get("timestamp").$cEncStr;
|
|
main.alarmClass = record.get("alarmClass");
|
|
main.point = _sourceTmp;
|
|
main.sourceTmp = _sourceTmp;
|
|
main.devicePath = _sourceName;
|
|
main.msgText = record.get("alarmData").get("msgText");
|
|
main.normalTime = record.get("normalTime");
|
|
main.priority = record.get("priority");
|
|
main.ackedTime = record.get("ackTime").$cEncStr;
|
|
main.ackState = record.get("ackState").$ordinal;
|
|
if (_sourceTmp.includes("undefined")) {
|
|
// console.log(main.ackState)
|
|
main.buildingFloorName_zh = "無";
|
|
main.alarmClass = "系統/設備異常";
|
|
main.sourceTmp = "無";
|
|
main.msgText = "";
|
|
}
|
|
_result.data.push(main);
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result.count = _index;
|
|
if (typeof callback === "function") {
|
|
//console.log(_result)
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
function getDeviceAlarmCardByBaja(
|
|
startDate_millisecond,
|
|
endDate_millisecond,
|
|
isRecover,
|
|
isAck,
|
|
callback
|
|
) {
|
|
var _result = { count: 0, data: [] };
|
|
var _index = 0;
|
|
var _recoverState = isRecover ? "= 'normal'" : "= 'offnormal'";
|
|
var _ackState = isAck ? "= 'acked'" : "= 'unacked'";
|
|
|
|
let startUrl = "";
|
|
if (startDate_millisecond) {
|
|
startUrl = "timestamp.millis >= " + startDate_millisecond + " and ";
|
|
}
|
|
// console.log("首頁","local:|foxs:|alarm:|bql:select timestamp, ackTime, priority ,ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime from openAlarms where " + startUrl + "timestamp.millis <= " + endDate_millisecond + " and normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc");
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make(
|
|
"local:|foxs:|alarm:|bql:select timestamp, ackTime, priority ,ackState, alarmClass, alarmClassDisplayName, alarmValue, alarmData, alarmData.sourceName, uuid, alarmData.msgText, alarmData.numericValue, alarmData.presentValue, alarmData.status, alarmData.toState, normalTime where " +
|
|
startUrl +
|
|
"timestamp.millis <= " +
|
|
endDate_millisecond +
|
|
" and sourceState " +
|
|
_recoverState +
|
|
" and ackState " +
|
|
_ackState +
|
|
" order by timestamp desc"
|
|
)
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
// console.log("%%%%%%%%%%%%%%%%", record.get('alarmData').get('alarmClassDisplayName'))
|
|
let main = {};
|
|
// console.log(record.get('alarmData').get('sourceName'),record.get('timestamp').$cEncStr)
|
|
const alarmDisplayName =
|
|
record.get("alarmData").get("sourceName").split(":")[1] ??
|
|
record.get("alarmData").get("sourceName").split(":")[0];
|
|
//console.log(alarmDisplayName)
|
|
_sourceTmp = alarmDisplayName.split("_");
|
|
let _bfName = _sourceTmp[1] + "-" + _sourceTmp[4];
|
|
let _sourceName = _sourceTmp.slice(0, 8).join("_");
|
|
_sourceTmp = _sourceTmp[7] + "-" + _sourceTmp[8];
|
|
|
|
main.buildingFloorName_zh = _bfName;
|
|
main.sourceName_zh = _sourceName;
|
|
main.uuid = record.get("uuid").$val;
|
|
main.timestamp = record.get("timestamp").$cEncStr;
|
|
main.alarmClass = record.get("alarmClass");
|
|
main.point = _sourceTmp;
|
|
main.sourceTmp = _sourceTmp;
|
|
main.devicePath = _sourceName;
|
|
main.msgText = record.get("alarmData").get("msgText");
|
|
main.normalTime = record.get("normalTime");
|
|
main.priority = record.get("priority");
|
|
main.ackedTime = record.get("ackTime").$cEncStr;
|
|
main.ackState = record.get("ackState").$ordinal;
|
|
// if (!_sourceTmp.includes("undefined")) {
|
|
// // console.log(main.ackState)
|
|
// }
|
|
_result.data.push(main);
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
_result.count = _index;
|
|
if (typeof callback === "function") {
|
|
//console.log(_result)
|
|
callback(_result);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
/**
|
|
* [首頁] 圓餅圖資料 - 全部的異常
|
|
* @param {any} callback
|
|
*/
|
|
function getAlarmForChartDataByBaja(callback) {
|
|
var _result = "";
|
|
var _ss = "";
|
|
var _index = 0;
|
|
|
|
require(["baja!"], function (baja) {
|
|
baja.Ord.make("local:|foxs:|alarm:|bql:select *")
|
|
.get()
|
|
.then(function (table) {
|
|
return table.cursor({
|
|
each: function (record) {
|
|
if (_index == 0)
|
|
_ss +=
|
|
'{"alarmClass":"' +
|
|
record.get("alarmClass") +
|
|
'", "ackState":"' +
|
|
record.get("ackState") +
|
|
'", "normalTime":"' +
|
|
record.get("normalTime") +
|
|
'"}';
|
|
else
|
|
_ss +=
|
|
',{"alarmClass":"' +
|
|
record.get("alarmClass") +
|
|
'", "ackState":"' +
|
|
record.get("ackState") +
|
|
'", "normalTime":"' +
|
|
record.get("normalTime") +
|
|
'"}';
|
|
_index++;
|
|
},
|
|
after: function () {
|
|
//_result += '{' + '"count": ' + _index + ', "data":[';
|
|
//_result += _ss;
|
|
//_result += ']}';
|
|
if (typeof callback === "function") {
|
|
callback(_index);
|
|
}
|
|
},
|
|
limit: -1,
|
|
offset: 0,
|
|
});
|
|
});
|
|
});
|
|
}
|