Add Organization and User serializers to device viewset for enhanced user data retrieval
This commit is contained in:
8
apps/pos_device/pos/api/v1/serializers/organization.py
Normal file
8
apps/pos_device/pos/api/v1/serializers/organization.py
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
from apps.pos_device import models as pos_models
|
||||||
|
from rest_framework import serializers
|
||||||
|
|
||||||
|
|
||||||
|
class OrganizationSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = pos_models.Organization
|
||||||
|
fields = ['id', 'name', 'en_name']
|
||||||
8
apps/pos_device/pos/api/v1/serializers/user.py
Normal file
8
apps/pos_device/pos/api/v1/serializers/user.py
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
from django.contrib.auth.models import User as pos_models
|
||||||
|
from rest_framework import serializers
|
||||||
|
|
||||||
|
|
||||||
|
class UserSerializer(serializers.ModelSerializer):
|
||||||
|
class Meta:
|
||||||
|
model = pos_models.User
|
||||||
|
fields = ['id', 'username', 'first_name', 'last_name', 'email', 'mobile', 'phone', 'national_code']
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
from apps.pos_device.pos.api.v1.serializers.device import DeviceSerializer
|
from apps.pos_device.pos.api.v1.serializers.device import DeviceSerializer , OrganizationSerializer , UserSerializer
|
||||||
from apps.authentication.services.service import get_users_of_organization
|
from apps.authentication.services.service import get_users_of_organization
|
||||||
from apps.pos_device.mixins.pos_device_mixin import POSDeviceMixin
|
from apps.pos_device.mixins.pos_device_mixin import POSDeviceMixin
|
||||||
from apps.pos_device import models as pos_models
|
from apps.pos_device import models as pos_models
|
||||||
@@ -78,6 +78,11 @@ class POSDeviceViewSet(viewsets.ModelViewSet, POSDeviceMixin):
|
|||||||
latitude=headers_data['device-lot'],
|
latitude=headers_data['device-lot'],
|
||||||
longitude=headers_data['device-lng'],
|
longitude=headers_data['device-lng'],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
org_serializer = OrganizationSerializer(device_owner_org)
|
||||||
|
users_data = get_users_of_organization(device_owner_org)
|
||||||
|
users_serializer = UserSerializer(users_data, many=True)
|
||||||
|
|
||||||
return Response({
|
return Response({
|
||||||
"message": "login success - session activated",
|
"message": "login success - session activated",
|
||||||
"device_identity": device.device_identity,
|
"device_identity": device.device_identity,
|
||||||
@@ -85,8 +90,8 @@ class POSDeviceViewSet(viewsets.ModelViewSet, POSDeviceMixin):
|
|||||||
"password": device.password,
|
"password": device.password,
|
||||||
"provider": organization.name,
|
"provider": organization.name,
|
||||||
"provider_tell": '0214021',
|
"provider_tell": '0214021',
|
||||||
"device_owner": device_owner_org,
|
"device_owner": org_serializer.data,
|
||||||
"device_owner_users": get_users_of_organization(device_owner_org)
|
"device_owner_users": users_serializer.data
|
||||||
}, status=status.HTTP_200_OK)
|
}, status=status.HTTP_200_OK)
|
||||||
|
|
||||||
return Response({
|
return Response({
|
||||||
|
|||||||
Reference in New Issue
Block a user