Werkstatt-Ablauf: Termin bis Übergabe › Auftragsstatus (Ablauf eines Auftrags)
Auftragsstatus (Ablauf eines Auftrags)
AutomationLive✓ Geprüft am Sat Sep 05 2026 02:00:00 GMT+0200 (Mitteleuropäische Sommerzeit)Jeder Auftrag durchläuft feste Stationen: Angefragt/Gebucht -> In Bearbeitung -> ggf. Kostenvoranschlag beim Kunden zur Freigabe -> Kontrolle durch das Büro -> ggf. Probefahrt -> Fertig geprüft -> Abgerechnet. Dazwischen kann ein Auftrag storniert, als unvollständig markiert oder überzogen (länger als geplant) werden. Nicht jeder Wechsel ist erlaubt — es gibt eine feste Übergangs-Tabelle, damit ein Auftrag z.B. nicht direkt von 'Angefragt' auf 'Abgerechnet' springen kann.
Bild folgt
Jeder Versuch, den Status eines Auftrags zu ändern, läuft durch eine zentrale Prüfung: Nur die in der Übergangs-Tabelle hinterlegten Sprünge sind erlaubt, jeder andere wird mit einem Fehler abgewiesen. Der Wechsel auf „fertig" aus Kontrolle oder Probefahrt läuft dabei zwingend über das Kontrolle / Kontroll-Gate und dessen Prüfungen — ein direkter Sprung daran vorbei wird automatisch dorthin umgeleitet. Beim Erreichen eines Endzustands bricht das System zusätzlich noch offene Sicherheits-Prüfungen automatisch ab, beim Wechsel auf „fertig" setzt es Kilometerstand und eine Service-Erinnerung und bucht den Materialverbrauch, beim Wechsel auf „abgerechnet" vergibt es die Rechnungsnummer. Aus „kundenfreigabe" heraus darf seit einer Owner-Entscheidung auch direkt fakturiert werden, damit ein zugesagtes Angebot nicht fälschlich als offen in Liste und Tagesboard stehen bleibt. Jeder tatsächliche Wechsel landet zusätzlich im Aktivitäts-Verlauf des Auftrags — eine eigene Mail oder Push-Nachricht verschickt die Statusmaschine selbst nicht.
- Statuswechsel wird mit einem Fehler abgelehnt → der Sprung ist in der Übergangs-Tabelle nicht vorgesehen (z. B. direkt von „Angefragt" auf „Abgerechnet"); über einen erlaubten Zwischenschritt gehen.
- Ein abgerechneter Auftrag lässt sich nicht einfach zurückdrehen → aus „Abgerechnet" ist ohne Zusatz-Freigabe nur der Weg auf „Mahnung" erlaubt, jeder andere Rückweg braucht eine ausdrückliche Storno-Freigabe.
- Auftrag erscheint als „fertig", obwohl die Endkontrolle nicht durchlaufen wurde → gilt offiziell nur über das Kontroll-Gate; ein direkter Statuswechsel daran vorbei ist gesperrt und wird automatisch dorthin umgeleitet.
- Zugesagtes Angebot bleibt trotzdem als offen in Liste oder Tagesboard sichtbar → prüfen, ob die Fakturierung den Status tatsächlich auf „Abgerechnet" gesetzt hat; ein stiller Fehlschlag blieb hier früher unbemerkt.
Enthält
Gelesen von
- Konsistenz-Prüfung (Cron) Teilweise
Erzeugt von
Gehört zu
Nutzt
- Mechaniker-Tablet Live
- Kundenportal Live
Fachlich davor
Genutzt von
- Prüft der Statuswechsel selbst archivierte (gevaultete) Aufträge, oder greift die Sichtbarkeitssperre nur in den Leselisten? In der gelesenen Übergangsfunktion gibt es keinen Treffer auf vaulted.
- Löst ein Wechsel auf „fertig" oder „abgerechnet" automatisch eine Kundenbenachrichtigung aus? Die gelesene Funktion selbst verschickt nur einen Verlaufseintrag, keine Mail oder Push-Nachricht.
- lib/db/jobs.ts
| zustaende | offen, gebucht, in_bearbeitung, angebot, kundenfreigabe (Kunde muss KVA freigeben), kontrolle (Mechaniker fertig, Buero prueft), probefahrt (Endkontroll-Probefahrt), fertig (freigegeben, abrechenbar), unvollstaendig (fehlende Pflicht-Doku), mahnung, abgerechnet, ueberzogen, problem, storno; zusaetzlich 'abgesagt' ausserhalb der offiziellen Liste, aber real in Daten/Filtern |
|---|---|
| regel | ERLAUBTE_UEBERGAENGE (lib/db/jobs.ts:3358) definiert je Ausgangsstatus die erlaubten Zielstatus; ein nicht gelisteter Uebergang wirft einen Fehler |
| besonderheit | Aus 'kundenfreigabe' darf inzwischen auch direkt fakturiert werden (Owner-Entscheidung 2026-08-14) — fehlte das, blieb der Auftrag faelschlich in Liste/Tagesboard haengen, obwohl schon abgerechnet |
| zeitplan | kein Cron — wirkt sofort bei jedem versuchten Statuswechsel, ausgeloest von Buero, Kunde, Werkstatt oder anderen Automatisierungen |
| ausloeser | Buero/Chef im Admin (Kalender-Statusmenue, Auftragsdetail, Kontroll-Gate), Kunde per Freigabe-Link im Kundenportal (Kundenfreigabe), die Fertigmeldung am Mechaniker-Tablet, Rechnungslegung sowie automatische Erkennungen wie die Ueberzogen-Erkennung |
| benachrichtigt | niemanden direkt per Mail oder Push — jeder tatsaechliche Wechsel landet im Aktivitaets-Verlauf des Auftrags |
| beruehrt | jeder Statuswechsel eines Auftrags; beim Erreichen eines Endzustands werden offene Sicherheits-Pruefungen automatisch abgebrochen, beim Wechsel auf 'fertig' Kilometerstand und Service-Erinnerung gesetzt und Lagerverbrauch gebucht, beim Wechsel auf 'abgerechnet' die Rechnungsnummer vergeben |
| vault_filter | unklar — die gelesene Uebergangsfunktion selbst prueft nicht auf vaulted, das koennte ausschliesslich Sache der Leselisten sein |
| nein |
Beleg: lib/db/jobs.ts:31-46 (JobStatus-Union) und :3358 (ERLAUBTE_UEBERGAENGE-Tabelle) — aktueller Produktionscode
Tiefer fragen
Kontext aus dem KFZ-Bozo-Handbuch
Knoten: data-status-maschine-auftrag (Automation · Werkstatt-Ablauf: Termin bis Übergabe · live · geprüft Sat Sep 05 2026 02:00:00 GMT+0200 (Mitteleuropäische Sommerzeit) @ 0f0406a1)
Kurz: Jeder Auftrag durchläuft feste Stationen: Angefragt/Gebucht -> In Bearbeitung -> ggf. Kostenvoranschlag beim Kunden zur Freigabe -> Kontrolle durch das Büro -> ggf. Probefahrt -> Fertig geprüft -> Abgerechnet. Dazwischen kann ein Auftrag storniert, als unvollständig markiert oder überzogen (länger als geplant) werden. Nicht jeder Wechsel ist erlaubt — es gibt eine feste Übergangs-Tabelle, damit ein Auftrag z.B. nicht direkt von 'Angefragt' auf 'Abgerechnet' springen kann.
Lies zuerst (Lesebereich, nicht der ganze Baum):
lib/db/jobs.ts
Hängt zusammen mit:
data-auftrag (lib/db/jobs.ts) · data-kunde-fahrzeug (lib/db/schema.ts) · auto-konsistenz-check (app/api/cron/konsistenz-check/route.ts) · auto-overrun-detector (app/api/cron/overrun-detector/route.ts) · auto-today-flip (app/api/cron/today-flip/route.ts) · data-auftrag (lib/db/jobs.ts) · app-tablet (app/mechaniker/layout.tsx) · app-kundenportal (app/angebot/[token]/page.tsx)
Offene Fragen der Seite:
Prüft der Statuswechsel selbst archivierte (gevaultete) Aufträge, oder greift die Sichtbarkeitssperre nur in den Leselisten? In der gelesenen Übergangsfunktion gibt es keinen Treffer auf vaulted.
Löst ein Wechsel auf „fertig" oder „abgerechnet" automatisch eine Kundenbenachrichtigung aus? Die gelesene Funktion selbst verschickt nur einen Verlaufseintrag, keine Mail oder Push-Nachricht.
Hausregel 2: Vault-Daten sind für diese Session unsichtbar; Quellpfade auf Vault-Code sind keine Freigabe.
Frage: {{DEINE FRAGE}}
Antworte nur mit Belegen: nenne Datei und Zeile für jede Aussage.
Wenn die Quellen die Frage nicht beantworten, sag das und nenne, was du zusätzlich lesen müsstest.
Weicht die Seite vom Code ab, schlage den Seiten-Patch vor (wiki/seiten/werkstatt-ablauf/data-status-maschine-auftrag.md).