Reisezeit aus Start/Ende, Pause pro Eintrag in Minuten

- Reisezeit wird aus Reise-Beginn/-Ende zur Laufzeit berechnet (Spalte reisezeit entfernt),
  Anzeige in Vorschau und Liste wie Mehrarbeit
- Pause pro Eintrag in Minuten (Feld zwischen Beginn und Ende), Default aus globaler Einstellung
- Eingabefelder werden nach dem Speichern eines neuen Eintrags geleert
- DB-Migrationen für reise_beginn/reise_ende/pause-Spalten
- Version 0.1.2

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-22 17:00:57 +02:00
parent 74eedf7c3d
commit cb168fbd18
10 changed files with 147 additions and 66 deletions
+9 -3
View File
@@ -48,10 +48,16 @@ und liefern 401 ohne Session.
## Datenmodell & Berechnungen
Tabelle `arbeitszeit`: `datum`, `ort` (Kunde FFM | Homeoffice | Andrena), `beginn`, `ende`
(je HH:MM), `reisezeit`, `vertriebsunterstuetzung` (default 2), `kommentar` (max. 500).
(je HH:MM), `reise_beginn`, `reise_ende` (je HH:MM, optional), `pause` (dezimale Stunden),
`vertriebsunterstuetzung` (default 2), `kommentar` (max. 500).
- `Arbeitszeit = Ende Beginn` (dezimale Stunden)
- `Reisezeit = Reise-Ende Reise-Beginn`: im Formular werden Start/Ende eingegeben, die
Reisezeit wird wie Mehrarbeit zur Laufzeit berechnet (nicht gespeichert) und in Vorschau
und Liste angezeigt. Beim Speichern koppelt sie nur die Vertriebsunterstützung.
- `Mehrarbeit = Arbeitszeit 8 Pause`
- Die Spalte „Arbeitszeit Kunde" ist fix 8 h (`ARBEITSZEIT_KUNDE_FIX`).
- Die **Pause** ist eine globale Einstellung in der `settings`-Tabelle (Tab „Einstellungen").
Mehrarbeit wird zur Laufzeit berechnet, nicht gespeichert.
- Die **Pause** wird pro Eintrag gespeichert (Spalte `pause`, dezimale Stunden; Eingabe im
Formular in Minuten zwischen Beginn und Ende). Standard ist die globale Pause-Einstellung
in der `settings`-Tabelle (Tab „Einstellungen"). Mehrarbeit wird je Eintrag aus dieser
Pause zur Laufzeit berechnet, nicht gespeichert.