from typing import Optional from pydantic import BaseModel from datetime import datetime # Shared properties class DepartmentBase(BaseModel): name: Optional[str] = None description: Optional[str] = None # Properties to receive via API on creation class DepartmentCreate(DepartmentBase): name: str # Properties to receive via API on update class DepartmentUpdate(DepartmentBase): pass class DepartmentInDBBase(DepartmentBase): id: Optional[str] = None created_at: Optional[datetime] = None updated_at: Optional[datetime] = None class Config: from_attributes = True # Additional properties to return via API class Department(DepartmentInDBBase): pass # Additional properties stored in DB class DepartmentInDB(DepartmentInDBBase): pass