JPGs → PDF: neuer Button überall bei PDF-Upload
- Neue Komponente JpgToPdfModal (jsPDF clientseitig, kein Backend-Roundtrip). - Bilder hinzufügen per Klick, Drag&Drop oder Strg+V (Clipboard). - Reihenfolge per Drag&Drop sortierbar; pro Bild 90°/180°-Drehung + horizontal/vertikal-Spiegelung. - Jedes Bild = eine A4-Seite, Orientation automatisch nach Bild, JPEG-Qualität 100%. - FileUpload-Komponente zeigt den Sekundär-Button automatisch, sobald accept PDF einschließt (Datenschutz, Vollmacht, Bankkarten, Ausweise, Gewerbeanmeldung, Handelsregister, Kündigungsschreiben/-bestätigung + jeweilige Optionen). - Direktinputs ebenfalls erweitert: Vertragsdokumente (ContractDetail), Vollmacht-Tab (CustomerDetail), Rechnungen (InvoicesSection). - PdfTemplates bewusst ausgenommen – braucht AcroForm-Felder.
This commit is contained in:
@@ -97,6 +97,24 @@ isolierte Instanz (keine Multi-Tenancy im Code), Provisioning + Abrechnung
|
||||
|
||||
## ✅ Erledigt
|
||||
|
||||
- [x] **🆕 JPGs → PDF: Button überall bei PDF-Upload**
|
||||
- Neue Komponente `JpgToPdfModal` (lokal im Browser via `jspdf`,
|
||||
keine Backend-Round-Trip nötig). Mehrere Bilder hinzufügen per
|
||||
Klick, Drag&Drop oder `Strg+V` (Clipboard-Image), Reihenfolge
|
||||
per Drag&Drop sortierbar, pro Bild 90°/180°-Drehung +
|
||||
Horizontal/Vertikal-Spiegelung. Quality 100%, 1 Bild = 1 Seite,
|
||||
A4 mit automatischer Hoch-/Querformat-Wahl je Bild.
|
||||
- `FileUpload`-Komponente (11 Stellen: Datenschutz-PDF,
|
||||
Vollmacht, Bankkarten-Dokumente, Ausweise, Gewerbeanmeldung,
|
||||
Handelsregister, Kündigungsschreiben + -Bestätigung +
|
||||
deren Optionen) bekommt automatisch einen sekundären
|
||||
"JPGs → PDF"-Button, wenn `accept` PDF einschließt.
|
||||
- Direkt-Inputs ebenfalls erweitert: Vertragsdokumente
|
||||
(ContractDetail), Vollmacht-Dokumente (CustomerDetail Tab),
|
||||
Rechnungen (InvoicesSection).
|
||||
- PdfTemplates **bewusst ausgenommen** – braucht echte
|
||||
AcroForm-PDFs mit Formularfeldern, Bild-PDFs wären unbrauchbar.
|
||||
|
||||
- [x] **🆕 EmailProvider-Settings: Override-Feld „Bezeichnung im UI"**
|
||||
- `customerEmailLabel` existierte im Backend (Schema +
|
||||
Update-Logik + Public-Endpoint), war im UI aber nicht
|
||||
|
||||
Reference in New Issue
Block a user