feat: pagination and query params for a deal end-point

This commit is contained in:
2025-08-28 20:24:24 +04:00
parent 4c7a997be6
commit 5fbd6d6185
6 changed files with 66 additions and 20 deletions

View File

@ -1,6 +1,13 @@
from sqlalchemy import Select
from sqlalchemy.ext.asyncio import AsyncSession
class BaseRepository:
def __init__(self, session: AsyncSession):
self.session = session
@staticmethod
def _apply_pagination(query: Select, page: int, items_per_page: int) -> Select:
offset = (page - 1) * items_per_page
query = query.offset(offset).limit(items_per_page)
return query