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,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