from pydantic import BaseModel, ConfigDict from datetime import datetime, date from typing import Optional class ProjectTaskCreate(BaseModel): title: str description: Optional[str] = None status: str = "pending" priority: str = "medium" due_date: Optional[date] = None person_id: Optional[int] = None sort_order: int = 0 class ProjectTaskUpdate(BaseModel): title: Optional[str] = None description: Optional[str] = None status: Optional[str] = None priority: Optional[str] = None due_date: Optional[date] = None person_id: Optional[int] = None sort_order: Optional[int] = None class ProjectTaskResponse(BaseModel): id: int project_id: int title: str description: Optional[str] status: str priority: str due_date: Optional[date] person_id: Optional[int] sort_order: int created_at: datetime updated_at: datetime model_config = ConfigDict(from_attributes=True)