var express = require('express'); var router = express.Router(); var moment = require('moment'); // Get latest 10 readings out from the database router.get('/latest10', function(req,res) { var collection = req.strom; collection.find({},{limit:5, sort: { date: -1}},function(e,docs) { res.json(docs); }); }); // Get readings for the last hour out from the database router.get('/onehour', function(req,res) { var db = req.db; var collection = db.get('strom'); var st = req.query.start; st = st.substring(0,st.length-1); var start = moment(st); var end = moment(st); start.subtract(1,'h'); collection.find({date: { $gte: new Date(start), $lt: new Date(end)}},{sort: { date: 1} },function(e,docs) { // console.dir(docs); res.json(docs); }); }); router.get('/oneyear', function(req,res) { var year = req.query.year; if(year == undefined) { year = moment().year(); } var st = req.query.start; st = st.substring(0,10); // console.log("st: " + st); var start = moment(st); var db = req.db; var collection = db.get('stromDay'); var sDat = moment("01-01-"+year, "MM-DD-YYYY"); // Start-Datum 1.1.year var curDat = moment(); var erg = []; // hier die Werte sammeln var last = { date: 0, wert: 0, cnt: 0}; var first=0; // console.log("Start " + start.format()); start.subtract(30,'days'); // Daten für 30 Tage holen // console.log("Start-30 " + start.format()); collection.find( { date: { $gte: new Date(start) }}, {sort: { date: 1} },function(err,docs){ if(err) { console.log("StromM-Error: "); console.dir(err); } else { var lang = (docs.length > 31) ? 31 : docs.length; for(var i=0; i