payemnt billing and credits refactoring
This commit is contained in:
@@ -41,6 +41,11 @@ class AccountSerializer(serializers.ModelSerializer):
|
||||
plan = PlanSerializer(read_only=True)
|
||||
plan_id = serializers.PrimaryKeyRelatedField(queryset=Plan.objects.filter(is_active=True), write_only=True, source='plan', required=False)
|
||||
subscription = SubscriptionSerializer(read_only=True, allow_null=True)
|
||||
total_credits = serializers.SerializerMethodField()
|
||||
|
||||
def get_total_credits(self, obj):
|
||||
"""Return total available credits (plan + bonus)."""
|
||||
return obj.credits + obj.bonus_credits
|
||||
|
||||
def validate_plan_id(self, value):
|
||||
"""Validate plan_id is provided during creation."""
|
||||
@@ -52,7 +57,7 @@ class AccountSerializer(serializers.ModelSerializer):
|
||||
model = Account
|
||||
fields = [
|
||||
'id', 'name', 'slug', 'owner', 'plan', 'plan_id',
|
||||
'credits', 'status', 'payment_method',
|
||||
'credits', 'bonus_credits', 'total_credits', 'status', 'payment_method',
|
||||
'subscription', 'billing_country',
|
||||
'account_timezone', 'timezone_mode', 'timezone_offset',
|
||||
'created_at'
|
||||
|
||||
Reference in New Issue
Block a user