fix: Führungen über Mitternacht richtig datieren — Version 1.16.0
Das Formular hat Beginn und Ende bisher stumpf dasselbe Datum gegeben. Wer einen Eintrag nach Mitternacht erfasste, bekam damit einen Beginn, der nach dem Ende lag: Datum 9.8., Ende 00:30, Startzeit 21:00 ergab den 9.8. 21:00 als Beginn. Beginn und Ende werden jetzt auseinander abgeleitet. Anker ist das Ende — der Zeitpunkt, zu dem das Logbuch ausgefüllt wird und der von der Vorbelegung her verlässlich ist. Ist die Startzeit später als die Endzeit, liegt der Beginn am Vortag; wird die Endzeit unter die Startzeit gesetzt, wandert das Ende auf den Folgetag. Das Datumsfeld bleibt das Startdatum und springt sichtbar zurück, erklärt durch eine Zeile unter den Feldern. Über 12 Stunden Dauer erscheint ein Hinweis, der das Speichern nicht blockiert. migrate_zeiten.sql datiert Altbestände mit Beginn > Ende um einen Tag zurück. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
-- Migration: Führungen über Mitternacht richtig datieren (Version 1.16.0)
|
||||
--
|
||||
-- Bis Version 1.15.0 setzte das Eingabeformular für Beginn und Ende dasselbe Datum.
|
||||
-- Wurde ein Eintrag nach Mitternacht erfasst, bekam der Beginn dadurch das Datum des
|
||||
-- Endes und liegt seither zeitlich NACH dem Ende.
|
||||
--
|
||||
-- Vor dem Ausführen die betroffenen Zeilen ansehen — ein Vertipper bei der Startzeit
|
||||
-- sieht in den Daten genauso aus wie ein echter Mitternachtsfall:
|
||||
-- SELECT ID, Kuppel, ArtFuehrung, Beginn, Ende FROM logbuch WHERE Beginn > Ende ORDER BY Beginn;
|
||||
UPDATE logbuch SET Beginn = Beginn - INTERVAL 1 DAY WHERE Beginn > Ende;
|
||||
Reference in New Issue
Block a user