feat(billing): WIP Add Topup model, filters, serializers, and views for topup management

This commit is contained in:
2025-07-03 17:13:25 +05:00
parent bae0882879
commit c07d3c93d2
7 changed files with 172 additions and 7 deletions

View File

@ -1,19 +1,37 @@
from rest_framework import serializers
from .models import Payment
from .models import Payment, Topup
from devices.serializers import DeviceSerializer
from api.serializers import CustomReadOnlyUserSerializer
class PaymentSerializer(serializers.ModelSerializer):
devices = DeviceSerializer(many=True, read_only=True)
class Meta:
class Meta: # type: ignore
model = Payment
fields = "__all__"
class UpdatePaymentSerializer(serializers.ModelSerializer):
class Meta:
class Meta: # type: ignore
model = Payment
fields = [
"number_of_months",
]
class TopupSerializer(serializers.ModelSerializer):
user = CustomReadOnlyUserSerializer(read_only=True)
class Meta: # type: ignore
model = Topup
fields = [
"id",
"amount",
"user",
"paid",
"mib_reference",
"created_at",
"updated_at",
]
read_only_fields = ["id", "created_at", "updated_at"]