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:
+8
-1
@@ -16,7 +16,13 @@ Versionierung folgt [Semantic Versioning](https://semver.org/lang/de/).
|
|||||||
### [Unreleased]
|
### [Unreleased]
|
||||||
|
|
||||||
### Hinzugefügt
|
### Hinzugefügt
|
||||||
- **Phase 10 (Series-Context) Vorbereitung:**
|
- **Phase 10 (Series-Context & Stammdaten) - 11.04.2026:**
|
||||||
|
- **Frontend:** Stammdaten-Infrastruktur im `turnier-feature` (Repositories, DTOs, Domänenmodelle) für Reiter, Pferde, Funktionäre und Vereine.
|
||||||
|
- **Frontend:** `NennungViewModel` zur Steuerung der Suche und Status-Verwaltung von Nennungen.
|
||||||
|
- **Frontend:** Funktionalisierung des `Nennungen`-Tabs (Suche, Echt-Datenanbindung) und Vorbereitung des `Organisation`-Tabs.
|
||||||
|
- **Frontend:** `DefaultMasterdataRepository` zur Suche in Reitern, Pferden und Funktionären via Backend-API.
|
||||||
|
- **Netzwerk:** Erweiterung der `ApiRoutes` um Endpunkte für Masterdata und Nennungen.
|
||||||
|
- **Phase 10 (Series-Context) Vorbereitung:**
|
||||||
- **Frontend:** Neuer `SeriesScreen.kt` für die Verwaltung von Cups und Meisterschaften (konfigurierbare Reglements).
|
- **Frontend:** Neuer `SeriesScreen.kt` für die Verwaltung von Cups und Meisterschaften (konfigurierbare Reglements).
|
||||||
- **Frontend:** Erweiterung des `AdminUebersichtScreen` (Cockpit) um KPI-Kacheln mit Direkt-Links zu Cups und Meisterschaften.
|
- **Frontend:** Erweiterung des `AdminUebersichtScreen` (Cockpit) um KPI-Kacheln mit Direkt-Links zu Cups und Meisterschaften.
|
||||||
- **Frontend:** Integration der Series-Navigation in die Breadcrumbs und das globale Routing (`Meisterschaften`, `Cups`).
|
- **Frontend:** Integration der Series-Navigation in die Breadcrumbs und das globale Routing (`Meisterschaften`, `Cups`).
|
||||||
@@ -26,6 +32,7 @@ Versionierung folgt [Semantic Versioning](https://semver.org/lang/de/).
|
|||||||
|
|
||||||
### Geändert
|
### Geändert
|
||||||
- **Turnier-Feature:** Sichtbarkeit von `BewerbViewModel.generateStartliste()` auf `public` geändert, um den Aufruf aus dem Tab zu ermöglichen.
|
- **Turnier-Feature:** Sichtbarkeit von `BewerbViewModel.generateStartliste()` auf `public` geändert, um den Aufruf aus dem Tab zu ermöglichen.
|
||||||
|
- **Frontend (Desktop):** `ScreenPreviews.kt` aktualisiert zur Berücksichtigung der neuen ViewModel-Abhängigkeiten (`NennungViewModel`, `MasterdataRepository`).
|
||||||
|
|
||||||
### [Phase 9] - 11.04.2026
|
### [Phase 9] - 11.04.2026
|
||||||
- **Frontend:** Interaktiver Drag & Drop Zeitplan mit automatischem 5-Minuten-Snapping und Konflikt-Visualisierung.
|
- **Frontend:** Interaktiver Drag & Drop Zeitplan mit automatischem 5-Minuten-Snapping und Konflikt-Visualisierung.
|
||||||
|
|||||||
@@ -241,10 +241,12 @@ und über definierte Schnittstellen kommunizieren.
|
|||||||
* [x] **Protokoll:** Implementierung eines Event-Logs für manuelle Eingriffe in Startlisten (Audit-Log). ✓
|
* [x] **Protokoll:** Implementierung eines Event-Logs für manuelle Eingriffe in Startlisten (Audit-Log). ✓
|
||||||
* [x] **Export:** Startlisten-Export für ZNS (XML-B-Satz). ✓
|
* [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.
|
* [ ] **`series-context`:** Pluggable Berechnungsmodell, konfigurierbare Paar-Bindung.
|
||||||
* [ ] **Web-Portal:** Shared Module aus Desktop-App extrahieren → Web-Portal aufbauen.
|
* [ ] **Web-Portal:** Shared Module aus Desktop-App extrahieren → Web-Portal aufbauen.
|
||||||
* [ ] **Mobile:** KMP-Sharing auf Android/iOS ausweiten.
|
* [ ] **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
|
**Datum:** 11. April 2026
|
||||||
**Agent:** 🧹 [Curator]
|
**Status:** In Progress (Phase 10)
|
||||||
**Status:** ✅ STAMMDATEN-INFRASTRUKTUR IMPLEMENTIERT
|
**Beteiligte Agenten:** 🏗️ [Lead Architect], 👷 [Backend Developer], 🎨 [Frontend Expert], 🧹 [Curator]
|
||||||
|
|
||||||
## Zusammenfassung
|
## 🎯 Zielsetzung
|
||||||
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.
|
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)
|
### Core & Infrastructure
|
||||||
- **Domänenmodelle:** Lokale Definition von `Reiter`, `Pferd`, `Funktionaer` und `Verein` im `turnier-feature`, um die Entkopplung während der Modul-Entwicklung zu gewährleisten.
|
- **Network:** `ApiRoutes` um Endpunkte für `Reiter`, `Pferde`, `Funktionäre` und `Nennungen` erweitert.
|
||||||
- **DTOs:** Erstellung von `NennungDto` (Summary/Detail/Request) für die Kommunikation mit dem `entries-service`.
|
- **Previews:** Aktualisierung der `ScreenPreviews.kt` zur Berücksichtigung der neuen ViewModel-Abhängigkeiten.
|
||||||
- **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
|
## ✅ Verifizierung
|
||||||
- **NennungViewModel:** Zentrale Steuerung des Nennungs-Tabs. Implementiert reaktive Suche für Reiter/Pferde und das Einreichen von Nennungen.
|
- Erfolgreicher Build des Moduls `:frontend:shells:meldestelle-desktop` via Gradle.
|
||||||
- **API-Routing:** Erweiterung der `ApiRoutes` um Masterdata-Endpunkte (`/api/masterdata/...`).
|
- Manueller Code-Review der Datenfluss-Architektur (Repository -> ViewModel -> UI).
|
||||||
|
- Prüfung der Koin-Injektions-Kette.
|
||||||
|
|
||||||
### 3. UI-Integration (Desktop)
|
## 📝 Notizen & Next Steps
|
||||||
- **Nennungen-Tab:**
|
- Implementierung der Detail-Editoren für Reiter und Pferde (Phase 10.2).
|
||||||
- Umstellung von statischen Mocks auf das `NennungViewModel`.
|
- Anbindung des `Organisation`-Tabs an den `FunktionaerController` des Backends.
|
||||||
- Live-Suche für Reiter und Pferde integriert.
|
- Erweiterung der Nennungs-Logik um Prüfungen auf Startberechtigung (ÖTO-Check).
|
||||||
- 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*
|
*Dokumentiert durch den Curator.*
|
||||||
|
|||||||
Reference in New Issue
Block a user