Changes for page Fuhrpark (Fleet Manager)

Last modified by Patrizia Gurschka on 2026/09/14 07:51

From version 19.1
edited by Patrizia Gurschka
on 2026/09/14 07:51
Change comment: There is no comment for this version
To version 14.1
edited by Patrizia Gurschka
on 2026/09/10 08:40
Change comment: Uploaded new attachment "1789022432806-668.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -1,5 +1,5 @@
1 1  |(((
2 -= **đźš— **Fuhrpark (Fleet Manager) =
2 += **đźš— Fuhrpark (Fleet Manager)** =
3 3  
4 4  |(((
5 5  {{info}}
... ... @@ -67,27 +67,27 @@
67 67  
68 68  = Hauptfunktionen =
69 69  
70 -== 1. Stammdaten-Import ==
70 +~1. Stammdaten-Import
71 71  
72 72  Fahrzeuge werden initial aus RIMO importiert und danach in der App gepflegt (RĂĽckschreiben nach RIMO ist geplant, aktuell nicht implementiert). Fahrer werden täglich um 4:00 Uhr gegen RIMO (ai.sdmperson) abgeglichen — Neuanlage bei unbekannter Personalnummer, sonst Aktualisierung von Stammdaten, Kostenstelle und Line Manager. Externe Fahrer können zusätzlich manuell angelegt werden; Stammdaten interner (RIMO-importierter) Fahrer sind schreibgeschĂĽtzt.
73 73  
74 -== 2. Fahrzeug-/Fahrer-Zuordnung ==
74 +2. Fahrzeug-/Fahrer-Zuordnung
75 75  
76 76  Fahrer und Line Manager können einem Fahrzeug direkt zugewiesen werden (Line Manager wird bei Fahrer-Auswahl automatisch ergänzt, bleibt aber ĂĽberschreibbar). Befristete Zuordnungen kehren nach Ablauf automatisch zum vorherigen Fahrer zurĂĽck. Jede Zuordnungs- sowie Line-Manager-/Kostenstellen-Ă„nderung wird vollständig und zeitlich abgegrenzt protokolliert (vehicle_assignment_history, driver_attribute_history) — sowohl bei manueller Ă„nderung als auch beim täglichen RIMO-Sync.
77 77  
78 -== 3. Kilometer-Erfassung ==
78 +3. Kilometer-Erfassung
79 79  
80 80  Kilometerstände werden automatisiert importiert: GPS-AT täglich, Tesla wöchentlich, jeweils zum Monatsende. FĂĽr Fahrzeuge ohne automatische Anbindung wird 3 Tage vor Monatsende täglich eine Erinnerungsmail verschickt, bis ein Wert in der SharePoint-Liste eingetragen ist. Das KM-Dashboard berĂĽcksichtigt bei der Auswertung ausschlieĂźlich den Zeitraum, in dem die jeweilige Zuordnung tatsächlich bestand — auch bei unterjährigem Fahrer- oder Line-Manager-Wechsel.
81 81  
82 -== 4. Kalkulation ==
82 +4. Kalkulation
83 83  
84 84  Pro Fahrzeug wird eine Kostenkalkulation aus Anschaffungskosten, laufenden Kosten und Verbrauch/Energiepreisen erstellt (Kosten pro Monat/Jahr/Kilometer). Beim Anlegen werden Default-Parameter aus „Kalkulationsparameter“ nach Fahrzeugtyp ĂĽbernommen; individuelle Felder werden ergänzt und per „Aktualisieren“ neu berechnet. Ă„nderungen an Kalkulationsparametern wirken sich auf alle Fahrzeuge des jeweiligen Typs aus (Rollen admin/demo/controlling).
85 85  
86 -== 5. Handlungsbedarf ==
86 +5. Handlungsbedarf
87 87  
88 88  Hochrechnungen werden bei jedem KM-Stand-Import neu berechnet. Ein bestelltes Fahrzeug wird ĂĽber das Häkchen „Bestellt“ markiert, erst danach anlegbar. Nach Anlage steht „Geliefert“ zur VerfĂĽgung; sobald gesetzt, entfällt das Fahrzeug automatisch aus der Handlungsbedarfsliste. Ein gesetztes „Deactivation Date“ deaktiviert und archiviert ein Fahrzeug automatisch zum entsprechenden Datum.
89 89  
90 -== 6. Export & Abrechnung ==
90 +6. Export & Abrechnung
91 91  
92 92  Monatliche Abrechnungen und Kostenstellen-Umbuchungen werden auf Klick erstellt und als CSV exportiert. Die vollständige Fahrzeugliste (inkl. kompletter KalkulationsaufschlĂĽsselung) sowie gefahrene Kilometer können als Excel-Datei heruntergeladen werden.
93 93  
... ... @@ -95,7 +95,7 @@
95 95  
96 96  Ă„ndert sich der Line Manager eines Fahrers — manuell oder ĂĽber den täglichen Cron-Sync — wird nicht nur drivers.user_id aktualisiert, sondern auch jede betroffene vehicle_assignment_history-Zeile korrekt geschlossen und neu angelegt. Ohne diesen Schritt bliebe ein Fahrzeug fälschlich sowohl beim alten als auch beim neuen Line Manager sichtbar (historisch aufgetretener Fehler, mittlerweile behoben und mit einem Reparatur-Skript fĂĽr Altfälle nachgezogen).
97 97  
98 -[[image:1789022432806-668.png]]
98 +[[image:1789018507268-395.png||height="336" width="979"]]
99 99  
100 100  //Ablauf bei einem Line-Manager-Wechsel, inkl. Absicherung gegen doppelte Sichtbarkeit.//
101 101  
... ... @@ -110,6 +110,8 @@
110 110  |Datenbank|SQLite, WAL-Modus, data/fleet.db (Projekt-Root, nicht in Git)
111 111  |Reparatur-Skript|repair_stale_line_manager_assignments.py — einmalig, bei Altlasten vor dem Line-Manager-Fix
112 112  
113 +
114 +
113 113  = Sicherheit =
114 114  
115 115  Authentifizierung
... ... @@ -129,6 +129,17 @@
129 129  * **Odometer vs. Jahreskilometer: **vehicles.current_km speichert die im laufenden Kalenderjahr gefahrenen Kilometer (Vergleichswert zu „Max. KM/Jahr“), nicht den tatsächlichen Tacho-Stand. FĂĽr die Anzeige des echten Kilometerstands wird stattdessen die letzte Ablesung aus der KM-Historie herangezogen (latest_odometer_km).
130 130  * **Zuordnungsende “heute“: **Wird als Enddatum das aktuelle Datum gewählt, wird als Enddatum bewusst der Vortag (23:59:59) gespeichert — damit gilt die Zuordnung ab exakt Mitternacht des gewählten Tages als beendet, ohne Sekundenpräzision oder Sonderfall im Code.
131 131  
134 +|(((
135 +**⚠️  Offene Punkte / zu verifizieren**
136 +
137 +* Flottenweite Reaktivierung in apply_due_deactivations(): Die automatische Reaktivierung („kein Deactivation Date mehr“) wirkt aktuell auf ALLE Fahrzeuge mit deactivation_date=NULL, nicht nur auf das gerade bearbeitete — kann manuell archivierte Fahrzeuge versehentlich mit reaktivieren. Fix identifiziert (Reaktivierung auf die eine Fahrzeug-ID scopen), Umsetzung noch ausständig.
138 +* Genaues Schema von rimo.sdmtool (Spaltennamen name/last_update) ist aus einer Beschreibung ĂĽbernommen, nicht 1:1 gegen die echte Tabelle verifiziert.
139 +* Kein bestätigtes automatisches Backup der Produktivdatenbank gefunden — falls vorhanden, läuft es außerhalb des Anwendungscodes; sollte auf dem Server verifiziert werden.
140 +* Exakte SharePoint-/Fabric-Spaltennamen (SP_LIST_ITEMS_URL u. Ă„.) sollten einmalig gegen die reale Liste geprĂĽft werden.
141 +)))
142 +
143 +
144 +
132 132  = Server / Umgebung =
133 133  
134 134  Die App läuft auf 192.168.208.2, per Docker Compose (Services backend + frontend), und liegt unter /mnt/data/fleet-manager/fuhrpark.