From ccd9c60a97dc610d9a36bc1316d1895ec5763d6c Mon Sep 17 00:00:00 2001 From: phzhik Date: Thu, 23 Nov 2023 03:32:54 +0400 Subject: [PATCH] + yuan_rate_last_updated in GlobalSettings serializer * Show raw yuan_rate in GlobalSettings * Use yuan_rate+yuan_rate_commission sum for Checklist calculations --- store/models.py | 3 +-- store/serializers.py | 5 +++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/store/models.py b/store/models.py index c8dc55e..5d392f7 100644 --- a/store/models.py +++ b/store/models.py @@ -81,10 +81,9 @@ class GlobalSettings(models.Model): self.yuan_rate = rate self.yuan_rate_last_updated = timezone.now() self.save() - return rate # Default - return self.yuan_rate + return self.yuan_rate + self.yuan_rate_commission class Category(MPTTModel): diff --git a/store/serializers.py b/store/serializers.py index acfeda6..208e81b 100644 --- a/store/serializers.py +++ b/store/serializers.py @@ -211,14 +211,15 @@ class AnonymousUserChecklistSerializer(ChecklistSerializer): class GlobalSettingsSerializer(serializers.ModelSerializer): - currency = serializers.DecimalField(source='get_yuan_rate', read_only=True, max_digits=10, decimal_places=2) + currency = serializers.DecimalField(source='yuan_rate', read_only=True, max_digits=10, decimal_places=2) + yuan_rate_last_updated = serializers.DateTimeField(read_only=True) chinadelivery = serializers.DecimalField(source='delivery_price_CN', max_digits=10, decimal_places=2) commission = serializers.DecimalField(source='commission_rub', max_digits=10, decimal_places=2) pickup = serializers.CharField(source='pickup_address') class Meta: model = GlobalSettings - fields = ('currency', 'yuan_rate_commission', 'commission', 'chinadelivery', 'pickup', 'time_to_buy') + fields = ('currency', 'yuan_rate_last_updated', 'yuan_rate_commission', 'commission', 'chinadelivery', 'pickup', 'time_to_buy') class PaymentMethodSerializer(serializers.ModelSerializer):