feat(management-feature): add centralized administration screens and back-navigation support

- Introduced comprehensive management screens for horses, riders, clubs, and officials.
- Integrated reusable `ManagementTableScreen` component for standardized layouts and operations.
- Added back-navigation support in `DesktopNavigationPort` with a stack-based implementation.
- Refined `DesktopMainLayout` with enhanced routing and dynamic placeholders for in-development screens.
- Updated roadmap to reflect completion of Phase 7: "Zentrale Verwaltung".

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
2026-04-01 17:26:44 +02:00
parent 09debdef86
commit 6fc6c8fc79
17 changed files with 1019 additions and 121 deletions
@@ -0,0 +1,51 @@
# 🧹 Curator Session Log (2026-04-01 - Abschluss Vormittag)
## Zusammenfassung
Die heutige Vormittags-Sitzung markiert den Übergang von einer "Sammlung von Screens" zu einer integrierten **Zentralen
Verwaltung**. Wir haben das "Chaos" im Frontend durch eine klare Hierarchie und einen intelligenten Navigations-Flow (
Back-Stack) gezähmt.
## Kern-Erkenntnisse & Architektur-Updates
### 1. Die "Zentrale" als Cockpit
- Die `Veranstaltung-Verwaltung` ist nun der primäre Einstiegspunkt nach dem Onboarding.
- Alle administrativen Domänen (Pferde, Reiter, Vereine, Funktionäre, Veranstalter) sind über diese Zentrale erreichbar.
- Dies entspricht dem Wunsch des Users nach einer "Haupt-Verwaltungs-Zentrale" (`verwaltung_01-04-26.png`).
### 2. ZNS-Datenfluss: Globaler Pool -> Lokale Synchronisation
- **Konzept:** Stammdaten (ZNS) werden global in die Desktop-App geladen (ZNS-Importer).
- **Vorteil:** Turniere müssen Daten nicht mehr isoliert halten, sondern synchronisieren sich selektiv mit dem globalen
Pool über den "Aktualisieren"-Button.
- Die Domänen-Modelle in `Stores.kt` wurden vollständig an die Backend-Modelle (`DomPferd`, `DomReiter`, etc.)
angepasst.
### 3. Navigations-Logik (Back-Stack)
- Implementierung von `navigateBack()` im `DesktopNavigationPort`.
- Der "Zurück"-Button merkt sich nun den Pfad (z.B. Veranstaltung-Profil -> Veranstalter-Profil -> Zurück ->
Veranstaltung-Profil).
### 4. Terminologie-Bereinigung
- UI-weit wurde "Event" durch **"Veranstaltung"** ersetzt (ÖTO-konform).
- Technische IDs behalten den Namen `eventId` zur Stabilität.
## Durchgeführte Code-Änderungen (Zusammenfassung)
- `AppScreen.kt`: Neue Routen für Verwaltungen und Profile.
- `ManagementScreens.kt`: Generische Tabellen-Komponente mit Suche und CRUD-Aktionen.
- `Stores.kt`: Erweiterte Datenklassen und realistische Testdaten.
- `DesktopMainLayout.kt`: Integration des Back-Stacks und der neuen Routen.
- `VeranstaltungScreens.kt`: Umbenennung in `VeranstaltungProfilScreen` und Header-Updates.
## Status der Dokumentation
- [x] **Screen-Flow:** `docs/06_Frontend/screen-flow_1-04-26.md` aktualisiert.
- [x] **Journal:** Einzelergebnisse in separaten Logs dokumentiert.
- [x] **Roadmap:** `MASTER_ROADMAP.md` auf Phase 8 (Bewerbe-Management) aktualisiert.
---
*Dokumentiert durch den Curator am 01.04.2026 um 17:40 Uhr.*
@@ -0,0 +1,41 @@
# Session Log: 01. April 2026 - Vormittag (Zentrale & ZNS-Logik)
## 🏗️ [Lead Architect] | Status & Entscheidungen
### 1. Die "Zentrale" (Veranstaltung-Verwaltung)
Wir haben die **Veranstaltung-Verwaltung** als neue strategische Zentrale etabliert. Von hier aus sind alle
administrativen Bereiche (Pferde, Reiter, Vereine, Funktionäre, Veranstalter) erreichbar. Dies löst das "Chaos" im
Frontend durch eine klare Hierarchie.
### 2. ZNS-Datenfluss: Global -> Lokal
Ein entscheidendes Architektur-Konzept wurde heute Vormittag gefestigt:
* **Globaler Pool:** ZNS-Stammdaten (Pferde, Personen, Vereine) werden über den ZNS-Importer in die globale Datenbank
der Desktop-App geladen.
* **Lokale Synchronisation:** In den Turnier-Details (z.B. `TurnierBewerbeTab`) dient der Button **"Aktualisieren"**
dazu, die Daten für dieses spezifische Turnier mit dem globalen Pool abzugleichen.
* **Vorteil:** Daten müssen nicht pro Turnier neu importiert werden. Ein globaler Stand (z.B. nach einem ZNS-Update)
kann selektiv in die aktiven Turniere "gepusht" werden.
### 3. Terminologie-Bereinigung
Alle UI-Texte wurden auf **"Veranstaltung"** umgestellt, um konform mit der ÖTO (§ 2 Abs. 1) zu sein. "Event" bleibt ein
technischer Begriff im Code.
## 👷 [Backend/Frontend] | Durchgeführte Änderungen
* **App-Routing:** `AppScreen.kt` um neue Verwaltungs-Routen erweitert.
* **Navigation:** `DesktopMainLayout.kt` implementiert nun den Flow von der Zentrale in die Fachbereiche.
* **Importer-Integration:** Der ZNS-Importer ist nun direkt aus der Zentrale erreichbar.
* **Bugfix:** Kompilierfehler in der Navigation (fehlender `onBack` Parameter) behoben.
## 🧐 [QA Specialist] | Offene Punkte für den Nachmittag
* [ ] **Bewerbe-Import:** Implementierung der konkreten Merge-Logik (ZNS-XML -> `BewerbUiModel`).
* [ ] **Startlisten-Sortierung:** Validierung der ÖTO-konformen Auslosung.
* [ ] **Profil-Screens:** Die Placeholder für Pferde-, Reiter- etc. Profile müssen mit Leben gefüllt werden.
---
*Dokumentiert durch den Curator am 01.04.2026*