feat(event-feature): enhance Veranstaltungs- & Turnier-Workflow
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Waiting to run
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Waiting to run
- Extended `Veranstaltung` domain model with new fields: `untertitel`, `logoUrl`, and `sponsoren`. - Refined navigation in `DesktopMainLayout.kt` to check turnier context and improve routing. - Overhauled `TurnierStammdatenTab` with enhanced interactivity: dynamic chip-based selectors for Spartens, Klassen, and Sponsors, as well as date pickers and ZNS import handling. - Implemented validations for date ranges and required fields. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
@@ -1,3 +1,108 @@
|
||||
## Nachtrag 31.03.2026 17:35
|
||||
|
||||
- **Validierung & Konsistenz im Turnier-Workflow:**
|
||||
- **Veranstaltung anlegen:** In `VeranstaltungKonfigV2` wurde eine Sperre für Vergangenheits-Daten implementiert. Das
|
||||
Startdatum darf nicht vor dem aktuellen Tag liegen. Entsprechende UI-Fehlermeldungen und eine Button-Deaktivierung
|
||||
wurden hinzugefügt.
|
||||
- **Turnier-Stammdaten (Bearbeiten):** Der Tab "STAMMDATEN" im `TurnierDetailScreen` wurde vollständig überarbeitet
|
||||
und spiegelt nun die Logik des `TurnierWizardV2` (Option 1) wider.
|
||||
- **Validierung:** 5-stellige Turnier-Nr. muss explizit bestätigt werden.
|
||||
- **ZNS-Import:** Statusanzeige (geladen/nicht geladen) und interaktive Import-Buttons (Internet/USB) wurden
|
||||
integriert.
|
||||
- **Regelwerk:** Dynamische Generierung von Kategorien (inkl. Pony-Kategorien) basierend auf Sparten- und
|
||||
Klassenauswahl via Filter-Chips.
|
||||
- **Datum & Ort:** Integration von Material 3 DatePickern. Hinweise auf die erforderliche Übereinstimmung mit dem
|
||||
Veranstaltungszeitraum und -ort wurden hinzugefügt.
|
||||
- **Branding:** Unterstützung für Titel, Sub-Titel und dynamische Sponsoren-Chips direkt im Stammdaten-Tab.
|
||||
- **UI/UX:** Einsatz von `FlowRow`, `InputChip` und `SectionCard` für ein aufgeräumtes, konsistentes Erscheinungsbild
|
||||
über alle Turnier-Screens hinweg.
|
||||
|
||||
## Nachtrag 31.03.2026 17:15
|
||||
|
||||
- **`TurnierWizardV2` - Regelwerks-Kategorien & Pony-Logik:**
|
||||
- **Refactoring Kategorien:** Turniere unterstützen nun mehrere gleichberechtigte Kategorien (z.B. "CDN-C NEU" und "
|
||||
CDNP-C NEU") gleichzeitig. Dies ist entscheidend für die korrekte Anwendung der Regelwerke (z.B. Nationales
|
||||
Dressur-Turnier vs. Nationales Dressur-Turnier Pony).
|
||||
- **Integration Pony-Status:** Der separate Switch für "Pony-Bewerbe" wurde entfernt. Stattdessen werden
|
||||
Pony-Kategorien (Suffix "P") nun direkt als auswählbare Optionen in den Kategorien-Vorschlägen angeboten, sofern
|
||||
eine Sparte und Klasse gewählt wurde.
|
||||
- **Datenmodell `TurnierV2`:** Das Feld `isPony` wurde entfernt, da der Status nun implizit über die gewählten
|
||||
Kategorien definiert ist.
|
||||
- **Automatisierung:** Bei Eingabe der Turnier-Nummern für Neumarkt (26128, 26129) werden nun automatisch sowohl die
|
||||
Standard- als auch die Pony-Kategorie vorselektiert.
|
||||
- **Seed-Daten:** Die Testdaten in `Stores.kt` wurden aktualisiert, um Turniere mit mehreren Kategorien (CDN + CDNP)
|
||||
abzubilden.
|
||||
|
||||
## Nachtrag 31.03.2026 17:10
|
||||
|
||||
- **`TurnierWizardV2` - Klassen & Pony-Bewerbe:**
|
||||
- **Klassen-Auswahl:** Umstellung auf ein modernes Chip-basiertes Layout (Grid). Die Klassen (C-NEU bis S) werden nun
|
||||
als `FilterChip` dargestellt, was die Mehrfachauswahl intuitiver macht.
|
||||
- **Pony-Bewerbe:** Integration einer neuen "Pony-Bewerbe" Option (Switch) in Schritt 2. Diese Option steuert die
|
||||
sportfachliche Kennzeichnung des Turniers.
|
||||
- **Kategorien-Logik (CDNP/CSNP):** Die automatische Generierung der Kategorien-Vorschläge berücksichtigt nun den
|
||||
Pony-Status. Bei aktiviertem Switch wird automatisch das Suffix "P" (z.B. CDNP statt CDN) verwendet.
|
||||
- **UI/UX Refinement:**
|
||||
- Einsatz von `InputChip` für die Kategorien-Auswahl mit Checkmark-Indikator.
|
||||
- Gruppierung der Optionen (Sparten, Pony, Klassen) in einer übersichtlichen Spalten/Zeilen-Struktur mit
|
||||
verbesserten Abständen.
|
||||
- Manuelle Korrekturmöglichkeit der Kategorie im `OutlinedTextField` mit `leadingIcon`.
|
||||
- **Datenmodell & Seed:** Erweiterung von `TurnierV2` um das Feld `isPony` und Aktualisierung der Seed-Daten für "
|
||||
Neumarkt 2026" auf den neuen Pony-Status.
|
||||
|
||||
## Nachtrag 31.03.2026 16:45
|
||||
|
||||
- **`TurnierWizardV2` - ZNS-Import & Regelwerks-Logik:**
|
||||
- **Schritt 1 (Basics):** Überarbeitung der Turnier-Nr. Erfassung mit explizitem Bestätigungs-Button und Validierung (
|
||||
5 Stellen).
|
||||
- **ZNS-Import:** Implementierung von zwei Import-Wegen (Internet / USB). Ein interaktiver Fortschritts-Dialog
|
||||
simuliert die Datenverarbeitung und setzt den `znsDataLoaded`-Status.
|
||||
- **ZNS-Statusanzeige:** Ein markantes Status-Panel (Grün/Rot) zeigt an, ob die Pflicht-Stammdaten geladen wurden.
|
||||
Der "Weiter"-Button ist erst nach erfolgreichem Import aktiv.
|
||||
- **Schritt 2 (Sparten & Klassen):** Erweiterung der Klassen-Auswahl (C-NEU bis S) in einem übersichtlichen
|
||||
Spalten-Layout.
|
||||
- **Intelligente Kategorien-Vorschläge:** Implementierung einer Logik, die basierend auf den gewählten Sparten und
|
||||
Klassen passende Turnier-Kategorien (z.B. CSN-C-NEU, CDN-A) als Filter-Chips vorschlägt.
|
||||
- **Modell-Update:** `TurnierV2` um `znsDataLoaded` erweitert und die Sprach-Auswahl gemäß Benutzerwunsch entfernt.
|
||||
|
||||
## Nachtrag 31.03.2026 16:30
|
||||
|
||||
- **`TurnierWizardV2` - "Meta"-Daten & Stammdaten:**
|
||||
- Der Wizard zur Neuanlage eines Turniers wurde gemäß den Benutzervorgaben (Screenshots `Turnier-Stammdaten_01/02`)
|
||||
umfassend erweitert und in drei Phasen unterteilt.
|
||||
- **Schritt 1: Basiskonfiguration:** Erfassung der 5-stelligen Turnier-Nr., des Typs (ÖTO National / FEI
|
||||
International), Sprache (Deutsch/Englisch) und Integration von Platzhalter-Buttons für den ZNS-Daten-Import (
|
||||
Internet/USB) inkl. Informations-Dialog.
|
||||
- **Schritt 2: Sparten & Klassen:** Auswahl der Disziplinen (Dressur, Springen) und Klassen (C, B, A). Die Kategorien
|
||||
werden basierend auf der Auswahl freigeschaltet und bei bekannten Nummern (z.B. 26128) automatisch vorbelegt.
|
||||
- **Schritt 3: Branding & Sponsoren:** Erfassung von Turnier-Titel, Sub-Titel und einer dynamisch erweiterbaren
|
||||
Sponsorenliste (analog zum Veranstaltungs-Wizard).
|
||||
- **Datenmodell `TurnierV2`:** Erweiterung um alle neuen Felder (`typ`, `sprache`, `sparten`, `klassen`, `titel`,
|
||||
`subTitel`, `sponsoren`) unter Nutzung von `SnapshotStateList` für reaktive UI-Updates.
|
||||
- **UI/UX Polish:** Nutzung von `LinearProgressIndicator`, `RadioButton`-Gruppen, `Checkbox`-Listen und
|
||||
`verticalScroll` für eine flüssige Bedienung auf kleineren Bildschirmen.
|
||||
|
||||
## Nachtrag 31.03.2026 16:15
|
||||
|
||||
- **Event-Cockpit-Optimierung:**
|
||||
- **`VeranstaltungUebersichtV2`:** Umfassendes UI-Update für das Veranstaltungs-Cockpit.
|
||||
- **KPI-Dashboard:** Integration von vier KPI-Karten (Turniere, Nennungen, Reiter, Pferde) für eine schnelle Übersicht
|
||||
des Event-Status.
|
||||
- **Turnier-Liste:** Umstellung auf ein modernes Card-Layout mit `OutlinedCard`, `SuggestionChip` für Kategorien und
|
||||
verbesserten Action-Buttons (Öffnen/Löschen).
|
||||
- **Turnier-Wizard:** Die Validierung der 5-stelligen Turnier-Nummer wurde durch `supportingText` im Textfeld
|
||||
verbessert.
|
||||
|
||||
- **Navigation & Routing:**
|
||||
- **`DesktopMainLayout.kt`:** Die Navigation für `AppScreen.TurnierDetail` und `AppScreen.TurnierNeu` wurde
|
||||
vollständig auf den `v2`-Store und die neuen Screens (`VeranstaltungUebersichtV2`, `TurnierWizardV2`) umgestellt.
|
||||
- **Back-Navigation:** "Zurück"-Buttons in den Turnier-Screens führen nun logisch zurück zur
|
||||
`VeranstaltungUebersichtV2` anstatt zu veralteten Screens.
|
||||
|
||||
- **Demonstrations-Daten:**
|
||||
- Für das Beispiel-Event "Neumarkt 2026" (ID 100) wurden realistische Platzhalter-Werte in die KPIs integriert (z.B.
|
||||
248 Nennungen), um das finale Look-and-Feel zu demonstrieren.
|
||||
|
||||
## Nachtrag 31.03.2026 15:45
|
||||
|
||||
- **Fehlerbehebung Desktop-Shell Build:**
|
||||
|
||||
Reference in New Issue
Block a user