from pydantic import BaseModel, EmailStr, Field, validator from datetime import datetime from typing import Optional # import re from enum import Enum class Status(Enum): COMPLETED = "completed" PARTIAL = "partial" INITIAL = "initial" NO_PROCECED = "no_proceced" INVALID = "invalid" class Operation(Enum): DELETED ="deleted" CREATED ="created" UPDATED ="updated" TRIED ="tried" MOST ="mosted" LESS ="less" MINUS ="minus" CANCELED ="canceled" class AffidavitCreate(BaseModel): operation: Operation = Operation.TRIED user_id: Optional[int] = None description: str adjustment: Optional[str] = None client_id: Optional[int] = None status: Status = Status.INITIAL sing: str = Field(..., description="Firma digital del usuario tomada desde service") class AffidavitUpdate(AffidavitCreate): pass class AffidavitResponse(AffidavitCreate): created_at: datetime updated_at: datetime deleted_at: datetime class messageResponse(BaseModel): message : str