This commit is contained in:
ITQ
2025-11-22 11:57:10 +03:00
parent 2dd6e53bf8
commit 579f784fbd
10 changed files with 158 additions and 42 deletions
@@ -38,6 +38,30 @@ class DefaultResumeDataGateway(ResumeDataGateway):
result = await self._session.execute(statement)
return result.scalars().all()
@override
async def list_latest_by_user_id(self, user_id: UserId, limit: int, offset: int) -> Sequence[Resume]:
statement = (
select(Resume)
.where(Resume.user_id == user_id)
.where(Resume.up_resume_id.is_(None))
.limit(limit)
.offset(offset)
)
result = await self._session.execute(statement)
return result.scalars().all()
@override
async def get_history(self, resume_id: ResumeId) -> Sequence[Resume]:
history: list[Resume] = []
current_resume = await self.load(resume_id)
history.append(current_resume)
while current_resume.down_resume_id is not None:
current_resume = await self.load(current_resume.down_resume_id)
history.append(current_resume)
return history
class DefaultResumePredictionDataGateway(ResumePredictionDataGateway):
def __init__(self, session: AsyncSession) -> None: