diff --git a/lib/workload/stateless/stacks/metadata-manager/app/viewsets/lab.py b/lib/workload/stateless/stacks/metadata-manager/app/viewsets/lab.py index 077fe3451..082e796e6 100644 --- a/lib/workload/stateless/stacks/metadata-manager/app/viewsets/lab.py +++ b/lib/workload/stateless/stacks/metadata-manager/app/viewsets/lab.py @@ -120,8 +120,18 @@ def get_full_model_set(self, request): ordering = query_params.get("ordering", '-orcabus_id') qs = Library.objects.select_related("specimen__subject").all().order_by(ordering) + coverage__lte = query_params.get("coverage__lte", None) + if coverage__lte: + query_params.pop("coverage__lte") + qs = qs.filter(coverage__lte=coverage__lte) + + coverage__gte = query_params.get("coverage__gte", None) + if coverage__gte: + query_params.pop("coverage__gte") + qs = qs.filter(coverage__gte=coverage__gte) + # Allow filtering by the keys inside the library model - qs = Library.objects.get_model_fields_query(qs, **self.request.query_params) + qs = Library.objects.get_model_fields_query(qs, **query_params) page = self.paginate_queryset(qs) serializer = LibraryFullSerializer(page, many=True)