Web-M1-Ausbau: JSON-Gaesteliste, GA-Verlauf, Python-Serversteuerung, tische.ini-Upload
- bestellung.xml -> bestellung.json: neuer JSONConfig (loest XMLConfig ab), alle work-Beispiele konvertiert, Doku (CLAUDE/README/dateiformate) umgestellt - ga.py: Beobachtungsobjekt Entwicklung zeichnet den Loesungsverlauf auf, neuer Schalter --show-development erzeugt Entwicklung.svg (beste/mittlere/ schlechteste Wertigkeit ueber die Zyklus-Aktionen) - web/main.py: neuer Endpunkt /tische-datei (tische.ini-Upload, ast.literal_eval), Frontend kann jetzt eine tische.ini laden - libs/webserver.py: plattformunabhaengige start/stop/status-Steuerung der Web-Testinstanz (ersetzt run_web_helper.ps1), raeumt auch verwaiste --reload-Prozessbaeume zuverlaessig auf - Sicherheit/Modernisierung: eval() -> ast.literal_eval in Tische/Strafliste, sicherer Mini-Auswerter fuer die String-Ausdruecke in zyklus.cfg, defaultdict(set) in Plaetze - SVG: Tischnummer fett zentriert im Tischkreis statt "Tisch x" darueber - Tests: JSONConfig, Entwicklung und der Zyklus-Auswerter abgedeckt (9 Tests) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+2
-2
@@ -9,7 +9,7 @@ Endpunkte (siehe auch /docs — interaktive Swagger-UI von FastAPI):
|
||||
POST /sitzung — legt eine Arbeits-Session an
|
||||
GET /sitzung/{id} — Status der Session
|
||||
POST /sitzung/{id}/tische — Tisch-Layout als JSON (Ersatz tische.ini)
|
||||
POST /sitzung/{id}/personen — Gaesteliste als CSV-Upload (Ersatz bestellung.xml)
|
||||
POST /sitzung/{id}/personen — Gaesteliste als CSV-Upload (Ersatz bestellung.json)
|
||||
POST /sitzung/{id}/berechnen — startet die GA-Optimierung
|
||||
GET /sitzung/{id}/ergebnis — Ergebnis als JSON (Tische -> Personen)
|
||||
GET /sitzung/{id}/ergebnis.svg — Ergebnis als SVG (alsSVG aus dem Kern)
|
||||
@@ -348,7 +348,7 @@ def TischDateiHochladen(SitzungsId: str, datei: UploadFile = File(...)):
|
||||
|
||||
@app.post( '/sitzung/{SitzungsId}/personen' )
|
||||
def PersonenHochladen(SitzungsId: str, datei: UploadFile = File(...)):
|
||||
"""Gaesteliste als CSV hochladen (Ersatz fuer bestellung.xml);
|
||||
"""Gaesteliste als CSV hochladen (Ersatz fuer bestellung.json);
|
||||
Format siehe libs/CSVConfig.py"""
|
||||
S = _GibSession( SitzungsId )
|
||||
Rohdaten = datei.file.read()
|
||||
|
||||
Reference in New Issue
Block a user