Files
RasadDam_Backend/apps/product/exceptions.py

82 lines
2.9 KiB
Python

from rest_framework import status
from rest_framework.exceptions import APIException
class QuotaWeightException(APIException):
""" if quota distributions weight is more """
status_code = status.HTTP_400_BAD_REQUEST
default_detail = "مقدار وارد شده باعث می‌شود مجموع سهمیه‌ها از مقدار کل سهمیه بیشتر شود." # noqa
default_code = 'error'
class DistributionWeightException(APIException):
""" if sale transaction weight is more than distribution weight """
status_code = status.HTTP_400_BAD_REQUEST
default_detail = 'مقدار وزن وارد شده بیشتر از وزن سهمیه توزیع شده میباشد.' # noqa
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 """
status_code = status.HTTP_400_BAD_REQUEST
default_detail = "این سهمیه بسته شده است و قابل توزیع نیست" # noqa
default_code = 'error'
class QuotaExpiredTimeException(APIException):
"""if quota allowed time for distribute, sale, etc. is expired"""
status_code = status.HTTP_400_BAD_REQUEST
default_detail = "این سهمیه دارای محدودیت توزیع میباشد" # noqa
default_code = 'error'
class QuotaSaleTimeException(APIException):
"""if quota allowed time for distribute, sale, etc. is expired"""
status_code = status.HTTP_400_BAD_REQUEST
default_detail = "اين سهمیه دارای محدودیت مجوز فروش میباشد" # noqa
default_code = 'error'
class QuotaLimitByOrganizationException(APIException):
"""
if limitation of quota by organization is true,
distribution should be done in organizations limits
"""
status_code = status.HTTP_400_BAD_REQUEST
default_detail = "سازمان انتخاب شده در بین سامان های انتخاب شده برای توزیع سهمیه وجود ندارد" # noqa
default_code = 'error'
class FreePOSProductUniqueCheck(APIException):
"""
raise exception for free pos products to be unique
"""
status_code = status.HTTP_403_FORBIDDEN
default_detail = "محصول مورد نظر برای این دستگاه از قبل ثبت شده است" # noqa
default_code = 'error'
class RancherIncentivePlanExists(APIException):
"""
raise exception if rancher with same info
"""
status_code = status.HTTP_403_FORBIDDEN
default_detail = "این دامدار برای این طرح با این نوع گونه دام قبلا اضافه شده است" # noqa
default_code = 'error'