Testkunden anzeigen funktioniert wieder (so semi)

Dieser Commit ist enthalten in:
2025-06-18 02:18:08 +02:00
Ursprung aea513ac7a
Commit 6a2536e934
2 geänderte Dateien mit 31 neuen und 7 gelöschten Zeilen

Datei anzeigen

@@ -6,7 +6,19 @@
- Customers-Licenses Route funktioniert jetzt korrekt
- Container startet ohne Fehler
### Finale Fixes (18.06.2025 - 02:35 Uhr)
### Finale Fixes (18.06.2025 - 02:45 Uhr)
#### Customers-Licenses Testdaten-Filter
- Problem: `/customers-licenses?show_test=false` zeigte trotzdem alle Kunden (auch Testdaten)
- Ursache: Die SQL-Query in `customers_licenses()` berücksichtigte den `show_test` Parameter nicht
- Lösung:
- `show_test` Parameter aus der URL auslesen
- WHERE-Klausel hinzugefügt: `WHERE (%s OR c.is_test = false)`
- `c.is_test` in SELECT und GROUP BY hinzugefügt
- `show_test` Parameter an Template weitergeben
- Standardverhalten: Nur Produktivdaten werden angezeigt (wenn show_test=false oder nicht gesetzt)
### Bereits gelöste Probleme (18.06.2025 - 02:35 Uhr)
#### Backups Route Fix
- Problem 1: 500 Error bei `/backups` - `url_for('admin.create_backup')` existiert nicht

Datei anzeigen

@@ -195,6 +195,10 @@ def customers_licenses():
import psycopg2
logging.info("=== CUSTOMERS-LICENSES ROUTE CALLED ===")
# Get show_test parameter from URL
show_test = request.args.get('show_test', 'false').lower() == 'true'
logging.info(f"show_test parameter: {show_test}")
try:
# Direkte Verbindung ohne Helper-Funktionen
conn = psycopg2.connect(
@@ -209,7 +213,8 @@ def customers_licenses():
try:
# Hole alle Kunden mit ihren Lizenzen
cur.execute("""
# Wenn show_test=false, zeige nur Nicht-Test-Kunden
query = """
SELECT
c.id,
c.name,
@@ -218,12 +223,16 @@ def customers_licenses():
COUNT(l.id),
COUNT(CASE WHEN l.is_active = true THEN 1 END),
COUNT(CASE WHEN l.is_test = true THEN 1 END),
MAX(l.created_at)
MAX(l.created_at),
c.is_test
FROM customers c
LEFT JOIN licenses l ON c.id = l.customer_id
GROUP BY c.id, c.name, c.email, c.created_at
WHERE (%s OR c.is_test = false)
GROUP BY c.id, c.name, c.email, c.created_at, c.is_test
ORDER BY c.name
""")
"""
cur.execute(query, (show_test,))
customers = []
results = cur.fetchall()
@@ -239,10 +248,13 @@ def customers_licenses():
'license_count': row[4],
'active_licenses': row[5],
'test_licenses': row[6],
'last_license_created': row[7]
'last_license_created': row[7],
'is_test': row[8]
})
return render_template("customers_licenses.html", customers=customers)
return render_template("customers_licenses.html",
customers=customers,
show_test=show_test)
finally:
cur.close()