3.8 KiB
3.8 KiB
Journal-Eintrag: 2026-04-16 - ZNS-First Wizard & ZNS-Light Strategie
🏗️ [Lead Architect] & 👷 [Backend Developer] & 🖌️ [UI/UX Designer]
🎯 Zielsetzung
Lösung des Henne-Ei-Problems bei der Veranstaltungs-Anlage durch Invertierung des Workflows. Sicherstellung einer hohen Performance (Speed over Animation) durch selektiven ZNS-Import.
🛠️ Getroffene Entscheidungen
1. Der "ZNS-First Enrollment" Workflow (3-Schritt-Wizard)
Der Wizard für eine neue Veranstaltung wird radikal umgebaut, um die Datenintegrität von Anfang an sicherzustellen:
- Schritt 1: ZNS-Basis & Veranstalter
- Upload der
ZNS.zip. - Sofortiger Import der
VEREIN01.dat(Vereine) undLIZENZ01.dat(Personen). - Auswahl des Veranstalters aus den importierten Daten (oder manuelle Neuanlage).
- Upload der
- Schritt 2: Meta-Daten & DB-Initialisierung
- Eingabe von Titel, Datum (von-bis) und Ort.
- Nach Validierung: Generierung der
veranstaltungId(UUID). - Provisionierung der spezifischen Veranstaltungs-Datenbank und Transfer der ZNS-Light-Daten aus dem Staging-Buffer.
- Schritt 3: Fachlicher Typ
- Wahl der Veranstaltungsart (derzeit "Turnier").
- Weiterleitung zum Turnier-Cockpit.
2. "ZNS-Light" Performance-Strategie
Um die Wartezeit beim ersten Import von ~20 Minuten auf wenige Sekunden/Minuten zu reduzieren:
- Light-Modus: Nur
VEREIN01undLIZENZ01werden im Wizard geladen. - Lazy-Modus: Die massiven Datenmengen von
PFERDE01undRICHT01werden erst im Turnier-Setup oder bei Bedarf im Hintergrund geladen.
3. Frontend-Konsolidierung (Single Source of Truth)
- Alle Entwürfe (V1/V2) werden im
VeranstaltungNeuScreen.ktzusammengeführt. - Redundante Screens wie der separate
StammdatenImportScreenwerden als Komponente in den Wizard integriert.
🚀 Nächste Schritte (für die neue Session)
- Backend-Staging-Buffer: Implementierung der temporären Speicherung der ZNS-Light-Daten während des Wizards.
- Wizard-Implementation: Umsetzung des 3-Schritt-Flows im
VeranstaltungNeuScreen.kt. - API-Erweiterung:
ZnsImportServiceum denmode=LIGHTParameter erweitern.
🧹 [Curator]: Journal-Eintrag für Session am 16. April 2026 abgeschlossen.
- Status: Implementierung des ZNS-First Wizards in
VeranstaltungKonfigV2abgeschlossen. - Resultat: Performance-Steigerung durch ZNS-Light Integration direkt im ersten Wizard-Schritt.
- Technik: Entkopplung via
ZnsImportProviderInterface erfolgreich angewendet.
🧹 [Curator]: Dieses Dokument wurde um die finalen Implementierungsdetails ergänzt. Alle fachlichen und technischen Parameter sind hiermit fixiert und umgesetzt.
Nachtrag: 2026-04-16 15:00 - Actuator-Fix (Docker-Stability)
- Problem: ZNS-Import-Service meldete 404 auf
/actuator/health/readinessunter Docker-Compose, was zu ungesunden Containern führte. - Lösung: Explizite Aktivierung der
probesin derapplication.yaml(management.endpoint.health.probes.enabled: true). - Optimierung: Healthcheck in
dc-backend.yamlaufwget --no-verboseumgestellt für bessere Diagnosemöglichkeiten.
Nachtrag: 2026-04-16 15:30 - Connectivity & Serialization Fixes
- Connectivity:
ConnectivityTrackerwurde auf den korrekten Health-Pfad/api/ping/healthumgestellt. Der Footer zeigt nun korrekt den Online-Status ("Cloud synchronisiert") an. - Serialization: Behebung des Fehlers
Serializer for class 'JobIdResponse' is not found. Die DTO-Klasse wurde im Frontend inImportStartResponseumbenannt (passend zum Backend) und die Sichtbarkeit aufpublicerhöht. - Flexibilität: Der ZNS-Importer unterstützt nun sowohl
.zipals auch.datDateien (z.B. direkteVEREIN01.dat). Die UI (pickZnsFile) und das ViewModel wurden entsprechend erweitert.