/** * 取得歷史資料 by baja * @param {any} devicePath * @param {any} startDate_millisecond * @param {any} endDate_millisecond * @param {any} deviceName * @param {any} company * @param {any} callback */ // function getHistoryDataByBaja(devicePath, startDate_millisecond, endDate_millisecond, deviceName, company, callback) { // var _result = ""; // var _ss = ""; // var _index = 0; // require(['baja!'], function (baja) { // baja.Ord.make('local:|foxs:|history:/' + company + '/' + devicePath + '|bql:select * from control:ControlPoint where timestamp.millis > ' + startDate_millisecond + ' and timestamp.millis < ' + endDate_millisecond).get() // .then(function (table) { // return table.cursor({ // each: function (record) { // _ss += ', "' + _index + '": {"deviceName":"' + deviceName + '", "value":' + record.get('value') + ', "timestamp":"' + record.get('timestamp') + '"}'; // _index++; // }, // after: function () { // _result += '{' + '"count": ' + _index; // _result += _ss; // _result += '}'; // if (typeof callback === 'function') { // callback(_result); // } // } // }); // }); // }); // } function getHistoryDataByBaja(devicePath, startDate_millisecond, endDate_millisecond, deviceName, company, callback) { var _result = {}; var _ss = []; var _index = 0; require(['baja!'], function (baja) { console.log('local:|foxs:|history:/' + company + '/' + devicePath + '|bql:select * from control:ControlPoint where timestamp.millis > ' + startDate_millisecond + ' and timestamp.millis < ' + endDate_millisecond); baja.Ord.make('local:|foxs:|history:/' + company + '/' + devicePath + '|bql:select * from control:ControlPoint where timestamp.millis > ' + startDate_millisecond + ' and timestamp.millis < ' + endDate_millisecond).get() .then(function (table) { return table.cursor({ each: function (record) { 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: _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() }); }); } function test3000p(devicePath, startDate_millisecond, endDate_millisecond, deviceName, company, callback) { var _result = ""; var _ss = ""; var _index = 0; require(['baja!'], function (baja) { "use strict"; baja.Ord.make('local:|foxs:|history:/' + company + '/' + devicePath + '|bql:select * from control:ControlPoint where timestamp.millis > ' + startDate_millisecond + ' and timestamp.millis < ' + endDate_millisecond) .get( function (table) { table.cursor({ each: function (item) { console.log("item: " + item); if (_index == 0) _ss += '{"deviceName":"' + deviceName + '", "value":' + item.$map.$map.value.$display + ', "timestamp":"' + item.$map.$map.timestamp.$val.$cEncStr + '"}'; else _ss += ',{"deviceName":"' + deviceName + '", "value":' + item.$map.$map.value.$display + ', "timestamp":"' + item.$map.$map.timestamp.$val.$cEncStr + '"}'; _index++; }, after: function () { _result += '{' + '"count": ' + _index + ', "data":['; _result += _ss; _result += ']}'; if (typeof callback === 'function') { callback(_result); } }, limit: -1, offset: 0 }); }) }); }