chore: consolidate redundant controllers in mail-service, improve backend stability, refine desktop UX, and enhance Vereinsverwaltung functionality
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
# Journal: 19. April 2026 - Backend Stabilität & Desktop UX-Refinement
|
||||
|
||||
## 🏗️ Backend: Infrastruktur & Mail-Service
|
||||
|
||||
* **Mail-Service:** Konflikt beim Request-Mapping behoben. Der redundante `NennungController` wurde entfernt und seine Funktionalität (Status-Update, Erstellung) in den zentralen `MailController` integriert.
|
||||
* **Health-Checks:** `spring-boot-starter-actuator` zum `entries-service` hinzugefügt, um die 404-Fehler in der Consul-Überwachung zu eliminieren.
|
||||
* **Mail-Features:** Neuer Endpunkt `POST /send-reply` im `MailController` implementiert, um Bestätigungs-Mails an Nenner mit dynamischer Absenderadresse (Turnier-spezifisch) zu senden.
|
||||
|
||||
## 💻 Desktop-App: Navigation & UI
|
||||
|
||||
* **Veranstaltungs-Konfiguration:** White-Screen Fix durch Korrektur der Navigation im `DesktopMainLayout.kt`. Es wird nun korrekt auf den `VeranstaltungKonfigScreen` aus dem Feature-Modul verwiesen.
|
||||
* **Device-Setup:** UX-Verbesserung durch Entfernung blockierender `onKeyEvent` Handler. Die Navigation zwischen Feldern mittels **Tab** und **Enter** funktioniert nun reibungslos über den Standard-Fokus-Flow.
|
||||
* **Design-System:**
|
||||
* Suchfeld-Höhe in `MsFilterBar.kt` auf `44.dp` erhöht, um abgeschnittenen Text bei kleinen Schriftarten zu verhindern.
|
||||
* `MsMasterDetailLayout` im Vereins-Bereich um einen **Preview-Bereich** (Card-Ansicht) erweitert.
|
||||
|
||||
## 🚀 Neue Features
|
||||
|
||||
### Nennungs-Eingang
|
||||
* **Antwort-Funktion:** Ein neuer Button "Antwort & Übernahme" im Detail-Dialog ermöglicht das direkte Versenden einer Bestätigungs-Mail an den Nenner.
|
||||
* **Sortierung:** Die Liste wird nun standardmäßig mit neuen Nennungen (`NEU`) zuerst sortiert.
|
||||
|
||||
### Vereins-Verwaltung
|
||||
* **Card-Preview:** Der obere Teil des Detail-Bereichs zeigt nun eine visuelle Vorschau des Vereins (Name, Status, Ort).
|
||||
* **Logo-Support:** Das Domain-Modell und der Editor wurden um ein `logoUrl` Feld erweitert, um Vereinslogos (z.B. für nicht registrierte Vereine) zu hinterlegen.
|
||||
|
||||
## 🧹 Curator Hinweis
|
||||
Alle gemeldeten Start-Fehler im Backend wurden behoben. Die Desktop-App ist nun voll navigierbar und bietet verbesserte Effizienz für die Meldestellen-Mitarbeiter.
|
||||
@@ -0,0 +1,43 @@
|
||||
# Journal-Eintrag: Vereins-Verwaltung Erweiterung (Logo & Adresse)
|
||||
|
||||
**Datum:** 20. April 2026
|
||||
**Status:** In Umsetzung / Teilweise abgeschlossen
|
||||
**Beteiligte Agenten:** 🏗️ [Lead Architect], 🎨 [Frontend Expert], 🧹 [Curator]
|
||||
|
||||
## 📝 Zusammenfassung
|
||||
Die Vereins-Verwaltung wurde um detaillierte Adressdaten und ein verbessertes Logo-Management erweitert. Dies unterstützt die Professionalisierung der Stammdaten und verbessert die UX durch direkte Integration von Google Maps.
|
||||
|
||||
## 🛠️ Technische Änderungen
|
||||
|
||||
### 1. Domain-Modell (`Verein.kt`)
|
||||
* Erweiterung um Felder: `strasse`, `hausnummer`, `bundesland` (Enum).
|
||||
* Neues Feld `logoBase64` für die Offline-Speicherung von optimierten Vereinslogos.
|
||||
* Einführung des Enums `Bundesland` mit den 9 österreichischen Bundesländern zur Sicherstellung der Datenqualität (ÖTO-konform).
|
||||
|
||||
### 2. ViewModel (`VereinViewModel.kt`)
|
||||
* Erweiterung des `VereinUiState` um die neuen Adress- und Logo-Felder.
|
||||
* Implementierung der Change-Handler für alle neuen Felder.
|
||||
* Anpassung der `onSave`- und `onAddNew`-Methoden zur Berücksichtigung der erweiterten Datenstruktur.
|
||||
|
||||
### 3. UI-Anpassungen (`VereinScreens.kt`)
|
||||
* **Card-Preview:**
|
||||
* Anzeige der vollständigen Adresse (Straße, Hausnummer, PLZ, Ort, Bundesland).
|
||||
* Integration eines "Maps"-Buttons, der die Adresse direkt in Google Maps öffnet (via `LocalUriHandler`).
|
||||
* Vergrößertes Logo-Display (80dp) mit modernem Design.
|
||||
* **Editor:**
|
||||
* Logische Gruppierung der Adressfelder (Straße/Nr. in einer Zeile, PLZ/Ort/Bundesland in der nächsten).
|
||||
* Einsatz des `MsEnumDropdown` für die Bundesland-Auswahl.
|
||||
* Vorbereitung einer "Logo-Upload-Zone" mit visuellem Feedback für Drag-and-Drop / FilePicker.
|
||||
|
||||
## 🔍 Verifikation (Vorschau)
|
||||
* [x] Domain-Modell kompiliert.
|
||||
* [x] ViewModel-Logik deckt alle neuen Felder ab.
|
||||
* [x] UI-Layout ist für High-Density Enterprise-UIs optimiert (44dp Standard).
|
||||
|
||||
## 📌 Nächste Schritte
|
||||
* Implementierung der tatsächlichen Bild-Skalierung und Konvertierung (JVM-spezifisch) im `VereinViewModel`.
|
||||
* Anbindung des nativen `JFileChooser` für den Logo-Import.
|
||||
* Finalisierung der Drag-and-Drop Logik (`onExternalDrag`).
|
||||
|
||||
---
|
||||
*Dokumentiert durch den Curator.*
|
||||
Reference in New Issue
Block a user