From dafa0810a062eefe19482c1965b412cddb32ddfd Mon Sep 17 00:00:00 2001
From: Felix Blanke <info@fblanke.de>
Date: Tue, 21 Jan 2025 16:16:39 +0100
Subject: [PATCH] Change rounding strategy to ceil

---
 AKModel/models.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/AKModel/models.py b/AKModel/models.py
index d30912d3..636f7a9f 100644
--- a/AKModel/models.py
+++ b/AKModel/models.py
@@ -1,5 +1,6 @@
 import itertools
 import json
+import math
 from dataclasses import dataclass
 from datetime import datetime, timedelta
 from typing import Iterable, Generator
@@ -934,10 +935,12 @@ class AKSlot(models.Model):
                 return []
             return [f"availability-person-{owner.pk}"]
 
+        ceil_offet_eps = 1e-4
+
         # self.slots_in_an_hour is set in AKJSONExportView
         data = {
             "id": str(self.pk),
-            "duration": round(self.duration * self.slots_in_an_hour),
+            "duration": math.ceil(self.duration * self.slots_in_an_hour - ceil_offet_eps),
             "properties": {},
             "room_constraints": [constraint.name
                                  for constraint in self.ak.requirements.all()],
-- 
GitLab