Enhance billing logic: add REST support for manual and automated transactions, refine billing routes, adapt frontend API integration, and implement transaction type validation.

This commit is contained in:
2026-04-12 18:35:49 +02:00
parent 03950f8b0c
commit 9754f3e36b
10 changed files with 162 additions and 27 deletions
@@ -0,0 +1,27 @@
# 🧹 Curator Log - 12.04.2026
## 🎯 Fokus: Teilnehmer-Abrechnung & Buchungs-Logik (Phase 12)
Heute wurden wesentliche Fortschritte in der Billing-Infrastruktur erzielt, um die Abrechnung von Teilnehmern (Reiter/Besitzer) während der Veranstaltung zu ermöglichen.
### ✅ Erledigte Aufgaben
- **Backend (Billing-Service):**
- `BillingController` für REST-Zugriff auf Teilnehmerkonten und Buchungen erstellt.
- `TeilnehmerKontoService` um automatische Betragsvalidierung (Soll/Haben) basierend auf dem `BuchungsTyp` erweitert (z.B. Gebühren werden automatisch negativ, Zahlungen positiv gebucht).
- Repository um `findByVeranstaltung` für die Offene-Posten-Liste (OPL) ergänzt.
- **Frontend (Billing-Feature):**
- `ApiRoutes` & `DefaultBillingRepository` an die neue REST-Struktur angepasst.
- `BillingViewModel` um Typ-Unterstützung bei Buchungen erweitert.
- `ManuelleBuchungDialog` überarbeitet: Nutzer können nun explizit den Typ wählen (Barzahlung, Kartenzahlung, Nenngebühr etc.), wobei das Backend die Vorzeichenlogik übernimmt.
### 🚧 Offene Punkte (Next Steps)
- **Rechnungserstellung (PDF):** Implementierung eines PDF-Generators für Teilnehmerrechnungen.
- **Druck-Anbindung:** Direkte Anbindung an Bondrucker für Kassa-Belege.
- **Statistik-Dashboard:** Visualisierung von Gesamteinnahmen pro Veranstaltung (Bar vs. Karte).
### 📝 Notizen
- Die OPL (Offene Posten Liste) wird im Frontend durch die Filterung der Teilnehmerliste auf Konten mit Saldo != 0 realisiert.
- Das Backend stellt sicher, dass Buchungen konsistent bleiben, unabhängig davon, ob im Frontend ein positives oder negatives Vorzeichen eingegeben wird.
---
*Log erstellt von Junie (Curator Mode)*