31 lines
982 B
Python
Executable File
31 lines
982 B
Python
Executable File
from rest_framework import serializers
|
|
|
|
from fwd_api.models import SubscriptionRequest, Subscription
|
|
|
|
from fwd_api.utils.date import FORMAT
|
|
|
|
|
|
class SubscriptionResponse(serializers.Serializer):
|
|
id = serializers.IntegerField(read_only=True)
|
|
current_token = serializers.IntegerField(required=False)
|
|
limit_token = serializers.IntegerField(required=False)
|
|
start_at = serializers.DateTimeField(required=False, format=FORMAT.DD_MM_YYYY_HHMMSS.value)
|
|
expired_at = serializers.DateTimeField(required=False, format=FORMAT.DD_MM_YYYY_HHMMSS.value)
|
|
plan_code = serializers.SerializerMethodField()
|
|
|
|
def create(self, validated_data):
|
|
"""
|
|
Create and return a new `Snippet` instance, given the validated data.
|
|
"""
|
|
return SubscriptionRequest.objects.create(**validated_data)
|
|
|
|
def update(self, instance, validated_data):
|
|
return instance
|
|
|
|
def get_plan_code(self, obj: Subscription):
|
|
return obj.pricing_plan.code
|
|
|
|
|
|
|
|
|