diff --git a/fastapi_book_server/app/filters/book.py b/fastapi_book_server/app/filters/book.py index 1d47f4e..a063593 100644 --- a/fastapi_book_server/app/filters/book.py +++ b/fastapi_book_server/app/filters/book.py @@ -1,3 +1,4 @@ +from datetime import date from typing import Optional from fastapi.params import Query @@ -6,7 +7,10 @@ from app.depends import get_allowed_langs def get_book_filter( - is_deleted: Optional[bool] = None, allowed_langs: Optional[list[str]] = Query(None) + is_deleted: Optional[bool] = None, + allowed_langs: Optional[list[str]] = Query(None), # type: ignore + uploaded_gte: Optional[date] = None, + uploaded_lte: Optional[date] = None, ) -> dict: result = {} @@ -16,4 +20,10 @@ def get_book_filter( if not (allowed_langs and "__all__" in allowed_langs): result["lang__in"] = get_allowed_langs(allowed_langs) + if uploaded_gte: + result["uploaded__gte"] = uploaded_gte + + if uploaded_lte: + result["uploaded__lte"] = uploaded_lte + return result