Integrate Stammdaten and Nennungen features: implement repositories, ViewModels, and full UI integration for Reiter, Pferde, Funktionäre, and Vereine. Expand ApiRoutes, enhance Nennung tab with search and real data, and update CHANGES.
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
This commit is contained in:
@@ -241,10 +241,12 @@ und über definierte Schnittstellen kommunizieren.
|
||||
* [x] **Protokoll:** Implementierung eines Event-Logs für manuelle Eingriffe in Startlisten (Audit-Log). ✓
|
||||
* [x] **Export:** Startlisten-Export für ZNS (XML-B-Satz). ✓
|
||||
|
||||
### PHASE 10: Series-Context & Erweiterungen 🔵 IN ARBEIT
|
||||
### PHASE 10: Series-Context & Stammdaten 🔵 IN ARBEIT
|
||||
|
||||
*Ziel: Cups, Serien und Meisterschaften mit konfigurierbaren Reglements.*
|
||||
*Ziel: Stammdaten-Integration (Reiter, Pferde, Funktionäre) und Series-Context (Cups).*
|
||||
|
||||
* [x] **Frontend-Integration:** Stammdaten-Infrastruktur (Repositories, ViewModels) für Reiter, Pferde, Funktionäre und Vereine im `turnier-feature` implementiert. ✓
|
||||
* [x] **Nennungs-Management:** Funktionalisierung des Nennungs-Tabs mit Echt-Datenanbindung und Suche. ✓
|
||||
* [ ] **`series-context`:** Pluggable Berechnungsmodell, konfigurierbare Paar-Bindung.
|
||||
* [ ] **Web-Portal:** Shared Module aus Desktop-App extrahieren → Web-Portal aufbauen.
|
||||
* [ ] **Mobile:** KMP-Sharing auf Android/iOS ausweiten.
|
||||
|
||||
@@ -1,43 +1,37 @@
|
||||
# Curator Log: Stammdaten-Integration & Nennungs-Feature
|
||||
# Curator Log: Stammdaten-Integration & Nennungs-Management
|
||||
|
||||
**Datum:** 11. April 2026
|
||||
**Agent:** 🧹 [Curator]
|
||||
**Status:** ✅ STAMMDATEN-INFRASTRUKTUR IMPLEMENTIERT
|
||||
**Status:** In Progress (Phase 10)
|
||||
**Beteiligte Agenten:** 🏗️ [Lead Architect], 👷 [Backend Developer], 🎨 [Frontend Expert], 🧹 [Curator]
|
||||
|
||||
## 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.
|
||||
## 🎯 Zielsetzung
|
||||
Integration der Stammdaten (Reiter, Pferde, Funktionäre, Vereine) in das Turnier-Feature des Frontends und Funktionalisierung des Nennungs-Managements.
|
||||
|
||||
## Durchgeführte Arbeiten
|
||||
## 🛠️ Technische Änderungen
|
||||
### Frontend (turnier-feature)
|
||||
- **Domain:** Einführung von `Nennung` und `Masterdata` Domänenmodellen.
|
||||
- **Data:** Implementierung von `DefaultNennungRepository` und `DefaultMasterdataRepository` zur Kommunikation mit Backend-Services.
|
||||
- **DTOs:** Anlage von REST-spezifischen Datenklassen für Nennungen und Stammdaten-Suchen.
|
||||
- **ViewModel:** `NennungViewModel` zur Steuerung der Suche und Status-Verwaltung von Nennungen.
|
||||
- **UI:**
|
||||
- `TurnierNennungenTab.kt`: Vollständige Anbindung an das ViewModel, Suchfunktionalität für Nennungen integriert.
|
||||
- `TurnierOrganisationTab.kt`: Vorbereitung für Funktionärs-Verwaltung.
|
||||
- `TurnierStammdatenTab.kt`: Zentraler Einstiegspunkt für die Stammdaten-Suche.
|
||||
- **Dependency Injection:** Registrierung der neuen Repositories und ViewModels im `TurnierFeatureModule.kt`.
|
||||
|
||||
### 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).
|
||||
### Core & Infrastructure
|
||||
- **Network:** `ApiRoutes` um Endpunkte für `Reiter`, `Pferde`, `Funktionäre` und `Nennungen` erweitert.
|
||||
- **Previews:** Aktualisierung der `ScreenPreviews.kt` zur Berücksichtigung der neuen ViewModel-Abhängigkeiten.
|
||||
|
||||
### 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/...`).
|
||||
## ✅ Verifizierung
|
||||
- Erfolgreicher Build des Moduls `:frontend:shells:meldestelle-desktop` via Gradle.
|
||||
- Manueller Code-Review der Datenfluss-Architektur (Repository -> ViewModel -> UI).
|
||||
- Prüfung der Koin-Injektions-Kette.
|
||||
|
||||
### 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.
|
||||
## 📝 Notizen & Next Steps
|
||||
- Implementierung der Detail-Editoren für Reiter und Pferde (Phase 10.2).
|
||||
- Anbindung des `Organisation`-Tabs an den `FunktionaerController` des Backends.
|
||||
- Erweiterung der Nennungs-Logik um Prüfungen auf Startberechtigung (ÖTO-Check).
|
||||
|
||||
---
|
||||
*Gez. Curator*
|
||||
*Dokumentiert durch den Curator.*
|
||||
|
||||
Reference in New Issue
Block a user