List reports

This commit is contained in:
Zalmoxisus 2016-08-19 19:43:36 +03:00
parent 426fc75610
commit b9de52d23f
3 changed files with 33 additions and 0 deletions

View File

@ -1,4 +1,5 @@
var uuid = require('node-uuid');
var pick = require('lodash/pick');
var JSData = require('js-data');
var store;
@ -11,6 +12,31 @@ function error(msg) {
});
}
function map(data, fields) {
if (!fields) return data;
return data.map(function(r) {
return pick(r, fields);
});
}
function listEvery(query) {
if (!adapter) {
return new Promise(function(resolve) {
var report = Report.filter(query);
return resolve(report);
});
}
return Report.findAll(query);
}
function list(query, fields) {
return new Promise(function(resolve) {
listEvery(query).then(function(data) {
return resolve(map(data, fields));
});
});
}
function get(id) {
if (!id) return error('No id specified.');
@ -55,6 +81,7 @@ function createStore(options) {
Report = store.defineResource('report');
return {
list: list,
get: get,
add: add
};

View File

@ -31,6 +31,11 @@ module.exports.run = function(worker) {
res.send(r || {});
});
break;
case 'list':
store.list(req.body.query, req.body.fields).then(function(r) {
res.send(r);
});
break;
default:
store.add(req.body).then(function(r) {
scServer.exchange.publish('log', req.body);

View File

@ -33,6 +33,7 @@
"express": "^4.13.3",
"getport": "^0.1.0",
"js-data": "^2.9.0",
"lodash": "^4.15.0",
"minimist": "^1.2.0",
"node-uuid": "^1.4.0",
"object-assign": "^4.0.0",