Integrate Nennungen and Masterdata features: expand ApiRoutes, add repositories and ViewModels for Nennungen and Masterdata. Update navigation and UI components to include Meisterschaften and Cups tabs.

This commit is contained in:
2026-04-11 21:58:46 +02:00
parent edfbbb805f
commit 15b3f17d1d
21 changed files with 806 additions and 84 deletions
@@ -0,0 +1,43 @@
# Curator Log: Stammdaten-Integration & Nennungs-Feature
**Datum:** 11. April 2026
**Agent:** 🧹 [Curator]
**Status:** ✅ STAMMDATEN-INFRASTRUKTUR IMPLEMENTIERT
## Zusammenfassung
In dieser Session wurde die Grundlage für die Nutzung von Stammdaten (Reiter, Pferde, Funktionäre, Vereine) im Turnier-Kontext geschaffen. Der Fokus lag auf der Implementierung der Nennungs-Logik und der Anbindung an die Masterdata-Backend-Services.
## Durchgeführte Arbeiten
### 1. Daten-Infrastruktur (turnier-feature)
- **Domänenmodelle:** Lokale Definition von `Reiter`, `Pferd`, `Funktionaer` und `Verein` im `turnier-feature`, um die Entkopplung während der Modul-Entwicklung zu gewährleisten.
- **DTOs:** Erstellung von `NennungDto` (Summary/Detail/Request) für die Kommunikation mit dem `entries-service`.
- **Repositories:**
- `NennungRepository`: Verwaltung von Turniernennungen (List, Create, Status-Update).
- `MasterdataRepository`: Zentrale Suche für Reiter, Pferde und Funktionäre sowie Vereins-Abruf.
- **DI:** Registrierung der neuen Services im `turnierFeatureModule` (Koin).
### 2. ViewModel & Logik
- **NennungViewModel:** Zentrale Steuerung des Nennungs-Tabs. Implementiert reaktive Suche für Reiter/Pferde und das Einreichen von Nennungen.
- **API-Routing:** Erweiterung der `ApiRoutes` um Masterdata-Endpunkte (`/api/masterdata/...`).
### 3. UI-Integration (Desktop)
- **Nennungen-Tab:**
- Umstellung von statischen Mocks auf das `NennungViewModel`.
- Live-Suche für Reiter und Pferde integriert.
- Anzeige echter Nennungen mit Status-Badges und ID-Kürzeln.
- **Organisation-Tab:** Anbindung an das ViewModel vorbereitet (Funktionärs-Kontext).
- **Stammdaten-Tab:** Vorbereitung für die Vereins-Suche/Zuordnung.
- **Previews:** Aktualisierung der `ScreenPreviews.kt` mit Mocks für die neuen Repositories, um die UI-Entwickelbarkeit zu erhalten.
## Technische Details
- **Build:** Erfolgreiche Kompilation des Moduls `:frontend:shells:meldestelle-desktop`.
- **Modul-Strategie:** Vermeidung von direkten Abhängigkeiten zu unfertigen UI-Features durch lokale Domänen-Repräsentationen im Feature-Context.
## Nächste Schritte
- Implementierung der detaillierten Nennungs-Dialoge (Kombination Reiter + Pferd + Bewerb).
- Persistenz der Funktionärs-Zuordnung im Backend.
- Verknüpfung der Vereins-Stammdaten mit der Turnier-Organisation.
---
*Gez. Curator*
@@ -0,0 +1,34 @@
# Curator Log: Start Phase 10 & Turnier-Hardening
**Datum:** 11. April 2026
**Agent:** 🧹 [Curator]
**Status:** 🔵 PHASE 10 GESTARTET
## Zusammenfassung
Diese Session markiert den Übergang von Phase 9 (Zeitplan) zu Phase 10 (Series-Context). Der Fokus lag auf dem "Hardening" der bestehenden Turnier-Tabs und der Grundsteinlegung für Cups und Meisterschaften im Frontend.
## Durchgeführte Arbeiten
### 1. Tab-Funktionalisierung (Start- & Ergebnislisten)
- **Daten-Anbindung:** Die Tabs `STARTLISTEN` und `ERGEBNISLISTEN` wurden vollständig an das `BewerbViewModel` angebunden.
- **Bewerbs-Auswahl:** Die Tabs nutzen nun die echten Bewerbe des Turniers (inkl. Name und Tag) anstelle von Platzhaltern.
- **Startlisten-UI:** Erste Implementierung der Starter-Liste (LazyColumn) zur Visualisierung generierter Startlisten.
- **ViewModel-Fix:** `generateStartliste()` wurde public gemacht, um die interaktive Generierung aus der UI zu ermöglichen.
### 2. Series-Context Vorbereitung (Phase 10)
- **Neuer Screen:** `SeriesScreen.kt` implementiert (Placeholder-UI für Cups/Meisterschaften).
- **Navigation:** Globale Breadcrumb-Navigation und Routing für `AppScreen.Meisterschaften` und `AppScreen.Cups` hinzugefügt.
- **Cockpit-Integration:** Der `AdminUebersichtScreen` (Zentrale) wurde um KPI-Kacheln erweitert, die als Direkt-Links zu den neuen Series-Bereichen dienen.
### 3. Stabilität & Qualität
- **Build-Check:** Erfolgreiche Kompilation des Moduls `:frontend:shells:meldestelle-desktop`.
- **Changelog:** Dokumentation der Änderungen im globalen Changelog.
## Nächste Schritte
Der Fokus verbleibt in **Phase 10: Series-Context**.
- Analyse und Implementierung der Reglement-Strukturen (Punktetabellen, Wertungsmodi).
- Integration des `series-context` in das Backend.
- Verknüpfung von Bewerb-Ergebnissen mit Cup-Punkteständen.
---
*Gez. Curator*