from datetime import datetime from pydantic import BaseModel, ConfigDict from app.schemas.dokument import DokumentRead from app.schemas.geraet_instanz import GeraetInstanzRead from app.schemas.historie import HistorieRead from app.schemas.mangel import MangelRead from app.schemas.objekt import FahrzeugdetailsRead, ObjektRead from app.schemas.zustaendigkeit import KontrollverantwortungRead class ZustaendigerBenutzer(BaseModel): model_config = ConfigDict(from_attributes=True) id: int name: str quelle: str # "standort" oder "objekt" (Vereinigungslogik Karte 04) class AkteRead(BaseModel): """FILE-001..006: gebündelte Aggregations-Sicht über alle bereits existierenden Teilbereiche einer Ressource (aktuell nur Objekttyp "objekt" - Prompt 24/Backlog- Roadmap sieht perspektivisch weitere Ressourcentypen vor, siehe arbeitskacheln/ 03_digital_file.md).""" objekt: ObjektRead objekttyp_name: str standort_name: str fahrzeugdetails: FahrzeugdetailsRead | None zustaendige_benutzer: list[ZustaendigerBenutzer] kontrollverantwortung: list[KontrollverantwortungRead] letzte_kontrolle_am: datetime | None historie: list[HistorieRead] dokumente: list[DokumentRead] geraete: list[GeraetInstanzRead] maengel: list[MangelRead]