81 lines
2.7 KiB
JavaScript
81 lines
2.7 KiB
JavaScript
// app.get('/json/add/:tag', fns.addTag); // Adds a tag to the scan list
|
|
// app.get('/json/remove/:tag', fns.removeTag); // Removes a tag from the scan list
|
|
// app.get('/json/val/:tag', fns.latestTagValue); // Gets the latest value of a single tag
|
|
// app.get('/json/series/:tag/:hours', fns.seriesTagValues); // Gets all the values of a tag for the last X hours
|
|
// app.get('/json/tags', fns.allTags); // Lists all tags in the scan list
|
|
// app.get('/json/all', fns.allValues); // Gets the latest values of all tags in the scan list
|
|
|
|
|
|
var getScanList = function(sl){
|
|
var query = "SELECT * FROM TagData.tags WHERE deleted = 0;";
|
|
|
|
};
|
|
|
|
exports.addTag = function(req, res){
|
|
var vals = {
|
|
tagName: req.params.tagName,
|
|
units: req.params.units,
|
|
};
|
|
var query = "INSERT INTO TagData.tags SET ?";
|
|
req.app.locals.db.query(query, vals, function(err, rows, fields) {
|
|
if (err) {
|
|
res.json({status:"error", message:err});
|
|
console.log(err);
|
|
} else {
|
|
res.json({status:"OK"});
|
|
}
|
|
});
|
|
};
|
|
|
|
exports.removeTag = function(req, res){
|
|
var query = "UPDATE TagData.tags SET deleted = 1 WHERE id = " + parseInt(req.params.tag) + ";";
|
|
req.app.locals.db.query(query, function(err, rows, fields) {
|
|
if (err) {
|
|
res.json({status:"error", message:err});
|
|
console.log(err);
|
|
} else {
|
|
res.json({status:"OK"});
|
|
}
|
|
});
|
|
};
|
|
|
|
exports.latestTagValue = function(req, res){
|
|
var query = "SELECT * FROM TagData.values WHERE id = (SELECT MAX(id) FROM TagData.values WHERE tagID = (SELECT id FROM TagData.tags WHERE tagName = '" + req.params.tag + "'));";
|
|
req.app.locals.db.query(query, function(err, rows, fields) {
|
|
if (err) {
|
|
res.json({status:"error", message:err});
|
|
console.log(err);
|
|
} else {
|
|
res.json({status:"OK", tag_val:rows[0]});
|
|
}
|
|
});
|
|
};
|
|
|
|
exports.seriesTagValues = function(req, res){
|
|
var query = "SELECT * FROM TagData.values WHERE tagID = "+ req.params.tag +" AND dateAdded > DATE_SUB(NOW(),INTERVAL "+ req.params.hours +" HOUR)";
|
|
req.app.locals.db.query(query, function(err, rows, fields) {
|
|
if (err){
|
|
console.log(err);
|
|
res.json({status:"error", message:err, query:query});
|
|
} else {
|
|
res.json({status:"OK", tag: req.params.tag, values:rows});
|
|
}
|
|
});
|
|
};
|
|
|
|
exports.allTags = function(req, res){
|
|
var query = "SELECT * FROM TagData.tags WHERE deleted = 0;";
|
|
req.app.locals.db.query(query, function(err, rows, fields) {
|
|
if (err) {
|
|
res.json({status:"error", message:err});
|
|
console.log(err);
|
|
} else {
|
|
res.json({status:"OK", tags:rows});
|
|
}
|
|
});
|
|
};
|
|
|
|
exports.allValues = function(req, res){
|
|
res.json(status:"error", message:"not implemented"});
|
|
};
|