connect transaction serializer create to viewset create

This commit is contained in:
2025-09-22 14:33:54 +03:30
parent f2272fcf37
commit 383cbc4162
2 changed files with 23 additions and 4 deletions

View File

@@ -8,9 +8,11 @@ from apps.pos_device.mixins.pos_device_mixin import POSDeviceMixin
from apps.core.mixins.search_mixin import DynamicSearchMixin
from apps.warehouse import models as warehouse_models
from rest_framework.permissions import AllowAny
from rest_framework.response import Response
from rest_framework.decorators import action
from rest_framework import viewsets
from apps.herd.models import Rancher
from rest_framework import status
from django.db import transaction
@@ -104,6 +106,25 @@ class InventoryQuotaSaleTransactionViewSet(viewsets.ModelViewSet, DynamicSearchM
]
date_field = "create_date"
@transaction.atomic
def create(self, request, *args, **kwargs):
""" create transaction with product items """
organization = self.get_device_organization()
device = self.get_pos_device()
serializer = self.serializer_class(data=request.data, context={
'organization': organization,
'pos_device': device,
'request': self.request
})
if serializer.is_valid(raise_exception=True):
serializer.save()
return Response(serializer.data, status=status.HTTP_200_OK)
return Response(serializer.errors, status=status.HTTP_403_FORBIDDEN)
@action(
methods=['get'],
detail=False,