From f50b28a3877f07d9db73df291ef75aca2ab0c4f8 Mon Sep 17 00:00:00 2001 From: Mathias Scheider Date: Fri, 11 Sep 2026 08:59:55 +0200 Subject: [PATCH] comdirect ingest: simpler classes --- src/models.py | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/models.py b/src/models.py index 441f3f6..b2597bf 100644 --- a/src/models.py +++ b/src/models.py @@ -127,8 +127,12 @@ class ComdirectBase(BaseModel): return _parse_decimal_german(decimal_str) -class ComdirectBaseBook(ComdirectBase): +class ComdirectGiro(ComdirectBase): date_book: date | None = Field(alias="Buchungstag", examples=["07.09.2026"]) + type: str = Field( + alias="Vorgang", examples=["Lastschrift / Belastung", "Kartenumsatz"] + ) + text: str = Field(alias="Buchungstext") @field_validator("date_book", mode="before") @classmethod @@ -136,14 +140,7 @@ class ComdirectBaseBook(ComdirectBase): return _parse_date_german(date_str) -class ComdirectGiro(ComdirectBaseBook): - type: str = Field( - alias="Vorgang", examples=["Lastschrift / Belastung", "Kartenumsatz"] - ) - text: str = Field(alias="Buchungstext") - - -class ComdirectCreditCard(ComdirectBaseBook): +class ComdirectCreditCard(ComdirectGiro): # "Buchungstag";"Umsatztag";"Vorgang";"Referenz";"Buchungstext";"Umsatz in EUR"; date_book: date | None = Field(alias="Buchungstag", examples=["07.09.2026"]) date_val: date | None = Field(alias="Umsatztag", default=None)