add - inventory entered quotas

This commit is contained in:
2025-11-22 10:19:22 +03:30
parent 05c3955ece
commit e5fcac45be

View File

@@ -370,6 +370,35 @@ class QuotaViewSet(BaseViewSet, SoftDeleteMixin, viewsets.ModelViewSet, DynamicS
serializer = self.get_serializer(page, many=True, context={'org': org}) serializer = self.get_serializer(page, many=True, context={'org': org})
return self.get_paginated_response(serializer.data) return self.get_paginated_response(serializer.data)
@action(
methods=['get'],
detail=False,
url_path='inventory_entered_quotas',
url_name='inventory_entered_quotas',
name='inventory_entered_quotas'
)
@transaction.atomic
def active_quotas_by_inventory_entry(self, request):
""" list of organization active quotas that have inventory entries """
org = get_organization_by_user(request.user)
queryset = self.filter_query(
self.get_queryset(visibility_by_org_scope=True).filter(
is_closed=False)) # return by search param or all objects
# paginate queryset
page = self.paginate_queryset(
queryset.filter(
Q(assigned_organizations=org) |
Q(registerer_organization=org),
org_quota_stats__inventory_received__gt=0,
).order_by('-modify_date').distinct()
)
if page is not None: # noqa
serializer = self.get_serializer(page, many=True, context={'org': org})
return self.get_paginated_response(serializer.data)
@action( @action(
methods=['get'], methods=['get'],
detail=False, detail=False,