from datetime import datetime from typing import Annotated from uuid import UUID from src.models.pydantic_models.model import Base from pydantic import Field class ReportCreate(Base): filename:Annotated[str,Field(..., min_length=2, max_length=255, description="name of the report")] doc_date:Annotated[datetime, Field(..., description="ts of the report")] status:Annotated[str, Field(..., max_length=64, description="status of the report (uploaded,finalized, failed)")] user:Annotated[UUID, Field(..., description="id of the user author")] market:Annotated[str, Field(..., max_length=64,description="name of the market")] class ReportOut(Base): filename:Annotated[str,Field(..., min_length=2, max_length=255, description="name of the report")] doc_date:Annotated[datetime, Field(..., description="ts of the report")] status:Annotated[str, Field(..., max_length=64, description="status of the report (uploaded,finalized, failed)")] user:Annotated[UUID, Field(..., description="id of the user author")] market:Annotated[str, Field(..., max_length=64, description="name of the market")] class MarketCreate(Base): name:Annotated[str, Field(..., max_length=64,description="certificate or declaration")] class MarketOut(Base): name:Annotated[str, Field(..., max_length=64,description="certificate or declaration")]