add distribution delete exception

This commit is contained in:
2025-10-26 15:05:36 +03:30
parent 13b6a42bda
commit 0ce2938344
2 changed files with 11 additions and 5 deletions

View File

@@ -1,5 +1,5 @@
from rest_framework.exceptions import APIException
from rest_framework import status
from rest_framework.exceptions import APIException
class QuotaWeightException(APIException):
@@ -18,6 +18,14 @@ class DistributionWeightException(APIException):
default_code = 'error'
class DistributionDeletedException(APIException):
""" if distribution is deleted """
status_code = status.HTTP_400_BAD_REQUEST
default_detail = "امکان حذف این توزیع وجود ندارد. ورود به انبار یا توزیعی برای آن ثبت شده است" # noqa
default_code = 'error'
class QuotaClosedException(APIException):
""" if quota is closed, operations can not be done """

View File

@@ -9,6 +9,7 @@ from rest_framework.response import Response
from apps.core.mixins.search_mixin import DynamicSearchMixin
from apps.core.mixins.soft_delete_mixin import SoftDeleteMixin
from apps.core.pagination import CustomPageNumberPagination
from apps.product import exceptions
from apps.product import models as product_models
from apps.product.web.api.v1.serializers import quota_distribution_serializers as distribution_serializers
from common.helpers import get_organization_by_user
@@ -159,10 +160,7 @@ class QuotaDistributionViewSet(SoftDeleteMixin, viewsets.ModelViewSet, DynamicSe
if quota_distribution.inventory_entry.exists() or self.queryset.filter(
parent_distribution=quota_distribution.id
):
raise APIException(
"امکان حذف این توزیع وجود ندارد. ورود به انبار یا توزیعی برای آن ثبت شده است", # noqa
status.HTTP_400_BAD_REQUEST
)
raise exceptions.DistributionDeletedException()
try:
trash(self.queryset, pk)
return Response(status=status.HTTP_200_OK)