del old task dep, page start from 1
This commit is contained in:
@@ -5,9 +5,7 @@ from fastapi import Depends, Query
|
|||||||
from fastapi.exceptions import HTTPException
|
from fastapi.exceptions import HTTPException
|
||||||
from pydantic import BaseModel, model_validator
|
from pydantic import BaseModel, model_validator
|
||||||
|
|
||||||
from src.schemas.tasks import TaskFilter
|
from src.schemas.tasks import StatusEnum
|
||||||
|
|
||||||
TaskFilterDep = Annotated[TaskFilter, Depends()]
|
|
||||||
|
|
||||||
|
|
||||||
class Date(BaseModel):
|
class Date(BaseModel):
|
||||||
@@ -24,11 +22,15 @@ class Date(BaseModel):
|
|||||||
|
|
||||||
|
|
||||||
class Page(BaseModel):
|
class Page(BaseModel):
|
||||||
limit: int | None = Query(default=30, ge=1, le=100)
|
limit: int = Query(default=30, ge=1, le=100)
|
||||||
page: int | None = Query(default=0, ge=0)
|
page: int | None = Query(default=1, ge=1)
|
||||||
|
|
||||||
|
|
||||||
class Filters(Page, Date):
|
class Status(BaseModel):
|
||||||
|
status: StatusEnum | None = Query(default=None)
|
||||||
|
|
||||||
|
|
||||||
|
class Filters(Date, Status, Page):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -50,11 +50,3 @@ class Task(TaskADDRequest):
|
|||||||
time_spent: int
|
time_spent: int
|
||||||
|
|
||||||
model_config = ConfigDict(from_attributes=True)
|
model_config = ConfigDict(from_attributes=True)
|
||||||
|
|
||||||
|
|
||||||
class TaskFilter(BaseModel):
|
|
||||||
status: StatusEnum | None = None
|
|
||||||
limit: int | None = 30
|
|
||||||
offset: int | None = None
|
|
||||||
date_from: date | None = None
|
|
||||||
date_to: date | None = None
|
|
||||||
|
|||||||
@@ -1,5 +1,3 @@
|
|||||||
from datetime import date
|
|
||||||
|
|
||||||
from fastapi import HTTPException
|
from fastapi import HTTPException
|
||||||
|
|
||||||
from src.schemas.users import User, UserUpdate, UserWithTasks
|
from src.schemas.users import User, UserUpdate, UserWithTasks
|
||||||
@@ -43,7 +41,7 @@ class UserService(BaseService):
|
|||||||
|
|
||||||
async def get_user_with_tasks(self, user_id: int, **attrs):
|
async def get_user_with_tasks(self, user_id: int, **attrs):
|
||||||
if attrs.get("page") and attrs.get("limit"):
|
if attrs.get("page") and attrs.get("limit"):
|
||||||
tasks_offset = attrs.get("page", 0) * attrs.get("limit")
|
tasks_offset = (attrs.get("page", 0) - 1) * attrs.get("limit")
|
||||||
else:
|
else:
|
||||||
tasks_offset = None
|
tasks_offset = None
|
||||||
user = await self.session.user.get_one_with_load(
|
user = await self.session.user.get_one_with_load(
|
||||||
|
|||||||
Reference in New Issue
Block a user