Files
ctms/backend/app/schemas/verification.py
T
2025-12-16 19:16:50 +08:00

39 lines
973 B
Python

import uuid
from datetime import date, datetime
from typing import Optional
from pydantic import BaseModel, ConfigDict, Field
class VerificationCreate(BaseModel):
site_id: uuid.UUID
subject_id: uuid.UUID
level: str
percent: int = Field(ge=0, le=100)
last_verified_at: Optional[date] = None
verifier_id: Optional[uuid.UUID] = None
notes: Optional[str] = None
class VerificationUpdate(BaseModel):
percent: Optional[int] = Field(default=None, ge=0, le=100)
last_verified_at: Optional[date] = None
verifier_id: Optional[uuid.UUID] = None
notes: Optional[str] = None
class VerificationRead(BaseModel):
id: uuid.UUID
study_id: uuid.UUID
site_id: uuid.UUID
subject_id: uuid.UUID
level: str
percent: int
last_verified_at: Optional[date]
verifier_id: Optional[uuid.UUID]
notes: Optional[str]
created_at: datetime
updated_at: datetime
model_config = ConfigDict(from_attributes=True)