* Check the Gifts that are being added to Checklist from unauthorized users

This commit is contained in:
Phil Zhitnikov 2023-11-03 00:55:07 +04:00
parent ca478a7e15
commit 6f96eaaac7

View File

@ -1,6 +1,7 @@
from drf_extra_fields.fields import Base64ImageField from drf_extra_fields.fields import Base64ImageField
from rest_framework import serializers from rest_framework import serializers
from store.exceptions import CRMException
from store.models import User, Checklist, GlobalSettings, Category, PaymentMethod, Promocode, Image, Gift from store.models import User, Checklist, GlobalSettings, Category, PaymentMethod, Promocode, Image, Gift
from store.utils import get_primary_key_related_model from store.utils import get_primary_key_related_model
@ -195,7 +196,13 @@ class AnonymousUserChecklistSerializer(ChecklistSerializer):
'buyername', 'buyerphone', 'buyername', 'buyerphone',
'delivery', 'delivery',
'recievername', 'recieverphone', 'tg', 'recievername', 'recieverphone', 'tg',
'cdek_barcode_pdf'}) 'gift', 'cdek_barcode_pdf'})
def validate(self, attrs):
gift = attrs.get('gift')
if gift is not None and self.instance.price_yuan < gift.min_price:
raise CRMException("Can't add gift: price of order < min_price of gift")
return attrs
class GlobalSettingsSerializer(serializers.ModelSerializer): class GlobalSettingsSerializer(serializers.ModelSerializer):