Urlaubsverwaltung: Statistik-Neuberechnung & Manueller Override

AbwesenheitAAdminAArbeitszeitA

Changelog

Verfasst von Changelog

Letzte Aktualisierung 2 Monaten her

v17022026.2.1
17. Februar 2026
Urlaubsverwaltung

Grundlegende Ueberarbeitung der Urlaubsstatistik-Berechnung. Arbeitszeitaenderungen wirken sich nicht mehr rueckwirkend auf genehmigte Urlaubsantraege aus. Manuelle Tage-Korrektur im Bearbeitungs-Modal moeglich.

Repariert

  • Urlaubsstatistik zeigt 0 Tage

    Wenn fuer einen Mitarbeiter keine individuellen Arbeitszeiten hinterlegt waren, zeigte die Statistik 0 genommene und 0 geplante Tage an. Der Backend-Fallback erzeugte 7 geschlossene Tage, wodurch der Frontend-Fallback (Mo-Fr) nicht griff.

  • Tage-Spalte zeigt falsche Werte

    Die daysCount-Anzeige in der Tabelle nutzte einen Fallback (differenceInBusinessDays), wenn der gespeicherte Wert 0 war. Urlaubsantraege die komplett auf geschlossene Tage fielen (z.B. Freitag bei 4-Tage-Woche) wurden faelschlicherweise als 1 Tag angezeigt.

Verbessert

  • Rueckwirkungsschutz bei Arbeitszeitaenderung

    Aenderungen am Arbeitszeitplan eines Mitarbeiters berechnen automatisch die Urlaubstage (days_count) fuer offene und zukuenftige genehmigte Antraege neu. Bereits vergangene genehmigte Antraege bleiben unberuehrt und behalten den historisch korrekten Wert.

  • Neuberechnung bei Genehmigung

    Beim Genehmigen eines Urlaubsantrags wird days_count automatisch frisch berechnet. Vorher wurde der Wert nur bei Datumsaenderungen aktualisiert, nicht bei reinen Status-Wechseln.

  • Statistik nutzt gespeicherte Werte

    Die Frontend-Statistik (Genommen/Geplant/Resturlaub) verwendet nun den gespeicherten daysCount aus der Datenbank statt einer Live-Neuberechnung. Dadurch stimmen Tage-Spalte und Statistik immer ueberein.

Hinzugefuegt

  • Manuelle Tage-Korrektur

    Im Bearbeitungs-Modal kann die Anzahl der Arbeitstage jetzt manuell ueberschrieben werden. Ein neues Feld Arbeitstage (manuell) erlaubt direkte Eingabe. Einmal manuell gesetzt, wird der Wert durch keine automatische Berechnung mehr ueberschrieben.

  • Manual-Override-Flag

    Neue Datenbank-Spalte days_count_manual. Wenn gesetzt, schuetzt sie den manuell eingegebenen Wert vor Auto-Recalculation durch Arbeitszeitaenderungen, Genehmigungen oder Migrationen.

Betroffene Bereiche

Diese Aenderungen betreffen folgende Module und Dateien:

Urlaubsverwaltung
Arbeitszeiten
Statistik-Berechnung