devices by psp organizations - fix pages pagination

This commit is contained in:
2025-08-11 14:43:34 +03:30
parent cae27e9ed7
commit 87c8b25ba4
2 changed files with 23 additions and 2 deletions

View File

@@ -41,8 +41,10 @@ class PageViewSet(viewsets.ModelViewSet):
def list(self, request, *args, **kwargs):
""" all pages """
serializer = self.serializer_class(self.queryset.order_by('-create_date'), many=True)
return Response(serializer.data, status=status.HTTP_200_OK)
page = self.paginate_queryset(self.queryset.order_by('-create_date'))
if page is not None:
serializer = self.get_serializer(page, many=True)
return self.get_paginated_response(serializer.data)
@action(
methods=['delete'],

View File

@@ -130,6 +130,25 @@ class DeviceViewSet(viewsets.ModelViewSet, AdminFilterMixin):
serializer = OrganizationSerializer(page, many=True)
return self.get_paginated_response(serializer.data)
@action(
methods=['get'],
detail=True,
url_path='devices_by_psp',
url_name='devices_by_psp',
name='devices_by_psp',
)
@transaction.atomic
def devices_by_psp(self, request, pk=None):
""" list of devices by their psp """
devices = self.queryset.filter(organization__id=pk).order_by('-create_date')
# paginate devices
page = self.paginate_queryset(devices)
if page is not None:
serializer = OrganizationSerializer(page, many=True)
return self.get_paginated_response(serializer.data)
class DeviceVersionViewSet(viewsets.ModelViewSet):
queryset = pos_models.DeviceVersion.objects.all()