diff --git a/src/services/queryRunner.service.ts b/src/services/queryRunner.service.ts index f4dd66206df7a83796b1b21740d03fe954152f9b..bc840585457903e2acbc00b45937176b823ab23f 100644 --- a/src/services/queryRunner.service.ts +++ b/src/services/queryRunner.service.ts @@ -111,18 +111,16 @@ export default class QueryRunner { timePeriod: TimePeriod, timeStep: TimeStep ) { - const filterData = ( - entry: any, - timeStep: TimeStep, - timePeriod: TimePeriod - ) => { + if (timeStep === TimeStep.HALF_AN_HOUR) { + // increase timeperiod range because the last data for a day is actually stored the next day at 00:00 + timePeriod.startDate = timePeriod.startDate.plus({ minutes: 30 }) + timePeriod.endDate = timePeriod.endDate.plus({ minutes: 30 }) + } + + const filteredResult = data.data.filter((entry: any) => { + // add ternary expression to not send to the withinDate function an hour different than zero const hour = timeStep === TimeStep.HALF_AN_HOUR ? entry.hour : 0 const min = timeStep === TimeStep.HALF_AN_HOUR ? entry.minute : 0 - if (timeStep === TimeStep.HALF_AN_HOUR) { - // increase timeperiod range because the last data for a day is actually stored the next day at 00:00 - timePeriod.startDate = timePeriod.startDate.plus({ minutes: 30 }) - timePeriod.endDate = timePeriod.endDate.plus({ minutes: 30 }) - } return this.withinDateBoundaries( DateTime.local( entry.year, @@ -135,10 +133,7 @@ export default class QueryRunner { }), timePeriod ) - } - const filteredResult = data.data.filter((entry: any) => - filterData(entry, timeStep, timePeriod) - ) + }) return filteredResult }