device login import mai8n company data

This commit is contained in:
2025-09-30 09:21:51 +03:30
parent d4db1a746b
commit 984df3a538
3 changed files with 15 additions and 3 deletions

View File

@@ -3,6 +3,7 @@ import traceback
from apps.pos_device.pos.api.v1.serializers.device import DeviceSerializer
from apps.authentication.services.service import get_users_of_organization
from apps.pos_device.mixins.pos_device_mixin import POSDeviceMixin
from apps.authentication.models import Organization
from apps.pos_device import models as pos_models
from rest_framework.permissions import AllowAny
from rest_framework.decorators import action
@@ -52,6 +53,9 @@ class POSDeviceViewSet(viewsets.ModelViewSet, POSDeviceMixin):
mac = headers_data['device-mac']
psp_name = headers_data['device-provider']
# MNPC Company object information # noqa
main_company = Organization.objects.get(national_unique_id='1111111111')
# provider organization
organization = pos_models.Organization.objects.get(en_name=psp_name)
@@ -99,6 +103,7 @@ class POSDeviceViewSet(viewsets.ModelViewSet, POSDeviceMixin):
'en_name': device_owner_org.en_name,
'phone': device_owner_org.phone,
'type': device_owner_org.type.name,
'shaba': device_owner_org.bank_information.all().first().sheba # noqa
}
return Response({
@@ -109,7 +114,13 @@ class POSDeviceViewSet(viewsets.ModelViewSet, POSDeviceMixin):
"provider": organization.name,
"provider_tell": organization.phone,
"device_owner": org_data,
"device_owner_users": get_users_of_organization(device_owner_org)
"device_owner_users": get_users_of_organization(device_owner_org),
"main_company": {
"name": main_company.name,
"phone": main_company.phone,
"shaba": main_company.bank_information.all().first().sheba, # noqa
"amount": 400
}
}, status=status.HTTP_200_OK)
return Response({

View File

@@ -20,7 +20,7 @@ class POSFreeProductSerializer(serializers.ModelSerializer):
product = attrs['product']
organization = attrs['organization']
if self.Meta.model.objects.filter(organization=organization, product=product,trash=False).exists():
if self.Meta.model.objects.filter(organization=organization, product=product).exists():
raise FreePOSProductUniqueCheck()
return attrs

View File

@@ -1,6 +1,7 @@
from apps.product.pos.api.v1.serializers import product_serializers as product_serializers
from apps.pos_device.mixins.pos_device_mixin import POSDeviceMixin
from apps.core.mixins.search_mixin import DynamicSearchMixin
from apps.core.mixins.soft_delete_mixin import SoftDeleteMixin
from rest_framework.exceptions import APIException
from apps.product import models as product_models
from apps.pos_device import models as pos_models
@@ -75,7 +76,7 @@ class ProductViewSet(viewsets.ModelViewSet, DynamicSearchMixin, POSDeviceMixin):
return Response(e, status=status.HTTP_204_NO_CONTENT)
class POSFreeProductsViewSet(viewsets.ModelViewSet, DynamicSearchMixin, POSDeviceMixin):
class POSFreeProductsViewSet(SoftDeleteMixin, viewsets.ModelViewSet, DynamicSearchMixin, POSDeviceMixin):
queryset = pos_models.POSFreeProducts.objects.all()
serializer_class = product_serializers.POSFreeProductSerializer
permission_classes = [AllowAny]