Commit graph

87 commits

Author SHA1 Message Date
fds2610-bot
b5c2c672c8 Fix #142: Produktions-Härtung der PHP-Fehlerausgabe 2026-07-27 12:17:49 +02:00
fds2610-bot
ed675c8e01 Fix #135: Stored XSS über XSLT in hochgeladenen XML-Belegen behoben 2026-07-27 12:13:55 +02:00
fds2610-bot
8000225a05 Fix #133: DOM-XSS in der Bankimport-Vorschau behoben 2026-07-27 12:10:10 +02:00
fds2610-bot
64898195a3 Fix #132: Reflektiertes XSS über _error-Parameter behoben 2026-07-27 12:07:29 +02:00
fds2610-bot
fc7ad72b96 Fix #131: CSV-Formel-Injection im Anlagelisten-Export behoben 2026-07-27 12:03:49 +02:00
fds2610-bot
70d98ff48a Fix #130: SSRF-Schutz gegen DNS-Rebinding (TOCTOU) per IP-Pinning 2026-07-27 11:59:01 +02:00
fds2610-bot
254761082f Fix #136: CSRF-Schutz für GET /bank/direkt/{id}/run ergänzt 2026-07-27 11:53:48 +02:00
fds2610-bot
c1b5c1ca83 Fix #137: Netto/Brutto-Umschalter in der Buchungsmaske ergänzt 2026-07-27 07:21:51 +02:00
fds2610-bot
3e92662d92 Fix #138: Lieferanten-Typeahead in der Belegliste ergänzt 2026-07-27 07:12:37 +02:00
fds2610-bot
9dfaea8cda Fix #139: Auto-Reload-Button durch iOS-artigen Toggle-Switch ersetzt 2026-07-27 06:57:05 +02:00
fds2610-bot
9f61624b40 Fix #140: Essensbeleg-Vorlage um Eingabezeile ohne USt. (Trinkgeld) erweitert 2026-07-26 16:39:32 +02:00
fds2610-bot
87ccb00f95 Fix #139: Ereignisanzeige aktualisiert sich automatisch (Ein-/Aus-Button) 2026-07-26 16:35:36 +02:00
fds2610-bot
95f9f344ec Fix #testsuite: Test 54 (Session-Cookie) und Test 56 (Nextcloud-SSRF) dauerhaft grün 2026-07-21 19:21:16 +02:00
fds2610-bot
2b93d38513 Feature: Kontostand nach Direktabruf auf Bank-Verbindungskachel 2026-07-21 18:43:41 +02:00
fds2610-bot
e3c47f7d89 Fix #127: SSRF-Schutz für nextcloud_url beim Belegimport 2026-07-12 06:13:56 +02:00
fds2610-bot
8b562dcb41 Fix #126: E-Mail-Header-Injection über mail_subject_template verhindert 2026-07-11 12:27:16 +02:00
fds2610-bot
eeeec1e94d Fix #121: Session-Cookie mit HttpOnly, SameSite und Secure gehärtet 2026-07-10 14:43:30 +02:00
fds2610-bot
1d93ab8662 Fix #122: Brute-Force-Schutz für /login (Account-Lockout nach Fehlversuchen) 2026-07-10 14:37:22 +02:00
fds2610-bot
6292c90fc5 Fix #119: SMTP-/Nextcloud-Passwörter verschlüsselt gespeichert, kein Klartext im HTML mehr 2026-07-08 07:48:16 +02:00
fds2610-bot
f6eb71ddd7 Fix #118: SSRF über fints_url-Feld bei Bankverbindungen verhindert 2026-07-08 07:45:08 +02:00
fds2610-bot
d57f334229 Fix #117: E-Mail-Header-/SMTP-Command-Injection über Empfänger-/CC-Adressen verhindert 2026-07-08 07:41:44 +02:00
fds2610-bot
649684a77b Fix #116: Beleg-Uploads aus dem Web-Root entfernt (nach data/uploads verschoben) 2026-07-08 07:37:45 +02:00
fds2610-bot
2012f228c4 Fix #114: Beleg-Löschung nicht mehr durch Datei-Permission-Fehler unterbrochen 2026-07-06 23:57:37 +02:00
fds2610-bot
d4602368e7 Fix #111: Zwei zusätzliche CC-E-Mail-Adressen pro Kunde 2026-07-02 21:08:11 +02:00
fds2610-bot
1fec39da9b Fix #109: Ereignisse-Log für Nextcloud-Import 2026-06-29 18:21:05 +02:00
fds2610-bot
6ce2c72cd9 Fix #108: Lieferant in Belegliste inline bearbeiten 2026-06-29 18:15:39 +02:00
fds2610-bot
91953aa682 Fix: Testnummern-Kollision - LlmAvailableModelsTest auf 45 umbenannt 2026-06-11 20:13:11 +02:00
fds2610-bot
fa4bfcf445 Merge main in automate/issue-103 (Changes.md-Konflikt aufgelöst) 2026-06-11 20:07:00 +02:00
FDS
87a303c933 fix: Liste verfügbarer Ollama-Modelle in Einstellungen anzeigen (closes #103) 2026-06-11 19:08:51 +02:00
FDS
8b6ab6820e fix: CSV-Importformat in Direktverbindungs-Dialog ergänzen (closes #102) 2026-06-11 19:03:43 +02:00
FDS
1a23b3e11d Fix #55: Verbindungsfehler-Fallback – kein Retry-Loop, spezifische Fehlermeldung 2026-06-08 21:20:33 +02:00
fds2610-bot
f9b6a5d303 Feature: Buchungsvorlagen im Buchungsdialog
Neues Vorlagen-Badge zwischen Bank-Badge und Buchungsformular in
/belege/{id}. Vorlage auswählen öffnet modalen Dialog mit Feldgruppen
(Metadaten, USt-Zeilen mit Live-Berechnung, Zahlungskonto). Buchungen
werden per VorlageBuchungsService aus JSON-Regeln in der DB erstellt.
Pflege-UI unter /einstellungen/buchungsvorlagen (CRUD inkl. Felder und
Regeln). Initiale Vorlage "Essensbeleg n. abzugsfähig (nur USt.)" via
Migration 080 eingespielt. Test 42 prüft CRUD und Buchungsausführung.
2026-05-28 21:57:04 +02:00
fds2610-bot
a1eb573e25 Fix: Migrationen EÜR-Zeilen, USt-Konten und Test 15 nachliefern 2026-05-24 16:33:23 +02:00
fds2610-bot
b637b7b5ab Anlagevermögen überarbeitet, AFA 2026-05-24 12:56:21 +02:00
fds2610-bot
1e2c8cf498 Fix: Belegsumme blendet steuerliche Umbuchungen auf Konto 1800 aus 2026-05-23 16:50:20 +02:00
fds2610-bot
6ba281cfc1 Feature: "Abrufen ab"-Auswahl im Bearbeiten-Dialog der Direktverbindungen 2026-05-22 13:02:32 +02:00
fds2610-bot
0dc1b6c3a7 Fix: FinTS-Konto-Auswahl speichern + Bearbeiten-Dialog mit Checkboxen
Session-Lock im SSE-Stream blockierte den parallelen POST der Konto-Auswahl
bis zum Timeout. session_write_close() im Run-Endpoint behebt das.
Bearbeiten-Dialog zeigt gespeicherte Konto-Identifier jetzt als Checkboxen;
Abhaken entfernt aus account_filter, alles abgehakt = Reset.
2026-05-22 12:19:16 +02:00
fds2610-bot
995b52fbd3 Feature: FinTS-Direktverbindung und vereinheitlichte Importquellen
- FinTS-Abruf für Comdirect/DKB/Sparkassen via nemiah/php-fints (4.1)
  inkl. photoTAN-Eingabe-Modal und Multi-Konto-Auswahl
- Neue Tabelle bank_sources (CSV/API/FinTS) ersetzt bank_import_formats
  und bank_connections, Backfill in Migration 068
- Symmetrische Verschlüsselung sensibler Felder (PayPal-Signature,
  FinTS-PIN) mit AES-256-GCM, APP_KEY in .env
- Routes /bank/fints* → /bank/direkt*; "+ Neue Bank…"-Dialog erlaubt
  freie API/FinTS-Anbieter
- Scripts/encrypt_bank_secrets.php als idempotenter Migrations-Helfer
- Neue Tests 36 (Crypto) und 37 (BankSource)
2026-05-22 07:17:00 +02:00
fds2610-bot
aa9ccd1207 Feature: Bank-Import mit konfigurierbaren Formaten, Buchungstext-Templates und Dublettenprüfung
Fix: Dublettenprüfung verwendet nur (buchungstag, wertstellung, wert) ohne buchungstext,
da Vorlagenänderungen sonst zu falschen Duplikaten führen.
2026-05-17 13:47:16 +02:00
fds2610-bot
3132196ad6 Refactor: Code-Qualität, Sicherheit und Konsistenz 2026-05-16 07:30:46 +02:00
fds2610-bot
b28ac191fa Feature: UStVA Kz 83 = ust81 + ust89 - Kz66 - Kz61 (nicht mehr kontobasiert) 2026-05-14 19:22:42 +02:00
fds2610-bot
8bccd17d38 Fix: Test 27 prüft Delta statt Absolutwert für Kz 81/83 (prod-fest) 2026-05-14 19:01:59 +02:00
fds2610-bot
3235030305 Feature: UStVA Kz 81/89 auf volle Euro abgerundet, Darstellung mit ,- 2026-05-14 18:58:12 +02:00
fds2610-bot
88aecd86c2 Refactor: UStVA auf 5-Kennzahlen-Schema vereinfacht (Kz 81/89/66/61/83) 2026-05-14 18:26:41 +02:00
fds2610-bot
31515bb7f4 Fix: UStVA-Zusammenfassung Kz 91 ergänzen, Kz-69-Formel korrekt 2026-05-10 16:39:47 +02:00
fds2610-bot
d05e9991bd Feature: ig. Erwerb 19 % ReverseCharge via Kindzeilen 1574/1774 2026-05-10 16:23:14 +02:00
fds2610-bot
55c02b54de Feature: USt-Buchungszeilen für Ausgangsrechnungen einführen
- Migration 046: ustva_kz='83'/'84' für Konten 1776/1771, Bestandsmigration für Einnahme-Buchungen
- Booking::create(): USt-Kindzeile auf 1771/1776 für Einnahmen mit 7/19 % (analog VSt)
- UstvaCalculator: Kz 83/84 kontobasiert via 1771/1776, KZ_ACCOUNT_MAP aktualisiert
- Invoice::cancel(): nur Hauptbuchungen direkt stornieren (parent_booking_id IS NULL)
- Tests 10, 27 angepasst; Test 29 neu
2026-05-10 15:11:00 +02:00
fds2610-bot
d3a6c379c9 Feature: Vorsteuerkonten 1571/1576 aktivieren, VSt-Buchungszeilen einführen
- Migration 044: Konten 1574 (VSt i.g.E. 19%) und 1774 (USt i.g.E. 19%) anlegen
- Migration 045: Konten 1571/1576 anlegen, ustva_kz='61'/'62' setzen,
  altes DATEV-Routing (ustva_kz '61'/'62' auf Betriebsausgabe-Konten) entfernen,
  parent_booking_id-Spalte, VSt-Buchungszeilen für Bestandsbuchungen migrieren
- Booking::create(): automatisch VSt-Zeile auf 1576/1571 für Ausgaben mit 7/19 %
- Booking::reverse(): VSt-Zeilen beim Storno mitaufheben (reversed_by setzen)
- BookingController::destroy(): VSt-Kindzeilen beim Löschen (Testmodus) mit löschen
- UstvaCalculator: Kz 61/62 jetzt kontobasiert via 1576/1571 (betrag_netto),
  Step 2 (buchungsbasiert via ust_satz) entfernt
- Beleg::all/find: betrag_brutto-Aggregation und Suche schließen VSt-Zeilen aus
- Tests 12, 18 angepasst; Test 28 neu
2026-05-10 14:45:16 +02:00
fds2610-bot
994eb95f70 Feature: Zahlungs-Modal in Rechnungsdetailansicht + Invoice::createBookingsFromLines() 2026-05-05 15:14:43 +02:00
fds2610-bot
99cf3dd25b Test: Stornorechnung End-to-End-Verifikation für UStVA und EÜR 2026-05-05 13:54:07 +02:00