diag: Alphabetischen Bereich der Bankliste zeigen
815 geladene Banken bei ueber 2500 verfuegbaren, und alle Beispiele beginnen mit A oder B – das deutet auf eine abgeschnittene Liste, nicht auf einen falschen Suchbegriff. Die Sandbox-Vermutung ist damit widerlegt: "Aachener Bank" und "BBVA" sind echte Institute. Die Antwort nennt jetzt den Bereich von/bis und alle vorhandenen Anfangsbuchstaben. Fehlen N und R, ist die Sache entschieden und die Abfrage braucht Blaettern – dann suche ich nicht laenger am falschen Ende. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -93,9 +93,23 @@ def banken(db: Session, user: User, land: str | None = None,
|
||||
# gleich aus, egal ob die Liste leer kam, der Suchbegriff nicht passte –
|
||||
# oder die Anwendung als Sandbox angelegt wurde und lauter Test-Institute
|
||||
# liefert. An der Kostprobe sieht man Letzteres sofort.
|
||||
beispiele = sorted({str(b.get("name")) for b in roh if b.get("name")})[:8]
|
||||
return {"gesamt": len(roh), "treffer": treffer[:MAX_TREFFER],
|
||||
"gekuerzt": len(treffer) > MAX_TREFFER, "beispiele": beispiele}
|
||||
# Beispiele ueber den ganzen Bereich streuen, nicht nur den Anfang zeigen.
|
||||
# Endet die Liste alphabetisch bei „B", ist sie abgeschnitten – und man
|
||||
# sucht sonst ewig nach einer Bank, die schlicht nicht mitgeliefert wurde.
|
||||
namen = sorted({str(b.get("name")) for b in roh if b.get("name")})
|
||||
beispiele = (namen[:3] + namen[len(namen) // 2: len(namen) // 2 + 2] + namen[-3:]
|
||||
if len(namen) > 8 else namen)
|
||||
return {
|
||||
"gesamt": len(roh),
|
||||
"treffer": treffer[:MAX_TREFFER],
|
||||
"gekuerzt": len(treffer) > MAX_TREFFER,
|
||||
"beispiele": beispiele,
|
||||
"von": namen[0] if namen else None,
|
||||
"bis": namen[-1] if namen else None,
|
||||
# Fängt überhaupt eine Bank mit diesen Buchstaben an? Wenn nicht, fehlt
|
||||
# der Teil des Alphabets, und der Suchbegriff ist unschuldig.
|
||||
"anfangsbuchstaben": sorted({n[:1].upper() for n in namen}),
|
||||
}
|
||||
|
||||
|
||||
def starte_verbindung(db: Session, user: User, aspsp_name: str, land: str,
|
||||
|
||||
Reference in New Issue
Block a user