Files
group_fqcd_jr/app/repository/idempotency_repository.py
T

19 lines
668 B
Python

from sqlalchemy import select
from sqlalchemy.ext.asyncio import AsyncSession
from app.model.platform import RequestIdempotency
class IdempotencyRepository:
def __init__(self, session: AsyncSession) -> None:
self.session = session
async def find(self, user_id: int, agent_type: str, key: str) -> RequestIdempotency | None:
statement = select(RequestIdempotency).where(
RequestIdempotency.user_id == user_id,
RequestIdempotency.agent_type == agent_type,
RequestIdempotency.idempotency_key == key,
)
result = await self.session.execute(statement)
return result.scalar_one_or_none()