Logistik verwalten¶
Der Shop verfügt über ein integriertes Logistik-System für die Planung und Verwaltung von Lieferterminen.
Ort¶
Dashboard → Logistik
Komponenten-Übersicht¶
Route ←── TimeSlot ←── Rule ←── Schedule ←── ShippingMethod
│ │
│ ├── Kapazität (order_quota)
│ ├── Status (blocked / bookable / plannable)
│ └── Bestellungen
│
└── Name, Reihenfolge, Fahrzeug
| Komponente | Beschreibung |
|---|---|
| Zeitfenster (TimeSlots) | Konkrete Liefertermine mit Datum und Uhrzeit |
| Pläne (Schedules) | Wiederkehrende Zeitpläne mit Regeln |
| Regeln (Rules) | Wochentage, Uhrzeiten, Intervalle für die Generierung |
| Zonen (Zones) | Postleitzahl-Bereiche für regionale Zustellung |
| Routen (Routes) | Lieferrouten mit Reihenfolge und Kapazität |
Zeitfenster (TimeSlots)¶
Manuelles Zeitfenster anlegen¶
- Dashboard → Logistik → Zeitfenster
- Auf „Neues Zeitfenster“ klicken
- Ausfüllen:
| Feld | Beschreibung |
|---|---|
| Regel | Planungsregel, aus der der Termin stammt |
| Beginn / Ende | Datum und Uhrzeit der Lieferung |
| Route | Optionale Routenzuweisung |
| Gesperrt | Haken setzen, um Termin zu blockieren |
- Speichern
Automatische Generierung¶
Zeitfenster können aus Zeitplänen (Schedules) und Regeln automatisch generiert werden:
-
Zeitplan (Schedule) anlegen:
- Name, Beschreibung
- Gültigkeitszeitraum (von – bis)
- Vorlaufzeit (min_advance_days / min_advance_time)
- Annahmeschluss (cutoff_time)
-
Regel (Rule) definieren:
- Wochentage (Mehrfachauswahl: Mo, Di, Mi, …)
- Start- und Endzeit (z.B. 09:00–14:00)
- Intervall (z.B. alle 30 Minuten)
- Maximale Bestellungen pro Slot (order_quota)
-
Verknüpfung mit Versandmethode:
ScheduleShippingMethod: Welcher Zeitplan gilt für welche Versandmethode?- Aktivierungszeitraum (enabled_from – enabled_until)
Das System generiert dann automatisch Zeitfenster für den konfigurierten Zeitraum.
Virtuelle Zeitfenster¶
Wichtig
Der Checkout kann auch virtuelle Zeitfenster anzeigen, die nicht als
gespeicherte TimeSlot-Zeilen in der Datenbank existieren. Diese werden
live aus den Zeitplan-Regeln abgeleitet und haben is_from_db = False.
Sie sind kein Fehler, sondern ein bewusstes Feature der
Zeitfenster-Generierung.
Zeitfenster-Status¶
| Status | Bedeutung | Anzeige im Checkout |
|---|---|---|
blocked |
Gesperrt (Feiertag, Wartung) | Nein |
fully_booked |
Kapazität erschöpft | Nein |
bookable |
Gespeichert in DB, verfügbar | Ja |
plannable |
Virtuell, verfügbar | Ja |
Routen¶
Routen gruppieren Zeitfenster für die Tourenplanung:
- Dashboard → Logistik → Routen
- Neue Route anlegen:
| Feld | Beschreibung |
|---|---|
| Name | Interne Bezeichnung (z.B. „Route Nord“) |
| Nummer | Laufende Nummer |
| Fahrzeug | Fahrzeugtyp (optional) |
| Maximale Stopps | Kapazität der Tour |
- Zeitfenster können per Dropdown einer Route zugewiesen werden
Zonen & Postleitzahlen¶
Zonen ermöglichen die regionale Einschränkung von Liefergebieten:
- Zone anlegen (Name + Beschreibung)
- Postleitzahlen hinzufügen (einzelne PLZ oder Bereiche)
- Zone einem Zeitplan zuweisen
Ein Zeitplan gilt dann nur für die angegebenen Postleitzahlen. Im Checkout wird die passende Zone anhand der Lieferadresse ermittelt.
Sperrzeiten & Blocker¶
Zeitfenster können aus verschiedenen Gründen gesperrt werden:
| Methode | Beschreibung |
|---|---|
| Manuell | Im Zeitfenster den Haken „Gesperrt“ setzen |
| Blocker | Datumsbezogene Sperren (Feiertage, Betriebsferien) |
| Kapazität | Automatisch bei Erreichen der order_quota |
Blocker anlegen¶
- Dashboard → Logistik → Sperrzeiten
- Datum + Beschreibung eingeben
- Optional: Auf bestimmte Postleitzahl einschränken
Typischer Arbeitsablauf¶
Neue Lieferroute einrichten¶
- Route anlegen (Name, Fahrzeug)
- Zone definieren (PLZ-Bereich)
- Zeitplan (Schedule) mit Gültigkeit und Vorlaufzeit
- Regeln für Wochentage und Uhrzeiten
- ScheduleShippingMethod verknüpft Zeitplan mit Versandmethode
Liefertag vorbereiten¶
- Route auswählen
- Zeitfenster-Liste nach Datum filtern
- Maximale Stopps prüfen
- Ggf. Zeitfenster sperren oder Kapazität anpassen
- Route als PDF/Liste exportieren (falls implementiert)
Tipps & Tricks¶
- Kapazität = 0 bedeutet unbegrenzt (keine Buchungsgrenze)
- Vorlaufzeit verhindert Last-Minute-Buchungen (z.B. min. 1 Tag im Voraus)
- Annahmeschluss legt fest, bis wann am Vortag bestellt werden kann
- Änderungen an Regeln wirken sich nur auf neu generierte Zeitfenster aus, nicht auf bestehende