diff --git a/src/repository/users.py b/src/repository/users.py index 4ea65ea..3c61569 100644 --- a/src/repository/users.py +++ b/src/repository/users.py @@ -32,8 +32,11 @@ class UsersRepo(BaseRepo): date_to: Optional[date] = None, date_from: Optional[date] = None, ) -> UsersORM | None: + filters_sq: dict = {"user_id": user_id} + if status: + filters_sq["status"] = status tasks_subquery = self._tasks_subquary( - date_from=date_from, date_to=date_to, user_id=user_id, status=status + date_from=date_from, date_to=date_to, **filters_sq ) if tasks_limit is not None: diff --git a/src/services/users.py b/src/services/users.py index 6629787..7c58ea4 100644 --- a/src/services/users.py +++ b/src/services/users.py @@ -1,5 +1,5 @@ from datetime import date -import enum + from fastapi import HTTPException from src.schemas.users import User, UserUpdate, UserWithTasks diff --git a/tests/unit_tests/test_repo_db.py b/tests/unit_tests/test_repo_db.py index 6d2adab..b26cbb5 100644 --- a/tests/unit_tests/test_repo_db.py +++ b/tests/unit_tests/test_repo_db.py @@ -50,6 +50,8 @@ async def test_tasks_user(db: "TestDBManager"): result = await db.task.create_bulk(data) await db.commit() assert result + tasks = await db.task.get_filtered(user_id=admin_user.id) + assert tasks user_with_tasks = await db.user.get_one_with_load(user_id=admin_user.id) assert user_with_tasks assert user_with_tasks.tasks