|
|
@ -24,9 +24,9 @@ class CourseListSerializer(serializers.ModelSerializer): |
|
|
thumbnail = serializers.SerializerMethodField() |
|
|
thumbnail = serializers.SerializerMethodField() |
|
|
participant_count = serializers.SerializerMethodField() |
|
|
participant_count = serializers.SerializerMethodField() |
|
|
lessons_count = serializers.SerializerMethodField() |
|
|
lessons_count = serializers.SerializerMethodField() |
|
|
price = serializers.SerializerMethodField() |
|
|
|
|
|
discount_percentage = serializers.SerializerMethodField() |
|
|
|
|
|
final_price = serializers.SerializerMethodField() |
|
|
|
|
|
|
|
|
# price = serializers.SerializerMethodField() |
|
|
|
|
|
# discount_percentage = serializers.SerializerMethodField() |
|
|
|
|
|
# final_price = serializers.SerializerMethodField() |
|
|
|
|
|
|
|
|
class Meta: |
|
|
class Meta: |
|
|
model = Course |
|
|
model = Course |
|
|
@ -61,16 +61,17 @@ class CourseListSerializer(serializers.ModelSerializer): |
|
|
return max(lessons_count, obj.lessons_count) |
|
|
return max(lessons_count, obj.lessons_count) |
|
|
|
|
|
|
|
|
def get_price(self, obj): |
|
|
def get_price(self, obj): |
|
|
return 0 if obj.is_free else obj.price |
|
|
|
|
|
|
|
|
if obj.is_free: |
|
|
|
|
|
return "0.00" |
|
|
|
|
|
return str(obj.price) |
|
|
|
|
|
|
|
|
def get_discount_percentage(self, obj): |
|
|
def get_discount_percentage(self, obj): |
|
|
return 0 if obj.is_free else obj.discount_percentage |
|
|
return 0 if obj.is_free else obj.discount_percentage |
|
|
|
|
|
|
|
|
def get_final_price(self, obj): |
|
|
def get_final_price(self, obj): |
|
|
return 0 if obj.is_free else obj.final_price |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if obj.is_free: |
|
|
|
|
|
return "0.00" |
|
|
|
|
|
return str(obj.final_price) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class CourseDetailSerializer(serializers.ModelSerializer): |
|
|
class CourseDetailSerializer(serializers.ModelSerializer): |
|
|
@ -216,13 +217,17 @@ class CourseDetailSerializer(serializers.ModelSerializer): |
|
|
return obj.participants.count() |
|
|
return obj.participants.count() |
|
|
|
|
|
|
|
|
def get_price(self, obj): |
|
|
def get_price(self, obj): |
|
|
return 0 if obj.is_free else obj.price |
|
|
|
|
|
|
|
|
if obj.is_free: |
|
|
|
|
|
return "0.00" |
|
|
|
|
|
return str(obj.price) |
|
|
|
|
|
|
|
|
def get_discount_percentage(self, obj): |
|
|
def get_discount_percentage(self, obj): |
|
|
return 0 if obj.is_free else obj.discount_percentage |
|
|
return 0 if obj.is_free else obj.discount_percentage |
|
|
|
|
|
|
|
|
def get_final_price(self, obj): |
|
|
def get_final_price(self, obj): |
|
|
return 0 if obj.is_free else obj.final_price |
|
|
|
|
|
|
|
|
if obj.is_free: |
|
|
|
|
|
return "0.00" |
|
|
|
|
|
return str(obj.final_price) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class MyCourseListSerializer(serializers.ModelSerializer): |
|
|
class MyCourseListSerializer(serializers.ModelSerializer): |
|
|
|