diff --git a/backend/src/tracker/api/routes/ketten.py b/backend/src/tracker/api/routes/ketten.py index 0c653ee..3393c87 100644 --- a/backend/src/tracker/api/routes/ketten.py +++ b/backend/src/tracker/api/routes/ketten.py @@ -60,8 +60,11 @@ def list_ketten( params.append(partei) if suche: - where_clauses.append("k.thema LIKE ?") - params.append(f"%{suche}%") + where_clauses.append( + "(k.thema LIKE ? OR v.aktenzeichen LIKE ? OR v.betreff LIKE ?)" + ) + like = f"%{suche}%" + params.extend([like, like, like]) # Global filter: Ratsperiode (filter on letzte_aktivitaet) per_clause, per_params = periode_date_filter(periode, "k.letzte_aktivitaet") @@ -82,7 +85,7 @@ def list_ketten( where_sql = ("WHERE " + " AND ".join(where_clauses)) if where_clauses else "" total = conn.execute( - f"SELECT COUNT(*) as cnt FROM ketten k {where_sql}", params + f"SELECT COUNT(*) as cnt FROM ketten k LEFT JOIN vorlagen v ON k.ursprung_id = v.id {where_sql}", params ).fetchone()["cnt"] offset = (page - 1) * page_size