from datetime import datetime from pydantic import BaseModel, Field class UserCreate(BaseModel): phone: str = Field(min_length=6, max_length=32) name: str = Field(min_length=1, max_length=80) department: str | None = None unit_id: int | None = None role_codes: list[str] = [] is_superuser: bool = False class UserUpdate(BaseModel): name: str | None = None department: str | None = None unit_id: int | None = None status: str | None = None role_codes: list[str] | None = None is_superuser: bool | None = None class UserResponse(BaseModel): id: int phone: str name: str department: str | None unit_id: int | None = None unit_name: str | None = None status: str role_codes: list[str] is_superuser: bool created_at: datetime | None = None class BulkImportResult(BaseModel): created: int skipped: int errors: list[str] = []