Add Organization and User serializers to device viewset for enhanced user data retrieval

This commit is contained in:
2025-08-27 21:39:01 +03:30
parent 499273486c
commit 5ae913828e
3 changed files with 24 additions and 3 deletions

View 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']

View 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']

View File

@@ -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.pos_device.mixins.pos_device_mixin import POSDeviceMixin
from apps.pos_device import models as pos_models
@@ -78,6 +78,11 @@ class POSDeviceViewSet(viewsets.ModelViewSet, POSDeviceMixin):
latitude=headers_data['device-lot'],
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({
"message": "login success - session activated",
"device_identity": device.device_identity,
@@ -85,8 +90,8 @@ class POSDeviceViewSet(viewsets.ModelViewSet, POSDeviceMixin):
"password": device.password,
"provider": organization.name,
"provider_tell": '0214021',
"device_owner": device_owner_org,
"device_owner_users": get_users_of_organization(device_owner_org)
"device_owner": org_serializer.data,
"device_owner_users": users_serializer.data
}, status=status.HTTP_200_OK)
return Response({