create irradiance composite graph

This commit is contained in:
Eric Hulburd
2016-03-11 17:38:03 -06:00
parent 2dd9389694
commit 782f5cbf91
32 changed files with 824 additions and 379 deletions

View File

@@ -32,16 +32,27 @@ var EnergyDatum = DB.sequelize.define(NAME, {
associate: ()=>{
EnergyDatum.belongsTo(DB.House);
},
exposeForHouseAtDates: (house_id, dates)=>{
var params = {house_id: house_id};
extend(params, ApiHelper.datesParamToSequelize(dates, 'day'));
exposeForHouseAtDates: (query)=>{
var attributes = ['id', 'production', 'irradiance', 'consumption', 'day'],
params = {};
if (query.houses){
attributes.push('house_id');
params['$or'] = []
query.houses.forEach((house_query)=>{
var house_params = {house_id: house_query.house_id};
extend(house_params, ApiHelper.datesParamToSequelize(house_query.dates, 'day'));
params['$or'].push(house_params);
});
} else {
params.house_id = query.house_id;
extend(params, ApiHelper.datesParamToSequelize(query.dates, 'day'));
}
return EnergyDatum.findAll({
where: params,
attributes: ['id', 'production', 'consumption', 'day']
attributes: attributes
}).then((energy_data)=>{
return energy_data.map((energy_datum)=>{
return energy_datum.dataValues;
});
return energy_data.map(energy_datum => energy_datum.dataValues);
});
}
}