from rest_framework import serializers from core.apps.evaluation.models import PropertyOwnerModel class BasePropertyOwnerSerializer(serializers.ModelSerializer): owner_type_display = serializers.CharField(source="get_owner_type_display", read_only=True) class Meta: model = PropertyOwnerModel fields = [ "id", "owner_type", "owner_type_display", "jshshir", "passport_series", "passport_number", "first_name", "last_name", "middle_name", "inn", "org_name", "created_at", ] class ListPropertyOwnerSerializer(BasePropertyOwnerSerializer): class Meta(BasePropertyOwnerSerializer.Meta): fields = [ "id", "owner_type_display", "first_name", "last_name", "org_name", "inn", "jshshir", ] class RetrievePropertyOwnerSerializer(BasePropertyOwnerSerializer): class Meta(BasePropertyOwnerSerializer.Meta): fields = BasePropertyOwnerSerializer.Meta.fields + [ "address", "passport_issued_date", "passport_issued_by", "org_address", "director_name", "mfo", "bank_account", "certificate_file", "updated_at", ] class CreatePropertyOwnerSerializer(BasePropertyOwnerSerializer): class Meta(BasePropertyOwnerSerializer.Meta): fields = [ "owner_type", "jshshir", "passport_series", "passport_number", "first_name", "last_name", "middle_name", "address", "passport_issued_date", "passport_issued_by", "inn", "org_name", "org_address", "director_name", "mfo", "bank_account", "certificate_file", ]