fix(tours): Tagesumschlag nach Ortszeit statt UTC
'Heute' wurde per Utc::now().date_naive() bestimmt. Bei CEST (UTC+2) wechselte der Tag dadurch erst um 02:00 Ortszeit — der Fahrer sah nach Mitternacht noch die Touren von gestern. Umgestellt auf Local::now() in list_my_tours_today sowie den Import-/Resync-Defaults und dem Scheduler-Catch-up. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
use std::sync::Arc;
|
||||
|
||||
use chrono::{NaiveDate, Utc};
|
||||
use chrono::{Local, NaiveDate};
|
||||
|
||||
use crate::dto::TourSummary;
|
||||
use crate::error::ApplicationError;
|
||||
@ -27,9 +27,14 @@ impl ListMyToursTodayUseCase {
|
||||
}
|
||||
|
||||
pub async fn execute(&self, personalnummer: i64) -> Result<Vec<TourSummary>, ApplicationError> {
|
||||
// Bewusst Local statt Utc: der Tagesumschlag muss sich nach der
|
||||
// Ortszeit des Fahrers richten. Mit Utc wechselt "heute" erst um
|
||||
// 02:00 Ortszeit (CEST = UTC+2) — bis dahin sähe der Fahrer nach
|
||||
// Mitternacht noch die Touren von gestern. Der Server läuft in
|
||||
// Europe/Vienna, daher ist Local hier korrekt.
|
||||
let today = self
|
||||
.today_override
|
||||
.unwrap_or_else(|| Utc::now().date_naive());
|
||||
.unwrap_or_else(|| Local::now().date_naive());
|
||||
self.repository
|
||||
.find_today_for_driver(personalnummer, today)
|
||||
.await
|
||||
|
||||
Reference in New Issue
Block a user