Lesbare Empfänger-Namen statt Rohtext (#4) #11
No reviewers
Labels
No labels
diskussion
feature-idee
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
budmin/finanzplaner!11
Loading…
Reference in a new issue
No description provided.
Delete branch "feature/4-merchant-name-cleanup"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Schließt #4.
Was
Neue Spalte
merchant_name, die beim Import perextractMerchantName()aus dem rohen comdirect-buchungstextabgeleitet wird. Abgedeckt sind alle Fälle aus den Beispielen, die du an #4 angehängt hast:Auftraggeber: X Buchungstext: ...→XEmpfänger: X Kto/IBAN: ...— auch ohne Leerzeichen vorKto/IBAN:(z.B."Jasmin KreinKto/IBAN:")PP.xxxx.PP/.-Muster gezogen (z.B. "Apple Se rvices" statt "PayPal")Buchungstext:, inkl. Erhalt von Rechtsform-Zusätzen wie, INCDer rohe
buchungstextbleibt erhalten (Tooltip beim Hover).merchant_nameist:Empfänger) für Kategorisierungs-Regeln nutzbar, zusätzlich zu Buchungstext/VorgangTests
11 Unit-Tests für
extractMerchantName(backend/src/services/merchantName.test.ts), inkl. aller oben genannten Fälle 1:1 aus deinen Beispielen. Zusätzlich end-to-end gegen einen laufenden Server verifiziert (Import → Regel-Treffer aufmerchant_name→ manuelles Überschreiben).DB-Migration
merchant_namewird über ein idempotentesALTER TABLE ... ADD COLUMNergänzt (ensureColumnindb.ts), bestehende Datenbanken brechen also nicht. Dierules.field-CHECK-Constraint wurde um'merchant_name'erweitert — das greift nur bei neu angelegten DBs (SQLite kann CHECK-Constraints nicht per ALTER ändern), was hier unkritisch ist, da noch keine Deployment-Daten existieren.mentioned in merge request !12
mentioned in commit
602c9e88a6mentioned in commit
dbc3fe8d17