add quary status

This commit is contained in:
IluaAir
2025-08-29 21:37:42 +03:00
parent c941b25a90
commit 3e6468fa38
2 changed files with 18 additions and 3 deletions

View File

@@ -1,12 +1,27 @@
from enum import Enum
from typing import Annotated from typing import Annotated
from fastapi import Depends, Query from fastapi import Depends, Query
from pydantic import BaseModel from pydantic import BaseModel
class StatEnum(str, Enum):
open = "open"
closed = "closed"
in_progress = "in_progress"
todo = "todo"
class Pagination(BaseModel): class Pagination(BaseModel):
page: int | None = Query(default=0, ge=0) page: int | None = Query(default=0, ge=0)
limit: int | None = Query(default=30, ge=0, le=50) limit: int | None = Query(default=30, ge=0, le=50)
PaginationTasks = Annotated[Pagination, Depends()] PaginationTasksDep = Annotated[Pagination, Depends()]
class Status(BaseModel):
status: StatEnum | None = Query(default=None)
StatusTaskDep = Annotated[Status, Depends()]

View File

@@ -3,7 +3,7 @@ from typing import Annotated
from fastapi import APIRouter, Depends from fastapi import APIRouter, Depends
from src.api.dependacies.db_dep import sessionDep from src.api.dependacies.db_dep import sessionDep
from src.api.dependacies.task_dep import PaginationTasks from src.api.dependacies.task_dep import PaginationTasksDep, StatusTaskDep
from src.api.dependacies.user_dep import ActiveUser, TaskOwnerDep from src.api.dependacies.user_dep import ActiveUser, TaskOwnerDep
from src.schemas.tasks import TaskADDRequest from src.schemas.tasks import TaskADDRequest
from src.services.tasks import TaskService from src.services.tasks import TaskService
@@ -13,7 +13,7 @@ router = APIRouter(prefix="/tasks", tags=["Tasks"])
@router.get("/") @router.get("/")
async def get_tasks(session: sessionDep, user: ActiveUser, page: PaginationTasks): async def get_tasks(session: sessionDep, user: ActiveUser, page: PaginationTasksDep, status: StatusTaskDep):
result = await UserService(session).get_user_with_tasks(user.id) result = await UserService(session).get_user_with_tasks(user.id)
return result return result