mqttArchiver/lib/historian/emulator.js

61 lines
1.3 KiB
JavaScript

/**
*
* User: Martin Donnelly
* Date: 2016-08-31
* Time: 10:03
*
*/
// Historian emulator
'use strict';
var logger = require('log4js').getLogger();
var db = require('../server/db-connector').dbConnection;
var dbHistorian = require('../server/db-historian.js')(db);
module.exports = function(app) {
var express = require('express');
var mdotRouter = express.Router();
mdotRouter.get('/types/:type/devices/:deviceid', function(req, res) {
var data = {};
if (!req.params.type && !req.params.deviceid) {
{
logger.error('Historian','Missing required parameter');
res.status(400).send({
status: 'error',
error: 'missing required parameter'
});
return;
}
}
if (req.query.hasOwnProperty('start') && req.query.hasOwnProperty('end')) {
data.start = req.query.start;
data.end = req.query.end;
}
data.type = req.params.type;
data.device = req.params.deviceid;
if (data.hasOwnProperty('type') && data.hasOwnProperty('device')) {
dbHistorian.doGet(data)
.then((d) => {
res.json({events:d});
})
.catch((e) => {
logger.error(e);
res.status(500).json({});
});
}
});
app.use('/apiv2/historian/', mdotRouter);
};