2020-02-28 14:46:33 +01:00
|
|
|
from rest_framework import serializers
|
|
|
|
from .models import MatrixServiceProduct
|
2020-03-03 10:51:16 +01:00
|
|
|
from uncloud_vm.serializers import ManagedVMProductSerializer
|
2020-02-29 09:08:30 +01:00
|
|
|
from uncloud_vm.models import VMProduct
|
2020-03-03 10:51:16 +01:00
|
|
|
from uncloud_pay.models import RecurringPeriod
|
2020-02-28 14:46:33 +01:00
|
|
|
|
|
|
|
class MatrixServiceProductSerializer(serializers.ModelSerializer):
|
2020-03-03 10:51:16 +01:00
|
|
|
vm = ManagedVMProductSerializer()
|
|
|
|
|
|
|
|
# Custom field used at creation (= ordering) only.
|
|
|
|
recurring_period = serializers.ChoiceField(
|
|
|
|
choices=MatrixServiceProduct.allowed_recurring_periods())
|
2020-02-28 16:26:45 +01:00
|
|
|
|
2020-02-28 14:46:33 +01:00
|
|
|
class Meta:
|
|
|
|
model = MatrixServiceProduct
|
2020-03-03 10:51:16 +01:00
|
|
|
fields = ['uuid', 'order', 'owner', 'status', 'vm', 'domain', 'recurring_period']
|
2020-02-28 16:26:45 +01:00
|
|
|
read_only_fields = ['uuid', 'order', 'owner', 'status']
|