feat: update product stock when a product batch is created
This commit is contained in:
@@ -100,6 +100,18 @@ class ProductBatchViewSet(ModelViewSet):
|
|||||||
queryset = ProductBatch.objects.all()
|
queryset = ProductBatch.objects.all()
|
||||||
permission_classes = (IsAdminUser,)
|
permission_classes = (IsAdminUser,)
|
||||||
|
|
||||||
|
def perform_create(self, serializer):
|
||||||
|
instance = serializer.save()
|
||||||
|
product = instance.product
|
||||||
|
product.stock += instance.quantity
|
||||||
|
product.save()
|
||||||
|
|
||||||
|
def perform_destroy(self, instance):
|
||||||
|
product = instance.product
|
||||||
|
product.stock = max(product.stock - instance.quantity, 0)
|
||||||
|
product.save()
|
||||||
|
instance.delete()
|
||||||
|
|
||||||
|
|
||||||
class CustomerViewSet(ModelViewSet):
|
class CustomerViewSet(ModelViewSet):
|
||||||
serializer_class = CustomerSerializer
|
serializer_class = CustomerSerializer
|
||||||
|
|||||||
@@ -112,6 +112,7 @@ class ProductPrice(TimestampedModel):
|
|||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = _("precio de producto")
|
verbose_name = _("precio de producto")
|
||||||
verbose_name_plural = _("precio de producto")
|
verbose_name_plural = _("precio de producto")
|
||||||
|
ordering = ("-date", )
|
||||||
|
|
||||||
|
|
||||||
class ProductBatch(TimestampedModel):
|
class ProductBatch(TimestampedModel):
|
||||||
|
|||||||
Reference in New Issue
Block a user