Ejemplo n.º 1
0
    return Q.ninvoke(updateMeter.db, 'lrange', name, number * -1, -1).then(function(values) {
        var data = updateMeter._getDataStub();

        var total = 0;
        var totals = [];

        values.forEach(function(item) {
            var json = JSON.parse(item);
            totals.push(json.total);
            total += parseInt(json.total, 10);
        });

        data.total = total;
        data.kwh   = parseFloat(parseFloat((data.total/10000)).toFixed(4));
        data[utils.getSeriesName(name)] = totals;

        return data;
    }, function(error) {
Ejemplo n.º 2
0
    return Q.ninvoke(db, 'lrange', 'seconds', -60, -1).then(function(values) {
        var data        = updateMeter._getDataStub();
        var countSum    = 0;
        var kwhSum      = 0;
        var pulseValues = [];

        values.forEach(function(item) {
            var json = JSON.parse(item);
            countSum += parseInt(json.pulseCount);
            kwhSum   += parseFloat(json.kWhs);

            pulseValues.push(json.pulseCount);
        });

        data.count   = countSum;
        data.kwh     = parseFloat(parseFloat(kwhSum).toFixed(4));
        data.max     = u.max(pulseValues);
        data.min     = u.min(pulseValues);
        data.average = parseFloat(parseFloat(countSum / values.length).toFixed(4));
        data.watts   = parseFloat(parseFloat((data.average/10000) * 3600*1000).toFixed(4));
        data.total   = data.count;

        return data;
    }).then(function(data) {