Gutschrift: nur mit Empfaengeradresse anlegbar (Rechnung > Liefer)

Eine Gutschrift/ein Lieferschein braucht eine Empfaengeradresse aufs
Dokument. Rechnungsadresse hat Vorrang, sonst Lieferadresse. Ist keine
von beiden hinterlegt -> Anlegen blockiert.

- Frontend: Klick auf 'Gutschrift anlegen' prueft defaults.hasRecipient-
  Address; wenn false -> Modal-OK-Meldung statt Formular.
- Backend Defense-in-Depth: createCreditNote wirft 400, wenn weder
  billingAddressId noch addressId gesetzt. getCreditNoteDefaults liefert
  hasRecipientAddress.

Verifiziert: ohne Adresse -> hasRecipientAddress false + create 400;
mit Adresse -> ok.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-12 09:39:04 +02:00
co-authored by Claude Opus 4.8
parent 0078654465
commit 5047bfaab3
4 changed files with 50 additions and 2 deletions
+7
View File
@@ -97,6 +97,13 @@ isolierte Instanz (keine Multi-Tenancy im Code), Provisioning + Abrechnung
## ✅ Erledigt
- [x] **🚫 Gutschrift nur mit Empfängeradresse (Rechnung > Liefer)** (2026-08-12)
- Beim Klick auf „Gutschrift anlegen" wird geprüft, ob der Vertrag eine
Empfängeradresse hat: **Rechnungsadresse hat Vorrang, sonst Lieferadresse**.
Ist **keine** von beiden hinterlegt → **Modal-OK-Meldung** statt Formular.
- Backend Defense-in-Depth: `createCreditNote` wirft **400**, wenn weder
`billingAddressId` noch `addressId` gesetzt ist. `getCreditNoteDefaults`
liefert `hasRecipientAddress` fürs Frontend. Verifiziert.
- [x] **🧾 Gutschrift: Beleg-Upload auch für Sachwerte + kein Unterschriftsblock bei Geld** (2026-08-12)
- **Beleg-Upload jetzt für beide Arten:** bei Geld die Überweisungsbestätigung,
bei Sachwert das **unterschriebene Dokument**. `ReceiptControls` in der Liste