fix: "Nicht in Auswertungen einrechnen" galt fuer Sparen nicht
Wer den Haken an einer Kategorie setzt, sagt damit ausdruecklich: nicht ins Budget, nicht ins Dashboard, nicht in die Statistik. Die Sparen-Auswertung las ihn nicht – das Geld stand danach im Ringdiagramm, obwohl der Nutzer genau das abbestellt hatte. Beide Uebertrags-Wege halten sich jetzt daran, der am Stueck wie der aus zwei verknuepften Buchungen. Der Haken an der Kategorie gewinnt; ein Sparziel am Konto darf ihn nicht stillschweigend aushebeln. Und weil beides zusammen keinen Sinn ergibt, sagt es das Konto-Formular jetzt auch: Waehlt man dort eine Kategorie mit Haken, steht darunter, dass so nichts im Budget erscheinen wird. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
e0688ab95e
commit
b69c383a72
@@ -300,6 +300,10 @@ def expense_rows(db: Session, user: User, label: str, start: date, end: date,
|
||||
# Transfers auf Sparen/Depot zählen (sofern nicht auf "neutral" gesetzt) als
|
||||
# budgetierte Ausgabe. Gegen welche Kategorie, sagt die Buchung selbst –
|
||||
# und wenn sie schweigt, das Zielkonto.
|
||||
#
|
||||
# Eine Kategorie mit "Nicht in Auswertungen einrechnen" bleibt auch hier
|
||||
# aussen vor. Der Haken an der Kategorie ist eine ausdrueckliche Ansage des
|
||||
# Nutzers; ein Sparziel am Konto darf sie nicht stillschweigend aushebeln.
|
||||
transfers = (
|
||||
db.query(Transaction)
|
||||
.filter(
|
||||
@@ -321,7 +325,7 @@ def expense_rows(db: Session, user: User, label: str, start: date, end: date,
|
||||
if to_acc.savings_category_id is None and to_acc.type not in SAVINGS_ACCOUNT_TYPES:
|
||||
continue
|
||||
kategorie = t.budget_category_id or to_acc.savings_category_id
|
||||
if kategorie is None:
|
||||
if kategorie is None or kategorie in neutral:
|
||||
continue
|
||||
zeilen.append((kategorie, t, _to_base(db, t.amount_eur_cents, base, t.date)))
|
||||
|
||||
@@ -329,7 +333,7 @@ def expense_rows(db: Session, user: User, label: str, start: date, end: date,
|
||||
# Buchungen, wie sie der Bankabruf liefert. Ohne diesen Block bliebe Sparen
|
||||
# ueber ein angebundenes Konto fuer das Budget unsichtbar.
|
||||
for kategorie, t in _spar_uebertraege(db, user, label, start, end):
|
||||
if kategorie is None:
|
||||
if kategorie is None or kategorie in neutral:
|
||||
continue
|
||||
zeilen.append((kategorie, t, _to_base(db, t.amount_eur_cents, base, t.date)))
|
||||
return zeilen
|
||||
|
||||
Reference in New Issue
Block a user