Commit Graph
16 Commits
Author SHA1 Message Date
SvenandClaude Fable 5 fd71c272fa PDF-Upload aus der Rechnungsmaske entfernt; Rechnungen entstehen in der UI nur noch aus Templates
Die REST-API (/api/invoices/sign, /validate) nimmt unverändert PDFs entgegen
und bietet weiterhin keinen Template-Zugriff.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 10:31:29 +02:00
SvenandClaude Fable 5 fa0d9da2b1 Beispiel-Hinweise unter den Eingabefeldern entfernt (USt-IdNr., Webseite, IBAN, BIC)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 10:21:32 +02:00
SvenandClaude Fable 5 28f62cee06 Telefon und Webseite des Rechnungsstellers: Adressbuch-Feld, Formularfelder, Belegung von masterdata.phone/website
- Adressbuch: neues Feld "Webseite" pro Unternehmen
- Rechnungsmaske: Telefon und Webseite beim Rechnungssteller manuell erfassbar, Vorbelegung aus dem Adressbuch
- masterdata.phone/masterdata.website werden aus den Formularfeldern belegt, mit Adressbuch-Fallback (bisher immer leer)
- Webseite wird in Vorbelegungen mitgespeichert, Telefon fließt über Party.phone in die ZUGFeRD-Daten

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 10:13:40 +02:00
SvenandClaude Fable 5 6838ce3b20 Rechnungsmaske: ZIP-Auto-Download, löschbare Vorbelegungen, Icon- und Textausrichtungs-Korrekturen
- Valides ZIP startet den Download direkt; der sichtbare Download-Link entfällt
- Vorbelegung laden: Löschen-Icon rechts an jedem Eintrag, Löschung aus MongoDB nach Sicherheitsabfrage
- Template-Wechsel leert die Rechnungssteller-Felder nicht mehr, damit "Eingaben speichern" aktiv wird
- Aktionsspalten der Grids mit fester Breite, damit die Icons nicht abgeschnitten werden
- Texte im PDF-Renderer und Designer-Canvas oben statt zentriert ausgerichtet, damit mehrzeilige Variablenwerte auf Höhe ihrer Nachbar-Elemente beginnen
- Vaadin-Frontend-Scaffolding (package.json, tsconfig, vite-Konfiguration) aufgenommen

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 09:56:30 +02:00
SvenandClaude Fable 5 5bcaf97eba Dockerfile: Microsoft Core Fonts und DejaVu für den PDF-Renderer installieren
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 14:08:24 +02:00
SvenandClaude Fable 5 4d16455d17 Rechnungsdesigner: Positionstabelle im Briefbogen-Layout, Hintergrundbild, mm-Angaben, Autosave
Positionstabelle mit Spalten Menge/Bezeichnung/Einzelpreis/Gesamt,
durchgezogenen schwarzen Spaltenlinien bis zum Summenblock (im Canvas aufs
Pixelraster eingerastet) und Summen rechts unten — identisch in Vorschau und
PDF. Dazu: Hintergrundbild hinter allen Elementen, Positionsangaben in mm,
Canvas-Eigenschaften in der Sidebar, kein Positionsraster mehr, zentrierter
Text bei Größenänderung sowie entprellter serverseitiger Autosave des
Arbeitsstands.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 14:08:16 +02:00
SvenandClaude Fable 5 9891a58fad Schutz vor stillen Seiten-Reloads: 12h-Session, eigener Session-Cookie, Meldung statt Sofort-Reload
Session-Timeout auf 12 h erhöht, Cookie-Name PDFTOOL_SESSION gegen
JSESSIONID-Kollisionen anderer lokaler Java-Anwendungen, Tomcat-POST-Limit auf
30 MB für Canvas-Daten mit eingebetteten Bildern, Vaadin-Systemmeldungen mit
Bestätigung statt sofortigem Neuladen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 14:08:06 +02:00
SvenandClaude Fable 5 48a5831600 Bankverbindung (Bank, IBAN, BIC) im Adressbuch, IBAN/BIC über den Rechnungssteller statt Freitext
IBAN-Prüfung (ISO 13616) in eigenen IbanValidator ausgelagert; Käuferreferenz
und dev-Testdaten aus der Rechnungsmaske entfernt, Entwurf-Speichern nur bei
gefüllten Pflichtfeldern.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 14:07:56 +02:00
SvenandClaude Fable 5 722699f5d0 Sign-Endpoint liefert HTTP 422 bei ungültiger Rechnung, ZIP in beiden Fällen
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 17:45:51 +02:00
SvenandClaude Fable 5 6a373d835c Server-Port über SERVER_PORT aus der .env konfigurierbar
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 11:24:26 +02:00
SvenandClaude Fable 5 d3682e5340 Port auf 8083 umgestellt, Maven Wrapper hinzugefügt, docker_push.sh ins Root verschoben
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-10 11:00:32 +02:00
SvenandClaude Fable 5 34be24f8ed Versionsnummer im Sidebar-Kopf anzeigen
Version aus der pom.xml per Resource-Filtering in die Anwendung
übernehmen und klein in Mittelgrau rechts unten neben "AIT" anzeigen;
"AIT" bleibt zentriert. Projektversion auf 0.9.0 gesetzt.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 17:55:47 +02:00
SvenandClaude Fable 5 0e65203ad7 docker_push.sh: Registry-Image auf ait umgestellt
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 17:41:04 +02:00
SvenandClaude Fable 5 ee01b6d3b9 Docker-Build hinzugefügt
Dockerfile (JRE-21-Image mit Zeitzone Europe/Berlin, erwartet ein
vorgebautes JAR), .dockerignore und docker_push.sh für den Push in die
Registry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 17:39:43 +02:00
SvenandClaude Fable 5 420072dc27 Speichern-Button, eindeutige Namen und E-Mail-Validierung
- "Eingaben speichern" neben "E-Rechnung erzeugen"; aktiv nur, wenn keine
  Vorbelegung geladen ist oder sich Eingaben seither geändert haben
- Unique-Indizes auf die Namen von Templates und Vorbelegungen (werden
  nach der Verbindungsprüfung beim Start angelegt); kein Namensvorschlag
  mehr im Speichern-Dialog
- E-Mail-Felder validieren sofort beim Verlassen des Feldes (Maske und
  Adressbuch, gemeinsames Pattern)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 16:25:20 +02:00
SvenandClaude Fable 5 960431914c Initialer Stand des PDF Tools
ZUGFeRD-E-Rechnungs-Konverter mit Vaadin-UI: E-Rechnung aus PDF oder
Rechnungstemplate erzeugen, Template-Designer, Adressbuch und
speicherbare Formulareingaben (MongoDB).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-09 16:02:54 +02:00