Partly fixing timetable

This commit is contained in:
2026-05-30 16:06:07 +02:00
parent 6979f1685a
commit 91184cfc96
+4 -4
View File
@@ -1,4 +1,4 @@
from datetime import datetime, time, timedelta
from datetime import datetime, time, timedelta, timezone
from typing import List, Optional
from fastapi import APIRouter, Depends, Query
from sqlmodel.ext.asyncio.session import AsyncSession
@@ -71,6 +71,7 @@ async def get_timetable(
adj_from_date = from_date - timedelta(days=1)
sessions, _ = await get_sessions(session, from_date=adj_from_date, to_date=to_date)
slots = []
now = datetime.now(timezone.utc).replace(tzinfo=None)
current_date = from_date.date()
while current_date <= to_date.date():
date_str = current_date.strftime("%Y-%m-%d")
@@ -83,9 +84,8 @@ async def get_timetable(
slot_end_str = slot_end_time.strftime("%H:%M")
is_sleeping = False
for s in sessions:
if s.start_time <= slot_end_time and (
s.end_time is None or s.end_time >= slot_start_time
):
effective_end_time = s.end_time if s.end_time is not None else now
if s.start_time <= slot_end_time and effective_end_time >= slot_start_time:
is_sleeping = True
break
slots.append(