From e5323243d50831f64b4ca42f7aa028378bb0611a Mon Sep 17 00:00:00 2001
From: hnouts <hnouts@grandlyon.com>
Date: Wed, 11 Jan 2023 18:05:11 +0100
Subject: [PATCH] quick fix ?

---
 src/services/queryRunner.service.ts | 27 ++++++++++++++++++---------
 1 file changed, 18 insertions(+), 9 deletions(-)

diff --git a/src/services/queryRunner.service.ts b/src/services/queryRunner.service.ts
index 044708f40..f4dd66206 100644
--- a/src/services/queryRunner.service.ts
+++ b/src/services/queryRunner.service.ts
@@ -111,24 +111,33 @@ export default class QueryRunner {
     timePeriod: TimePeriod,
     timeStep: TimeStep
   ) {
-    // increase timeperiod range because the last data for a day is actually stored the next day at 00:00
-    if (timeStep === TimeStep.HALF_AN_HOUR) {
-      timePeriod.startDate = timePeriod.startDate.plus({ minutes: 30 })
-      timePeriod.endDate = timePeriod.endDate.plus({ minutes: 30 })
-    }
-    const filteredResult = data.data.filter((entry: any) =>
-      this.withinDateBoundaries(
+    const filterData = (
+      entry: any,
+      timeStep: TimeStep,
+      timePeriod: TimePeriod
+    ) => {
+      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,
           entry.month || 1,
           entry.day || 1,
-          entry.hour,
-          entry.minute
+          hour,
+          min
         ).setZone('utc', {
           keepLocalTime: true,
         }),
         timePeriod
       )
+    }
+    const filteredResult = data.data.filter((entry: any) =>
+      filterData(entry, timeStep, timePeriod)
     )
     return filteredResult
   }
-- 
GitLab