diff --git a/Frontend/_sysMonAll.html b/Frontend/_sysMonAll.html index dafebe2..24ce87e 100644 --- a/Frontend/_sysMonAll.html +++ b/Frontend/_sysMonAll.html @@ -1,8 +1,8 @@ 
-
-
+
+
@@ -13,906 +13,906 @@ aria-hidden="true" data-backdrop="static" data-keyboard="false"> - diff --git a/Frontend/_sysMonFloor.html b/Frontend/_sysMonFloor.html index ce8a580..c3365f3 100644 --- a/Frontend/_sysMonFloor.html +++ b/Frontend/_sysMonFloor.html @@ -1,7 +1,7 @@ 
-
-
-
-
- -
-
-
+
+
+
+
+ +
+
+
diff --git a/Frontend/js/n4js/alarmbaja.js b/Frontend/js/n4js/alarmbaja.js index fd43970..b49054a 100644 --- a/Frontend/js/n4js/alarmbaja.js +++ b/Frontend/js/n4js/alarmbaja.js @@ -1,17 +1,16 @@ - function addzero(num) { - return num < 10 ? '0' + num : 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 -*/ + * 取得異常資料 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 = ""; @@ -84,54 +83,86 @@ function addzero(num) { // }); // }); // } -function getAlarmByBaja(startDate_millisecond, endDate_millisecond, isRecover, isAck, alarmClass, 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 _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 normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp asc").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 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) { - // console.log(record) - 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").split(":")[0]; //console.log(alarmDisplayName) - _sourceTmp = alarmDisplayName.split('_'); + _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 }) + _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++ + _index++; }, after: function () { - _result = { count: _index, data: _ss } + _result = { count: _index, data: _ss }; //console.log(552, _result); - if (typeof callback === 'function') { + if (typeof callback === "function") { callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* 取得單一設備最新10筆異常資料 by baja -* @param {any} devicePath -* @param {any} callback -*/ + * 取得單一設備最新10筆異常資料 by baja + * @param {any} devicePath + * @param {any} callback + */ // function getOneDeviceAlarmTop10ByBaja(devicePath, callback) { // var _result = ""; // var _ss = ""; @@ -168,46 +199,74 @@ function getOneDeviceAlarmTop10ByBaja(devicePath, callback) { 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() + 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 _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" }); + 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" }); + 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 }) + 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') { + _result = JSON.stringify({ count: _index, data: _ss }); + if (typeof callback === "function") { callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* 在單一系統下,取得各個設備的異常狀態 -* @param {any} systemPath -* @param {any} callback -*/ + * 在單一系統下,取得各個設備的異常狀態 + * @param {any} systemPath + * @param {any} callback + */ // function getOneSystemAlarmStateByBaja(systemPath, callback) { // var _result = ""; // var _ss = ""; @@ -238,44 +297,70 @@ function getOneSystemAlarmStateByBaja(systemPath, callback) { 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() + 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') + '"}'; + _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') + '"}'; + _ss += + ',{"uuid":"' + + record.get("uuid") + + '", "sourceName":"' + + record.get("alarmData").get("sourceName") + + '", "sourceState":"' + + record.get("sourceState") + + '"}'; _index++; }, after: function () { - _result += '{' + '"count": ' + _index + ', "data":['; + _result += "{" + '"count": ' + _index + ', "data":['; _result += _ss; - _result += ']}'; - if (typeof callback === 'function') { + _result += "]}"; + if (typeof callback === "function") { callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* 在單一系統下,取得各個系統的狀態 異常與否 -* @param {any} systemPath -* @param {any} callback -*/ + * 在單一系統下,取得各個系統的狀態 異常與否 + * @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:|alarm:|bql:select top 1 alarmData, alarmData.sourceName, sourceState where alarmData.sourceName like '%" + systemPath + "%' order by timestamp desc").get() + 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) { @@ -283,166 +368,248 @@ function getOneSystemStateByBaja(systemPath, callback) { // _ss += '{"sourceState":"' + record.get('sourceState') + '"}'; //else // _ss += '{"sourceState":"' + record.get('sourceState') + '"}'; - _ss += '{"sourceState":"' + record.get('sourceState') + '"}'; + _ss += '{"sourceState":"' + record.get("sourceState") + '"}'; _index++; }, after: function () { - _result += '{' + '"count": ' + _index + ', "data":['; + _result += "{" + '"count": ' + _index + ', "data":['; _result += _ss; - _result += ']}'; - if (typeof callback === 'function') { + _result += "]}"; + if (typeof callback === "function") { callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* [首頁] 查詢異常數量 -* @param {any} callback -*/ + * [首頁] 查詢異常數量 + * @param {any} callback + */ function getAlarmCountByBaja(callback) { var _result = { count: 0 }; var _index = 0; - require(['baja!'], function (baja) { - baja.Ord.make("local:|foxs:|alarm:|bql:select sourceState where sourceState = 'offnormal'").get() + // 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) { - _index++; - }, - after: function () { - _result.count = _index; - if (typeof callback === 'function') { - callback(_result); + if (typeof callback === "function") { + // console.log("@@@@@@@@@", record.get("COUNT$28toString$29").$val) + callback(record.get("COUNT$28toString$29").$val); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* [首頁] 查詢復歸數量 -* @param {any} callback -*/ + * [首頁] 查詢復歸數量 + * @param {any} callback + */ function getRecoverCountByBaja(callback) { var _result = { count: 0 }; var _index = 0; - require(['baja!'], function (baja) { - baja.Ord.make("local:|foxs:|alarm:|bql:select normalTime where normalTime != null").get() + // 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) { - _index++; - }, - after: function () { - _result.count = _index; - if (typeof callback === 'function') { - callback(_result); + if (typeof callback === "function") { + callback(record.get("COUNT$28toString$29").$val); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* [首頁] 查詢已確認異常數量 -* @param {any} callback -*/ + * [首頁] 查詢已確認異常數量 + * @param {any} callback + */ function getCheckedAckedCountByBaja(callback) { var _result = { count: 0 }; var _index = 0; - require(['baja!'], function (baja) { - baja.Ord.make("local:|foxs:|alarm:|bql:select ackState where ackState ='acked'").get() + // 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) { - _index++; - }, - after: function () { - _result.count = _index; - if (typeof callback === 'function') { - callback(_result); + if (typeof callback === "function") { + callback(record.get("COUNT$28toString$29").$val); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* [首頁] 查詢未確認異常數量 -* @param {any} callback -*/ + * [首頁] 查詢未確認異常數量 + * @param {any} callback + */ function getUnCheckedAckedCountByBaja(callback) { var _result = { count: 0 }; var _index = 0; - - require(['baja!'], function (baja) { - baja.Ord.make("local:|foxs:|alarm:|bql:select ackState where ackState ='unacked'").get() + // 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) { - _index++; - }, - after: function () { - _result.count = _index; - if (typeof callback === 'function') { - callback(_result); + if (typeof callback === "function") { + callback(record.get("COUNT$28toString$29").$val); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* [首頁] 取得現在是異常的系統 (較快) -* @param {any} callback -*/ + * [首頁] 取得現在是異常的系統 (較快) + * @param {any} callback + */ function getSystemAlarmByBaja(callback) { var _result = { count: 0, data: [] }; var _index = 0; - require(['baja!'], function (baja) { - // console.log("ip:202.39.218.221|foxs:4912|alarm:|bql:select alarmClass where isAlarm") + 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:|alarm:|bql:select alarmClass 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'); + main.alarmClass = record.get("alarmClass"); _result.data.push(main); _index++; }, after: function () { _result.count = _index; - if (typeof callback === 'function') { + if (typeof callback === "function") { callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); @@ -521,10 +688,10 @@ function getSystemAlarmByBaja(callback) { // } /** -* 取得單一設備異常 -* @param {any} devicePath -* @param {any} callback -*/ + * 取得單一設備異常 + * @param {any} devicePath + * @param {any} callback + */ function getOneDeviceAlarmByBaja(devicePath, callback) { let _sourceTmp; var _result = ""; @@ -533,77 +700,128 @@ function getOneDeviceAlarmByBaja(devicePath, callback) { var _sourceName = ""; var _index = 0; - require(['baja!'], function (baja) { + 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() + 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('_'); + _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++ + _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 } + _result = { count: _index, data: _ss }; //console.log(552, _result); - if (typeof callback === 'function') { + if (typeof callback === "function") { callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } -function getOtherAlarmByBaja(startDate_millisecond, endDate_millisecond, isRecover, isAck, callback) { +function getOtherAlarmByBaja( + startDate_millisecond, + endDate_millisecond, + isRecover, + isAck, + callback +) { var _result = { count: 0, data: [] }; var _index = 0; - var _recoverState = isRecover ? "!= null" : "= null"; + 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 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 normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc").get() + 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] + 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) + 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.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 + 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.alarmClass = "系統/設備異常"; main.sourceTmp = "無"; main.msgText = ""; _result.data.push(main); @@ -613,61 +831,78 @@ function getOtherAlarmByBaja(startDate_millisecond, endDate_millisecond, isRecov }, after: function () { _result.count = _index; - if (typeof callback === 'function') { + if (typeof callback === "function") { //console.log(_result) callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } -function getAllDeviceAlarmByBaja(startDate_millisecond, endDate_millisecond, isRecover, isAck, callback) { +function getAllDeviceAlarmByBaja( + startDate_millisecond, + endDate_millisecond, + isRecover, + isAck, + callback +) { var _result = { count: 0, data: [] }; var _index = 0; - var _recoverState = isRecover ? "!= null" : "= null"; + 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 normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc").get() + // 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) { - // 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] + 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.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 + 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.alarmClass = "系統/設備異常"; main.sourceTmp = "無"; main.msgText = ""; } @@ -676,23 +911,28 @@ function getAllDeviceAlarmByBaja(startDate_millisecond, endDate_millisecond, isR }, after: function () { _result.count = _index; - if (typeof callback === 'function') { + if (typeof callback === "function") { //console.log(_result) callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } - -function getDeviceAlarmCardByBaja(startDate_millisecond, endDate_millisecond, isRecover, isAck, callback) { +function getDeviceAlarmCardByBaja( + startDate_millisecond, + endDate_millisecond, + isRecover, + isAck, + callback +) { var _result = { count: 0, data: [] }; var _index = 0; - var _recoverState = isRecover ? "!= null" : "= null"; + var _recoverState = isRecover ? "= 'normal'" : "= 'offnormal'"; var _ackState = isAck ? "= 'acked'" : "= 'unacked'"; let startUrl = ""; @@ -700,35 +940,47 @@ function getDeviceAlarmCardByBaja(startDate_millisecond, endDate_millisecond, is 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 normalTime " + _recoverState + " and ackState " + _ackState + " order by timestamp desc").get() + 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) + // 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] + 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] + _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.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 + 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) // } @@ -737,49 +989,64 @@ function getDeviceAlarmCardByBaja(startDate_millisecond, endDate_millisecond, is }, after: function () { _result.count = _index; - if (typeof callback === 'function') { + if (typeof callback === "function") { //console.log(_result) callback(_result); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); } /** -* [首頁] 圓餅圖資料 - 全部的異常 -* @param {any} callback -*/ + * [首頁] 圓餅圖資料 - 全部的異常 + * @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() + 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') + '"}'; + _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') + '"}'; + _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') { + if (typeof callback === "function") { callback(_index); } }, limit: -1, - offset: 0 + offset: 0, }); }); }); -} \ No newline at end of file +}