fix: "Keine Konten" nennt jetzt die Ursache

Drei verschiedene Faelle sahen alle gleich aus: Die Bank schickte nichts, sie
schickte Eintraege ohne Kennung (die still verworfen wurden), oder alle Konten
waren schon bekannt – Letzteres meldete faelschlich "0 Konten", obwohl alles
in Ordnung war.

Die Antwort unterscheidet jetzt uebermittelt / neu / bekannt / ohne_kennung.
Die Rueckkehr-Seite zeigt bei null nutzbaren Konten den passenden Hinweis: Im
eingeschraenkten Betrieb gibt eine Bank nur heraus, was zuvor im Control Panel
unter "Activate by linking accounts" verknuepft wurde.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Guido
2026-08-26 22:32:23 +02:00
co-authored by Claude Opus 5
parent 8fa4ac5ef4
commit 277fe8b0e2
5 changed files with 81 additions and 10 deletions
+14 -2
View File
@@ -34,7 +34,7 @@ export default function BankRueckkehr() {
return;
}
api.bankCallback(state, code)
.then((r) => setStand({ laeuft: false, konten: r.konten }))
.then((r) => setStand({ laeuft: false, ...r }))
.catch((e) => setStand({ laeuft: false, fehler: e.message }));
// Nur einmal ausführen: Der Code lässt sich kein zweites Mal einlösen.
// eslint-disable-next-line react-hooks/exhaustive-deps
@@ -56,13 +56,25 @@ export default function BankRueckkehr() {
</div>
)}
{!stand.laeuft && !stand.fehler && (
{!stand.laeuft && !stand.fehler && stand.konten > 0 && (
<div className="alert" style={{ display: "block" }}>
<strong>{t("bankReturn.ok", { n: stand.konten })}</strong>
<p className="muted small">{t("bankReturn.next")}</p>
</div>
)}
{!stand.laeuft && !stand.fehler && stand.konten === 0 && (
// Drei verschiedene Ursachen sahen bisher alle gleich aus.
<div className="alert error" style={{ display: "block" }}>
<strong>{t("bankReturn.noAccounts")}</strong>
<p className="muted small">
{stand.ohne_kennung > 0
? t("bankReturn.noAccountsDropped", { n: stand.ohne_kennung })
: t("bankReturn.noAccountsHint")}
</p>
</div>
)}
<div className="btn-pair" style={{ marginTop: "var(--sp-3)" }}>
<Link className="btn primary" to="/settings">
<Icon name="settings" size={15} /> {t("bankReturn.toSettings")}