Commit graph

77 commits

Author SHA1 Message Date
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
4fae43970b Fix: Undefined-Array-Key-Warning bei Buchungsvorlagen ohne Standard-Lieferant 2026-06-11 19:48:59 +02:00
fds2610-bot
af83ae8592 Feature: E-Mail-Betreff und -Text pro Kunde statt global
- Felder mail_subject_template / mail_body_template in customers-Tabelle
- Kundenformular um E-Mail-Vorlage-Abschnitt erweitert
- EmailService verwendet Kundenvorlage mit Fallback auf Standardtext
- Globale E-Mail-Text-Einstellung in Einstellungen entfernt
- Migration 082: neue Spalten in customers
2026-05-30 14:22:57 +02:00
fds2610-bot
3fe5015027 Feature: Buchungsvorlagen – Bankbuchung verknüpfen, Zahldatum, Standard-Lieferant
- Vorlagenbuchung verknüpft jetzt korrekt die Bankbuchung (bank_tx_id)
- Buchungs-Redirect bleibt nach Vorlagenbuchung auf dem Beleg
- Zahldatum (Wertstellung der Bankbuchung) im Vorlagendialog neben Belegdatum
- USt-Felder im Vorlagendialog als Text (nicht mehr als editierbare Inputs)
- Standard-Lieferant pro Vorlage speicherbar; wird im Buchungsdialog vorbelegt
- Migration 081: spalte standard_lieferant in buchungsvorlagen
2026-05-30 14:22:48 +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
5546c1a9e7 Bugfixes und Kleinigkeiten Anlagegüter 2026-05-24 15:22:18 +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
4eb622fa7d Fix: Belegsumme und Bankzuordnung nach Storno korrekt berechnen 2026-05-23 15:23:56 +02:00
fds2610-bot
07671b520b Fix: tan_mode_id in BankSource-Whitelist ergänzt 2026-05-23 13:54:29 +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
b42758eb6e Feature: Drag-and-Drop Reihenfolge der Direktverbindungs-Kacheln
- Migration 071 ergänzt bank_sources.sort_order
- Drag-Handle (⠿) oben links jeder Kachel
- Gezogene Kachel hängt am Mauszeiger, Ursprung mit lila Rahmen
- Blauer Strich im Gap markiert die Einfügeposition
- Reihenfolge wird per AJAX nach /bank/direkt/_order persistiert
2026-05-22 09:24:56 +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
93d6aacbae Feature: Lieferantenname im Buchungsjournal unter Belegnr. anzeigen und in Suche einbeziehen 2026-05-15 20:47:17 +02:00
fds2610-bot
4fb0b21a90 Feature: Bank-Zuordnung zeigt Ausgangsrechnungen inkl. Rechnungen ohne Beleg
- Eingabe-Spalte aus Beleg-Liste entfernt (alloc_betrag als Hidden-Field)
- Beleg-Liste nach Datum neu->alt sortiert
- Ausgangsrechnungen ohne Bank-Link in offene Belege aufgenommen
- Rechnungen mit fehlendem Beleg (beleg_id IS NULL) werden angezeigt
- Beim Verknüpfen solcher Rechnungen wird Beleg-PDF automatisch erstellt
2026-05-15 19:09:45 +02:00
fds2610-bot
700dc2952f Fix: betrag_brutto in Beleg-Metadaten nach jeder Buchung aktualisieren 2026-05-15 18:20:12 +02:00
fds2610-bot
702b0e4664 Feature: Bankbuchung auf mehrere Belege aufteilen mit Restsaldo und Status teilweise 2026-05-15 17:30:31 +02:00
fds2610-bot
ce7a64534b Feature: Bankbuchungs-Badge in Beleganzeige unterhalb der Buchungszeilen 2026-05-15 17:12:02 +02:00
fds2610-bot
d7cc7c2661 Feature: Gebuchte Bankbuchungen verlinken auf Beleg; Belegnummer in Statuszeile 2026-05-15 17:09:35 +02:00
fds2610-bot
aa0dd01e66 Fix: Dateiname-Check entfernt – Dublettenprüfung übernimmt die Schutzfunktion 2026-05-15 17:05:05 +02:00
fds2610-bot
eede667809 Feature: Dublettenprüfung beim Bank-Import mit interaktiver Bestätigungsseite 2026-05-15 16:58:49 +02:00
fds2610-bot
d26bbfc37b Fix: Bank-Import-Duplikate durch Transaktion, UNIQUE-Constraint und Dateiname-Prüfung verhindern 2026-05-15 16:51:38 +02:00
fds2610-bot
99aa823d0f Feature: Beleg-Vorschau-Tooltip in Bank-Zuordnung, Größe in Einstellungen 2026-05-14 20:14:53 +02:00
fds2610-bot
02c642e53e Feature: Bank buchen – Import, Liste, Detail, Beleg-Verknüpfung 2026-05-14 19:56:26 +02:00
fds2610-bot
6c4faec3bd Feature: UStVA Kz 61 = ust89 (ReverseCharge-Symmetrie); Fix: Storno überträgt steuerart 2026-05-14 19:13:04 +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
e62fbe9efe Fix: Beleg referenziert Rechnung via invoice_id, serveFile leitet auf Rechnungs-PDF weiter 2026-05-05 15:29:50 +02:00
fds2610-bot
994eb95f70 Feature: Zahlungs-Modal in Rechnungsdetailansicht + Invoice::createBookingsFromLines() 2026-05-05 15:14:43 +02:00
fds2610-bot
3b235db4f7 Fix: Stornorechnung – Syntaxfehler PDF, Betreff vom Original, Referenzzeile unter Titel 2026-05-05 09:16:03 +02:00
fds2610-bot
38cc8f885e Feature: Stornorechnung gemäß §14 UStG implementiert 2026-05-05 09:11:46 +02:00
fds2610-bot
c50e41e57b Feature: E-Mail-Versand Rechnungen – Texte, Status Finalisiert, SMTP-Einstellungen 2026-04-28 15:07:47 +02:00
fds2610-bot
4485acbe1f Feature: Rechnungsversand per E-Mail (eigener SMTP-Client, kein PHPMailer) 2026-04-28 14:22:38 +02:00
fds2610-bot
3954e8a4b0 Feature: Rechnungsnummernformat auf PPPYYYYMM-nn umgestellt 2026-04-27 13:48:10 +02:00
fds2610-bot
84cbbe8401 Fix: Rechnungsansicht überarbeitet (Layout, Schriftgrößen, Summenblock, Enter-Verhalten) 2026-04-27 13:11:57 +02:00
fds2610-bot
77631a3e5a Fix: Eigenanteil als Einnahme, Ollama-Modell auf qwen3-vl, KI-Analyse-Autostart 2026-04-26 21:17:02 +02:00
fds2610-bot
41d64dc6f6 Fix #57: Lineare Abschreibungstabelle für Anlagegüter 2026-04-26 18:07:41 +02:00
fds2610-bot
491f5c6dc5 Fix #56: Leistungszeitraum als freies Textfeld (von/bis-Felder entfernt) 2026-04-26 13:03:11 +02:00
fds2610-bot
7de93f14b8 Fix #51: Dezimalkomma in Brutto-Suche wird in Dezimalpunkt umgewandelt 2026-04-26 12:02:25 +02:00
fds2610-bot
308895419e Fix #54: Löschreihenfolge korrigiert – invoices vor belege löschen (FK-Constraint) 2026-04-26 12:02:21 +02:00
fds2610-bot
eb41c910fc Fix #54: Löschen-Button in Rechnungsübersicht, nur im Testmodus sichtbar 2026-04-26 11:07:14 +02:00
fds2610-bot
672c657bbe Fix #52: Kunden-Nummernpräfix in den Einstellungen konfigurierbar (Default: K-) 2026-04-26 11:04:58 +02:00