Update README to enhance order process clarity and system architecture details

This commit is contained in:
Fabrizio Lange 2026-09-15 09:22:12 +02:00
parent ed604ede22
commit 24c7d39089

164
README.md
View File

@ -12,90 +12,98 @@ Das System soll handschriftliche Notizzettel ersetzen, Übertragungsfehler reduz
| Rolle | Aufgabe | Berechtigungen | | Rolle | Aufgabe | Berechtigungen |
| ---------------------------- | ---------------------------------------------- | ------------------------------------------------------------------------------- | | ---------------------------- | ---------------------------------------------- | ------------------------------------------------------------------------------- |
| Thekenpersonal | Nimmt Bestellungen entgegen und pflegt sie ein | Bestellung anlegen, bearbeiten, Status ändern | | Thekenpersonal | Nimmt Bestellungen entgegen und pflegt sie ein | Bestellung anlegen, bearbeiten, Status ändern |
| Verwaltung / Admin | Verwaltet Produkte, Mitarbeitende und Reports | Alle Rechte, Exporte, Benutzer- und Produktverwaltung | | Verwaltung / Admin | Verwaltet Produkte, Mitarbeitende und Reports | Alle Rechte, Exporte, Benutzer- und Produktverwaltung
| Küche / Produktion, optional | Bereitet die Bestellungen vor | Bestellübersicht sehen, Status auf „fertig“ setzen |
## Ablauf der Bestellung mit dem Bestellsystem: ## Ablauf der Bestellung mit dem Bestellsystem:
Kunde kommt an die Theke / ruft an Kunde bestellt an der Theke oder telefonisch
│ │
▼ ▼
Mitarbeiter nimmt Bestellung entgegen Verkäufer meldet sich im Bestellsystem an
│ │
▼ ▼
Mitarbeiter öffnet „Neue Bestellung“ Verkäufer öffnet „Neue Vorbestellung“
│ │
▼ ▼
Kundendaten und Abholzeit erfassen Name, Telefonnummer, Abholdatum und Abholzeit erfassen
│ │
▼ ▼
Produkte und Mengen auswählen Backwaren, Mengen und optionale Hinweise auswählen
│ │
▼ ▼
Zahlungsstatus auswählen Zahlungsart bzw. Zahlungsstatus auswählen
│ │
▼ ▼
Bestellung speichern Bestellung speichern
│ │
▼ ▼
Bestellung erscheint sofort in der Übersicht Bestellung erscheint nach Abholzeit sortiert
│ in der Verkaufsübersicht
▼ │
Küche / Personal bereitet Bestellung vor ▼
│ Bei Abholung: Status auf „Abgeholt“ setzen
▼
Status: Neu → In Bearbeitung → Fertig → Abgeholt
## Angepasste Systemarchitektur: ## Angepasste Systemarchitektur:
┌─────────────────────────────────┐ ┌──────────────────────────────────────────────────┐
│ Personal an der Theke │ │ Verkauf │
│ Tablet │ │ PC / Tablet an der Theke │
└───────────────┬─────────────────┘ │ │
│ HTTPS / internes Netzwerk │ - Kundenbestellung annehmen │
▼ │ - Kundendaten eintragen │
┌─────────────────────────────────-┐ │ - Backwaren auswählen │
│ Interne Webanwendung │ │ - Abholzeit festlegen │
│ │ │ - Zahlung erfassen │
│ - Login für Mitarbeitende │ │ - Bestellung bei Abholung abschließen │
│ - Neue Bestellung erfassen │ └─────────────────────┬────────────────────────────┘
│ - Bestellübersicht │ │ HTTPS / internes Netzwerk
│ - Produktverwaltung │ ▼
│ - Status- und Zahlungsverwaltung │ ┌──────────────────────────────────────────────────┐
└───────────────┬─────────────────-┘ │ Webanwendung: Bestellsystem │
│ │ │
▼ │ - Login │
┌───────────────────────────────-──┐ │ - Neue Vorbestellung │
│ PHP-Backend / Laravel │ │ - Bestellübersicht │
│ │ │ - Such- und Filterfunktion │
│ - Validierung │ │ - Statusverwaltung │
│ - Bestelllogik │ │ - Rollen- und Rechteprüfung │
│ - Rechteverwaltung │ └─────────────────────┬────────────────────────────┘
│ - Export-Service │ │
│ - E-Mail-Service │ ▼
└───────────────┬─────────────-────┘ ┌──────────────────────────────────────────────────┐
│ SQL │ PHP-Backend / Laravel │
▼ │ │
┌──────────────────────────────-───┐ │ - Validierung der Eingaben │
│ MySQL / MariaDB │ │ - Speichern und Ändern von Bestellungen │
│ │ │ - Berechnung von Summen │
│ - Mitarbeitende │ │ - Erstellung von PDF-/Excel-Reports │
│ - Kunden │ │ - Versand automatischer E-Mails │
│ - Produkte │ └─────────────────────┬────────────────────────────┘
│ - Bestellungen │ │ SQL
│ - Bestellpositionen │ ▼
│ - Statusverlauf │ ┌──────────────────────────────────────────────────┐
└───────────────┬──────────────-───┘ │ Datenbank: MySQL oder MariaDB │
│ │ │
├───────────────────────────┐ │ - Mitarbeitende │
▼ ▼ │ - Kunden │
┌────────────────────────────┐ ┌──────────────────────────────┐ │ - Produkte │
│ Küchen-/Produktionsansicht │ │ Cronjob / Tagesreport │ │ - Bestellungen │
│ │ │ │ │ - Bestellpositionen │
│ - Heute / morgen │ │ - Täglich z. B. 18:00 Uhr │ │ - Statusänderungen │
│ - Nach Uhrzeit sortiert │ │ - Bestellungen + 2 Tage │ └──────────────┬──────────────────────┬────────────┘
│ - Status aktualisieren │ │ - PDF-/Excel-Export │ │ │
└────────────────────────────┘ │ - Versand an Verwaltung │ ▼ ▼
└──────────────────────────────┘ ┌─────────────────────────┐ ┌──────────────────────────────┐
│ Verwaltung │ │ Automatischer Tagesreport │
│ │ │ │
│ - Produkte verwalten │ │ - Täglich zu fester Uhrzeit │
│ - Mitarbeitende pflegen │ │ - Bestellungen + 2 Tage │
│ - Berichte exportieren │ │ - PDF / Excel erzeugen │
│ - Statistiken ansehen │ │ - E-Mail an Verwaltung │
└─────────────────────────┘ └──────────────────────────────┘
## Benutzeroberfläche für den Verkauf
Die Ansicht für den Verkauf sollte schnell bedienbar sein. Mitarbeitende an der Theke brauchen große Schaltflächen, wenig Text und eine klare Übersicht.