feat: Add filtering, searching, and sorting to user extractions retrieval

This commit is contained in:
JSC
2025-08-17 01:27:41 +02:00
parent fe15e7a6af
commit 3326e406f8
3 changed files with 65 additions and 6 deletions

View File

@@ -545,9 +545,22 @@ class ExtractionService:
"updated_at": extraction.updated_at.isoformat(),
}
async def get_user_extractions(self, user_id: int) -> list[ExtractionInfo]:
"""Get all extractions for a user."""
extractions = await self.extraction_repo.get_by_user(user_id)
async def get_user_extractions(
self,
user_id: int,
search: str | None = None,
sort_by: str = "created_at",
sort_order: str = "desc",
status_filter: str | None = None,
) -> list[ExtractionInfo]:
"""Get all extractions for a user with filtering, search, and sorting."""
extractions = await self.extraction_repo.get_user_extractions_filtered(
user_id=user_id,
search=search,
sort_by=sort_by,
sort_order=sort_order,
status_filter=status_filter,
)
return [
{