feat: vollständige Firmendaten (Adresse, Abrechnung) bei Firmenanlage
Bei Firmenanlage (Registrierung + Betreiber-Firmenanlage) müssen jetzt Adresse (Straße, PLZ, Ort, Land) und Abrechnungsdaten (Rechnungsemail, optional USt-IdNr.) erfasst werden, nicht nur der Firmenname (Migration 0023). USt-IdNr. bewusst optional - Kleinunternehmer nach §19 UStG haben keine. Neue Seite /verwaltung/firma (admin-only) zum Einsehen/ Nachtragen für bestehende Firmen. store.CreateAccount nimmt jetzt ein AccountInput statt nur einen Namen entgegen (Signaturänderung betrifft ~20 Testaufrufe, mechanisch umgestellt). register.html/ betreiber_account_neu.html auf form-card/form-grid umgestellt. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
39
CLAUDE.md
39
CLAUDE.md
@@ -679,6 +679,45 @@ Zeile mit dem aktuellen Stand, eine neu registrierte Firma ohne eigene
|
||||
|
||||
---
|
||||
|
||||
## Firmendaten: Adresse und Abrechnung (2026-09-01, Migration 0023)
|
||||
|
||||
Auf Nutzerwunsch: bei jeder Firmenanlage (öffentliche Registrierung
|
||||
`POST /register` UND Betreiber-Firmenanlage `POST /betreiber/accounts`)
|
||||
müssen jetzt vollständige Firmendaten erfasst werden, nicht nur der
|
||||
Name. `account` bekommt sechs neue Spalten: `strasse`, `plz`, `ort`,
|
||||
`land` (Adresse) sowie `ust_id`, `rechnungsemail` (Abrechnung).
|
||||
Pflichtfelder bei Neuanlage: Name, Straße, PLZ, Ort, Land,
|
||||
Rechnungsemail. **Bewusst optional:** USt-IdNr. — Kleinunternehmer nach
|
||||
§19 UStG haben keine, eine Pflichtangabe wäre hier fachlich falsch.
|
||||
|
||||
`store.AccountInput` bündelt diese Felder für `CreateAccount` (Signatur
|
||||
geändert von `(ctx, name string)` auf `(ctx, AccountInput)` — betrifft
|
||||
~20 Testaufrufe, mechanisch auf `AccountInput{Name: "..."}` umgestellt)
|
||||
und die neue Methode `UpdateAccountDetails` (Name + alle Firmendaten in
|
||||
einem Aufruf, getrennt von der bestehenden `UpdateAccount`, die nur den
|
||||
Namen ändert — z. B. für die schnelle Tippfehlerkorrektur durch den
|
||||
Betreiber). Migrationsspalten sind `NOT NULL DEFAULT ''` statt einer
|
||||
harten Pflicht ohne Default: bestehende, vor dieser Migration angelegte
|
||||
Accounts haben diese Daten schlicht noch nicht, die Migration darf sie
|
||||
nicht blockieren — die Pflicht gilt nur auf Anwendungsebene für NEUE
|
||||
Firmen.
|
||||
|
||||
**Neue Seite für bestehende Firmen:** `GET/POST /verwaltung/firma`
|
||||
(Ebene 4, admin-only, eigener Nav-Punkt "Firmendaten") — zum Einsehen
|
||||
und Nachtragen/Korrigieren der eigenen Adress-/Abrechnungsdaten, auch
|
||||
für Accounts, die vor dieser Migration entstanden sind und die Felder
|
||||
sonst dauerhaft leer hätten. `register.html`/`betreiber_account_neu.html`
|
||||
wurden dabei auf das `.form-card`/`.form-section`/`.form-grid`-Muster
|
||||
umgestellt (vorher unstylte Rohformulare) — bei sieben-plus Feldern
|
||||
sonst unübersichtlich.
|
||||
|
||||
Live end-to-end verifiziert: beide Anlage-Wege (Registrierung UND
|
||||
Betreiber-Firmenanlage) speichern alle Felder korrekt, die neue
|
||||
Firmendaten-Seite zeigt den aktuellen Stand vorausgefüllt und
|
||||
Änderungen werden korrekt persistiert.
|
||||
|
||||
---
|
||||
|
||||
## Row-Level-Security (2026-09-01, Migration 0021)
|
||||
|
||||
**Ausgangslage:** RLS-Policies wirken nie bei Postgres-Superusern, und
|
||||
|
||||
Reference in New Issue
Block a user