- **Repositories:** Implementiere und integriere `KtorPferdRepository` und `KtorFunktionaerRepository`. - **SQLite:** Erweitere Schema um `LocalPferd` und `LocalFunktionaer` mit passenden Queries. - **ViewModels:** Passe `PferdeViewModel` und `FunktionaerViewModel` an, um Flows und Repository-Injektion zu nutzen. - **DI-Module:** Aktualisiere `PferdeModule` und `FunktionaerModule` für Backend-Anbindung.
2.6 KiB
2.6 KiB
Session-Journal: 22. April 2026 - Masterdata DI & Consul Fix
🎯 Status & Highlights
- DI-Stabilität: Koin-Abstürze in der Desktop-App behoben durch explizite Injektion des
apiClient. - Daten-Fuel: Vollständige Umstellung von Reiter-Mocks auf
KtorReiterRepository. Die 48.753 Reiter sind nun via API erreichbar. - Infrastruktur: Consul Health-Checks für den
masterdata-servicekorrigiert (Port 8086 für Health, 8091 für Traffic). - ZNS-Korrektur: Verifizierung der Import-Mengen (21.206 Pferde erfolgreich importiert).
- Vollständige Stammdaten-Integration: Pferde und Funktionäre sind nun vollständig an SQLite und Backend-API angebunden.
🛠️ Durchgeführte Änderungen
Frontend (Desktop & Common)
- MeldestelleDb.sq: Erweiterung des SQLite-Schemas um
LocalPferdundLocalFunktionaer. - Repositories:
KtorPferdRepositoryundKtorFunktionaerRepositoryimplementiert (commonMain). - DI (PferdeModule, FunktionaerModule): Umstellung auf reale Repository-Injektion mit dem
apiClient. - ViewModels:
PferdeViewModelundFunktionaerViewModelfür reaktive Daten-Anbindung (Flows) angepasst. - DesktopMasterdataRepository: Persistierungs-Logik für Pferde und Funktionäre implementiert;
getStats()liefert nun korrekte SQLite-Zahlen für alle Stammdaten-Typen. - VereinFeatureModule & ReiterModule: Umstellung auf
named("apiClient"), um den authentifizierten Ktor-Client zu nutzen. - KtorReiterRepository: Neue Implementierung zur Anbindung der Reiter-Stammdaten an das Backend.
- SQLite: User hat die DB gelöscht; Schema wird beim nächsten Start automatisch mit allen neuen Tabellen (
LocalVerein,LocalReiter,LocalPferd,LocalFunktionaer) neu erstellt.
Backend & DevOps
- masterdata-service (application.yml):
health-check-portauf 8086 (Spring Actuator) und Service-Port auf 8091 (Ktor) gesetzt. - dc-backend.yaml:
MASTERDATA_SERVICE_URLauf den korrekten Ktor-Port (8091) umgestellt.
🧐 QA & Verifizierung
- Build:
./gradlew :frontend:shells:meldestelle-desktop:compileKotlinJvmist GRÜN. - Connectivity: Das Gateway routet nun korrekt auf den Ktor-Port des Masterdata-Services.
🚀 Next Steps
- Cloud-Sync: Starten der Desktop-App und Ausführen des "Cloud-Sync" im Stammdaten-Import-Screen, um die SQLite zu befüllen.
- Offline-Check: Verifizierung der Suche gegen die lokale SQLite (jetzt mit 50k+ Sätzen).
- Pferde-Schema: Erweiterung der SQLite um
LocalPferd(für die 21k Pferde).
🏗️ [Lead Architect] | 👷 [Backend Developer] | 🎨 [Frontend Expert]