diff --git a/apps/authentication/api/v1/api.py b/apps/authentication/api/v1/api.py index e114baf..c3398d7 100644 --- a/apps/authentication/api/v1/api.py +++ b/apps/authentication/api/v1/api.py @@ -221,8 +221,11 @@ class OrganizationViewSet(ModelViewSet, DynamicSearchMixin): def list(self, request, *args, **kwargs): """ all organization """ - 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')) # paginate queryset + + if page is not None: + serializer = self.serializer_class(page, many=True) + return self.get_paginated_response(serializer.data) @transaction.atomic def create(self, request, *args, **kwargs): diff --git a/apps/authentication/models.py b/apps/authentication/models.py index bea37f4..c17d854 100644 --- a/apps/authentication/models.py +++ b/apps/authentication/models.py @@ -125,6 +125,7 @@ class Organization(BaseModel): related_name='parents', null=True ) + separate_warehouse = models.BooleanField(default=False) additional_data = models.JSONField(default=dict) def __str__(self): diff --git a/apps/pos_device/models.py b/apps/pos_device/models.py index de95591..a3aad95 100644 --- a/apps/pos_device/models.py +++ b/apps/pos_device/models.py @@ -230,3 +230,25 @@ class DeviceAssignment(BaseModel): def save(self, *args, **kwargs): return super(DeviceAssignment, self).save(*args, **kwargs) + + +class StakeHolders(BaseModel): + assignment = models.ForeignKey( + DeviceAssignment, + on_delete=models.CASCADE, + related_name='stake_holders', + null=True + ) + organization = models.ForeignKey( + Organization, + on_delete=models.CASCADE, + related_name='stake_holders', + null=True + ) + share_percent = models.FloatField(default=0) + + def __str__(self): + return f'Device: {self.assignment.device.serial}-organization: {self.organization.name}' + + def save(self, *args, **kwargs): + return super(StakeHolders, self).save(*args, **kwargs) \ No newline at end of file