Automated Action fe3924497e Add todo due date and priority features
- Added priority (low, medium, high) to todo items
- Added due date to todo items
- Enhanced API to support filtering by priority and due date
- Added overdue and due_soon filters for better task management
- Automatic sorting by priority and due date
- Created alembic migration for the new fields
- Updated documentation

generated with BackendIM... (backend.im)
2025-05-14 01:27:39 +00:00

43 lines
842 B
Python

from datetime import datetime
from typing import Optional
from pydantic import BaseModel
from enum import Enum
class PriorityEnum(str, Enum):
LOW = "low"
MEDIUM = "medium"
HIGH = "high"
class TodoBase(BaseModel):
title: str
description: Optional[str] = None
completed: bool = False
priority: PriorityEnum = PriorityEnum.MEDIUM
due_date: Optional[datetime] = None
class TodoCreate(TodoBase):
pass
class TodoUpdate(BaseModel):
title: Optional[str] = None
description: Optional[str] = None
completed: Optional[bool] = None
priority: Optional[PriorityEnum] = None
due_date: Optional[datetime] = None
class TodoInDB(TodoBase):
id: int
created_at: datetime
updated_at: Optional[datetime] = None
class Config:
orm_mode = True
class Todo(TodoInDB):
pass