CI / backend-tests (push) Failing after 0s
- ORM-Modelle: Bereich, Kategorie, Standort, Objekttyp, Material (Prompt 06/07),
minimales Objekt-Modell (voll ausgebaut erst Sprint 2), Zustaendigkeit/
Kontrollverantwortung
- Admin-API 7a: GET/POST Stammdaten-Endpunkte, PATCH Material, Benutzerverwaltung
(anlegen/Rollen ändern), Zuständigkeits-/Kontrollverantwortungs-CRUD
- Vererbungslogik E2 als eigener Service (app/services/zustaendigkeit.py):
Standort-Zuordnung vererbt sich auf alle Objekte, Objekt-Zeile ist Vereinigung
statt Ersatz - GET /zustaendigkeiten/benutzer/{id}/objekte exponiert das
- Tests: Stammdaten-CRUD + Rollenrechte, Benutzerverwaltung (inkl. 409 bei
Login-Duplikat), E2-Vererbungslogik (Standort-only, Standort+Objekt-Vereinigung,
End-to-End über den Endpunkt)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L85hmKbvX7Cqkq47KnQhFt
36 lines
771 B
Python
36 lines
771 B
Python
from pydantic import BaseModel, ConfigDict
|
|
|
|
from app.models.auth import RolleTyp
|
|
|
|
|
|
class BenutzerCreate(BaseModel):
|
|
name: str
|
|
login: str
|
|
passwort: str
|
|
rollen: list[RolleTyp] = []
|
|
|
|
|
|
class BenutzerRead(BaseModel):
|
|
model_config = ConfigDict(from_attributes=True)
|
|
id: int
|
|
name: str
|
|
login: str
|
|
aktiv: bool
|
|
rollen: list[str]
|
|
|
|
@classmethod
|
|
def from_orm_benutzer(cls, benutzer) -> "BenutzerRead":
|
|
return cls(
|
|
id=benutzer.id,
|
|
name=benutzer.name,
|
|
login=benutzer.login,
|
|
aktiv=benutzer.aktiv,
|
|
rollen=benutzer.rollen_namen,
|
|
)
|
|
|
|
|
|
class BenutzerUpdate(BaseModel):
|
|
name: str | None = None
|
|
aktiv: bool | None = None
|
|
rollen: list[RolleTyp] | None = None
|