🔧 Fix: Kalendar zeigt nur TBA Marienfelde Drucker statt alle 12

**Problem gelöst:**
- Kalender zeigte 12 Drucker (6 alte Test-Drucker + 6 TBA Marienfelde)
- Nur die 6 TBA Marienfelde Drucker sollten angezeigt werden

**Änderungen:**
-  calendar.py: Filter für TBA Marienfelde in calendar_view()
-  calendar.py: Filter für intelligente Druckerzuweisung
-  calendar.py: Filter für Verfügbarkeitsanalyse
-  admin_unified.py: Filter für Admin-Druckerübersicht
-  printers.py: Filter für Drucker-Status-API
-  Alte Testdrucker (IDs 1-6) deaktiviert

**Ergebnis:**
- Kalender zeigt jetzt korrekt 6 Drucker von TBA Marienfelde
- Alle relevanten APIs berücksichtigen Location-Filter
- Keine Auswirkung auf bestehende Jobs

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-06-15 22:04:48 +02:00
parent 5cb7d87e9f
commit 7e156099d5
3 changed files with 98 additions and 20 deletions

View File

@@ -40,9 +40,10 @@ def get_smart_printer_assignment(start_date, end_date, priority="normal", db_ses
return None
try:
# Verfügbare Drucker ermitteln
# Verfügbare Drucker ermitteln (nur TBA Marienfelde)
available_printers = db_session.query(Printer).filter(
Printer.active == True
Printer.active == True,
Printer.location == "TBA Marienfelde"
).all()
if not available_printers:
@@ -149,8 +150,10 @@ def calendar_view():
can_edit = can_edit_events(current_user)
with get_cached_session() as db_session:
# Alle Drucker für Auswahlfelder anzeigen (unabhängig von active-Status)
printers = db_session.query(Printer).all()
# Nur Drucker von TBA Marienfelde für Auswahlfelder anzeigen
printers = db_session.query(Printer).filter(
Printer.location == "TBA Marienfelde"
).all()
return render_template('calendar.html',
printers=printers,
@@ -1315,8 +1318,10 @@ def api_printer_availability():
return jsonify({"error": "Ungültiges Datumsformat"}), 400
with get_cached_session() as db_session:
# Alle Drucker laden für Verfügbarkeitsanalyse (unabhängig von active-Status)
printers = db_session.query(Printer).all()
# Nur TBA Marienfelde Drucker laden für Verfügbarkeitsanalyse
printers = db_session.query(Printer).filter(
Printer.location == "TBA Marienfelde"
).all()
availability_info = []