feat(maintenance): MAINT-Epic (Wartungspläne/-aufträge, Werkstatt) + Akte-Redesign
CI / backend-tests (push) Failing after 2m4s
CI / frontend-build (push) Successful in 18s

Neues Wartungskonzept: Wartungsplan+Position+Intervall (zeit/km/
Betriebsstunden, kombinierbar - fällig sobald ein Kriterium erreicht
ist), Wartungsauftrag mit intern/externer Werkstatt, Status offen/
in_arbeit/erledigt, Kosten, Historie, Dokument-Anhang. Ad-hoc-Aufträge
ohne Plan möglich (z.B. kleinere Reparatur). Admin-Tab "Wartungspläne".

Objektakte-Redesign (Epic 21, Nutzer-Feedback "wirkt nicht modern"):
CSS-Grid statt Karten-Stapel, einspaltig mobil, zweispaltig ab 900px;
Fahrzeug-Objekte zeigen Wartung/Fahrzeugdaten prominent, Geräte/
Rucksäcke die Beladung. Dabei gefundene Lücke: Beladung (Soll/Ist je
Position) fehlte in der Akte komplett, nur über eine laufende
Kontrolle sichtbar - jetzt eigene Karte.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV
This commit is contained in:
2026-09-06 23:17:39 +02:00
co-authored by Claude Sonnet 5
parent d607a1101d
commit 2a4d391711
23 changed files with 1505 additions and 44 deletions
+53
View File
@@ -677,6 +677,59 @@ select.input:focus {
min-width: 0;
}
.akte-grid {
display: grid;
gap: 1rem;
grid-template-columns: 1fr;
grid-template-areas:
"kopf"
"aktionen"
"stamm"
"beladung"
"wartung"
"pruefungen"
"verantwortlich"
"maengel"
"dokumente"
"historie";
}
.akte-kopf { grid-area: kopf; }
.akte-aktionen { grid-area: aktionen; }
.akte-stamm { grid-area: stamm; }
.akte-beladung { grid-area: beladung; }
.akte-wartung { grid-area: wartung; }
.akte-pruefungen { grid-area: pruefungen; }
.akte-verantwortlich { grid-area: verantwortlich; }
.akte-maengel { grid-area: maengel; }
.akte-dokumente { grid-area: dokumente; }
.akte-historie { grid-area: historie; }
@media (min-width: 900px) {
.akte-grid {
grid-template-columns: 2fr 1fr;
grid-template-areas:
"kopf kopf"
"aktionen aktionen"
"stamm wartung"
"beladung pruefungen"
"verantwortlich maengel"
"dokumente dokumente"
"historie historie";
}
.akte-grid.ist-fahrzeug {
grid-template-areas:
"kopf kopf"
"aktionen aktionen"
"wartung stamm"
"pruefungen beladung"
"maengel verantwortlich"
"dokumente dokumente"
"historie historie";
}
}
@media (max-width: 768px) {
.split-layout {
flex-direction: column;