Files
MABEA/backend/app/api/v1/api.py
T
patrickandClaude Sonnet 5 777bf5eaa5
CI / backend-tests (push) Failing after 3m17s
CI / frontend-build (push) Successful in 21s
feat(flutter): öffentliche Download-Seite für Scan-App-Feldtest
/app zeigt QR-Code + Download-Button + Installationsanleitung ohne
Login (Henne-Ei: die App ist der Login-Client). Backend liefert
GET /app-download/info und /app-download/qr.png (bewusst ohne Auth),
liest version.json vom lokalen downloads_dir, QR über bestehenden
services/qr_png.py. Admin-Hinweis verlinkt jetzt auf /app statt
Version/URL zu duplizieren.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV
2026-09-10 20:51:52 +02:00

89 lines
3.5 KiB
Python

from fastapi import APIRouter
from app.api.v1.endpoints import (
akte,
app_download,
ausgabe,
auth,
benutzer,
custody,
dashboard,
dokument,
einsatz,
eskalation,
fehlbestaende,
geraet_instanz,
health,
historie,
import_export,
inventur,
kontrollen,
lager,
lagerbewegung,
mangel,
materialset,
notiz,
objekte,
permission,
personal,
pruefung,
readiness_regel,
readiness_snapshot,
ressourcenbuchung,
sollmengen_gruppe,
stammdaten,
suche,
systemeinstellung,
tankbuch,
verleih,
vorlagen,
wartung,
zustaendigkeit,
)
api_router = APIRouter()
api_router.include_router(health.router, tags=["health"])
api_router.include_router(app_download.router, tags=["app_download"])
api_router.include_router(auth.router, tags=["auth"])
api_router.include_router(stammdaten.router, tags=["stammdaten"])
api_router.include_router(benutzer.router, tags=["benutzer"])
api_router.include_router(zustaendigkeit.router, tags=["zustaendigkeit"])
api_router.include_router(vorlagen.router, tags=["vorlagen"])
# import_export VOR objekte/geraet_instanz registriert: /objekte/export und
# /geraete/export würden sonst von den generischen /objekte/{objekt_id}- bzw.
# /geraete/{geraet_id}-Routen abgefangen (Pfad passt, Typkonvertierung von
# "export" zu int/UUID schlägt fehl -> 422 statt Weitersuche - anders als bei
# Starlettes {param:int}-Konvertern reicht ein reiner Namensparameter nicht,
# um an einer nicht passenden Route vorbeizukommen).
api_router.include_router(import_export.router, tags=["import_export"])
api_router.include_router(objekte.router, tags=["objekte"])
api_router.include_router(kontrollen.router, tags=["kontrollen"])
api_router.include_router(fehlbestaende.router, tags=["fehlbestaende"])
api_router.include_router(eskalation.router, tags=["eskalation"])
api_router.include_router(historie.router, tags=["historie"])
api_router.include_router(geraet_instanz.router, tags=["geraet_instanz"])
api_router.include_router(pruefung.router, tags=["pruefung"])
api_router.include_router(custody.router, tags=["custody"])
api_router.include_router(dashboard.router, tags=["dashboard"])
api_router.include_router(personal.router, tags=["personal"])
api_router.include_router(mangel.router, tags=["mangel"])
api_router.include_router(materialset.router, tags=["materialset"])
api_router.include_router(lagerbewegung.router, tags=["lagerbewegung"])
api_router.include_router(dokument.router, tags=["dokument"])
api_router.include_router(notiz.router, tags=["notiz"])
api_router.include_router(permission.router, tags=["permission"])
api_router.include_router(akte.router, tags=["akte"])
api_router.include_router(lager.router, tags=["lager"])
api_router.include_router(ausgabe.router, tags=["ausgabe"])
api_router.include_router(wartung.router, tags=["wartung"])
api_router.include_router(suche.router, tags=["suche"])
api_router.include_router(tankbuch.router, tags=["tankbuch"])
api_router.include_router(verleih.router, tags=["verleih"])
api_router.include_router(ressourcenbuchung.router, tags=["ressourcenbuchung"])
api_router.include_router(readiness_snapshot.router, tags=["readiness_snapshot"])
api_router.include_router(readiness_regel.router, tags=["readiness_regel"])
api_router.include_router(einsatz.router, tags=["einsatz"])
api_router.include_router(sollmengen_gruppe.router, tags=["sollmengen_gruppe"])
api_router.include_router(inventur.router, tags=["inventur"])
api_router.include_router(systemeinstellung.router, tags=["systemeinstellung"])