feat(org-detail): Max Nutzer inline editierbar, Org-Status in die Kopfzeile

Zwei Verbesserungen auf Nutzer-Rückmeldung.

- Max Nutzer war nach dem Anlegen einer Lizenz nirgends mehr änderbar.
  In der aktiven Lizenz-Zeile ist es jetzt ein Zahlenfeld mit
  Sofort-Speicherung (der generische Lizenz-Updater akzeptiert max_users
  mit Prüfung 1 bis 1000), die Limit-Anzeige über der Nutzerliste zieht
  mit.
- "Status" (Lizenz) direkt neben "Org-Status" war verwirrend. Der
  Org-Status sitzt jetzt als Umschalter in der Kopfzeile der
  Organisation (an der Stelle des bisherigen Abzeichens), die Tabelle
  behält nur noch Lizenz-Status und Pipeline-Sprache.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Dieser Commit ist enthalten in:
claude-dev
2026-07-25 15:46:51 +00:00
Ursprung 2c3087e389
Commit f301e22c6b
3 geänderte Dateien mit 45 neuen und 14 gelöschten Zeilen

Datei anzeigen

@@ -199,10 +199,18 @@ async def update_budget(license_id: int, data: dict, request: Request, admin=Dep
if not 1 <= pct <= 100:
raise HTTPException(status_code=400, detail="budget_warning_percent muss zwischen 1 und 100 liegen")
data["budget_warning_percent"] = pct
if "max_users" in data:
try:
mu = int(data["max_users"])
except (TypeError, ValueError):
raise HTTPException(status_code=400, detail="max_users muss eine Zahl sein")
if not 1 <= mu <= 1000:
raise HTTPException(status_code=400, detail="max_users muss zwischen 1 und 1000 liegen")
data["max_users"] = mu
fields = []
values = []
for key in ("token_budget_usd", "credits_total", "cost_per_credit", "budget_warning_percent", "credits_period"):
for key in ("token_budget_usd", "credits_total", "cost_per_credit", "budget_warning_percent", "credits_period", "max_users"):
if key in data:
fields.append(f"{key} = ?")
values.append(data[key])