/// Vordefinierte Reason-Listen pro Action-Typ. /// /// Bewusst hier zentral statt jede UI-Stelle ihren eigenen Strings /// definieren zu lassen — Konsistenz für den Fahrer und einfache /// nachträgliche Anpassung (eine Datei, ein PR). /// /// Jede Liste enthält die fachlich häufigsten Gründe. „Anderer Grund" /// erscheint im Picker zusätzlich als Freitext-Fallback und ist nicht /// Teil der Konstanten — der Picker fügt ihn selbst an. class ReasonCatalog { const ReasonCatalog._(); /// Gründe für `POST /deliveries/{id}/cancel`. Endgültig, deshalb /// bewusst Gründe, die einen erneuten Liefer-Versuch sinnlos machen. static const List deliveryCancel = [ 'Adresse falsch', 'Kunde unbekannt', 'Kunde nicht erreichbar', 'Termin endgültig verpasst', 'Ware nicht verfügbar', ]; /// Gründe für `POST /deliveries/{id}/hold`. Reversibel — typischerweise /// „kommt später nochmal" oder „muss intern geklärt werden". static const List deliveryHold = [ 'Kunde nicht zu Hause', 'Termin verschoben', 'Wartet auf Rückruf', ]; /// Gründe für `POST /scans action=remove`. Item wird aus der Lieferung /// genommen, kommt nicht mit. static const List itemRemove = [ 'Artikel defekt', 'Artikel nicht vorhanden', 'Falscher Artikel im Lager', 'Falsch gescannt', ]; /// Gründe für `POST /scans action=hold`. Item kurzfristig zurückgestellt. static const List itemHold = [ 'Lager findet Ware nicht', 'Ware wird geprüft', 'Zusatzklärung nötig', ]; }