Einkommen/Ausgaben: Basiswert direkt editierbar statt Uebersteuern-Feld
Deploy App / deploy (push) Successful in 57s

Das separate "Uebersteuern"-Feld (amountOverride) konnte 0 nicht von "nicht gesetzt"
unterscheiden und nahm faelschlich 0. Entfernt. Stattdessen ist der Basiswert (amount)
selbst editierbar: ab Phase 2 mit dem fortgeschriebenen Endwert der Vorphase vorbelegt,
aber bewusst aenderbar (Teilzeit/Beförderung/Jobwechsel). Solange nicht geaendert, wird
der Wert 1:1 aus der Vorphase fortgeschrieben (pd.amount ungesetzt -> carry.flowBasis).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-15 13:00:42 +02:00
parent 249debe2f4
commit 5076dcb68f
3 changed files with 17 additions and 22 deletions
+7 -4
View File
@@ -231,11 +231,14 @@ export function computePlan(plan: PlanInput): PlanComputed {
case "INCOME":
case "EXPENSE": {
const idx = num(pd.teuerungsausgleich, phaseInflation);
// Basiswert: Phase 1 = eingegebener Betrag; ab Phase 2 = fortgeschriebener Endwert
// der Vorphase, ausser der Nutzer hat ihn bewusst geaendert (pd.amount gesetzt).
ec.baseValue = carry.hasCarry ? Math.round(carry.flowBasis) : Math.round(num(pd.amount));
let basis: number;
if (!carry.hasCarry) basis = Math.round(num(pd.amount));
else if (typeof pd.amountOverride === "number") basis = Math.round(pd.amountOverride);
else basis = ec.baseValue;
const basis = !carry.hasCarry
? Math.round(num(pd.amount))
: typeof pd.amount === "number"
? Math.round(pd.amount)
: ec.baseValue;
(e.category === "INCOME" ? incomes : expenses).push({ basis, idx, ec });
break;
}