deploy product & quota base system
This commit is contained in:
@@ -3,7 +3,6 @@ from apps.authorization.api.v1.serializers import (
|
||||
PermissionSerializer,
|
||||
RoleSerializer
|
||||
)
|
||||
from rest_framework.response import Response
|
||||
from rest_framework import serializers
|
||||
from apps.authentication.models import (
|
||||
User,
|
||||
@@ -18,6 +17,8 @@ import typing
|
||||
|
||||
|
||||
class CitySerializer(serializers.ModelSerializer):
|
||||
""" Serialize city data """
|
||||
|
||||
class Meta:
|
||||
model = City
|
||||
fields = [
|
||||
@@ -27,6 +28,8 @@ class CitySerializer(serializers.ModelSerializer):
|
||||
|
||||
|
||||
class ProvinceSerializer(serializers.ModelSerializer):
|
||||
""" Serialize province data """
|
||||
|
||||
class Meta:
|
||||
model = Province
|
||||
fields = [
|
||||
@@ -36,6 +39,8 @@ class ProvinceSerializer(serializers.ModelSerializer):
|
||||
|
||||
|
||||
class BankAccountSerializer(serializers.ModelSerializer):
|
||||
""" Serialize bank account data """
|
||||
|
||||
class Meta:
|
||||
model = BankAccountInformation
|
||||
fields = [
|
||||
@@ -63,23 +68,9 @@ class BankAccountSerializer(serializers.ModelSerializer):
|
||||
return instance
|
||||
|
||||
|
||||
class UserDataRelationSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = authorize_models.UserRelations
|
||||
fields = '__all__'
|
||||
|
||||
def to_representation(self, instance):
|
||||
representation = super().to_representation(instance)
|
||||
representation['role'] = RoleSerializer(instance.role).data
|
||||
representation['organization'] = instance.organization.name
|
||||
representation['permissions'] = PermissionSerializer().permissions_structure_output(
|
||||
instance.permissions.all()
|
||||
)
|
||||
|
||||
return representation
|
||||
|
||||
|
||||
class UserSerializer(serializers.ModelSerializer):
|
||||
""" Serialize user data """
|
||||
|
||||
class Meta:
|
||||
model = User
|
||||
fields = [
|
||||
@@ -103,11 +94,9 @@ class UserSerializer(serializers.ModelSerializer):
|
||||
]
|
||||
|
||||
def to_representation(self, instance):
|
||||
""" Custom output """
|
||||
|
||||
representation = super().to_representation(instance)
|
||||
if authorize_models.UserRelations.objects.filter(user=instance).exists():
|
||||
representation['relation_data'] = UserDataRelationSerializer(
|
||||
authorize_models.UserRelations.objects.filter(user=instance).first()
|
||||
).data
|
||||
if instance.bank_information.all():
|
||||
representation['bank_account'] = BankAccountSerializer(
|
||||
instance.bank_information.all(), many=True
|
||||
@@ -160,6 +149,8 @@ class UserSerializer(serializers.ModelSerializer):
|
||||
|
||||
|
||||
class OrganizationTypeSerializer(serializers.ModelSerializer):
|
||||
""" Serialize organization type data """
|
||||
|
||||
class Meta:
|
||||
model = OrganizationType
|
||||
fields = [
|
||||
@@ -170,6 +161,8 @@ class OrganizationTypeSerializer(serializers.ModelSerializer):
|
||||
|
||||
|
||||
class OrganizationSerializer(serializers.ModelSerializer):
|
||||
""" Serialize organization data """
|
||||
|
||||
class Meta:
|
||||
model = Organization
|
||||
fields = [
|
||||
@@ -184,14 +177,16 @@ class OrganizationSerializer(serializers.ModelSerializer):
|
||||
extra_kwargs = {}
|
||||
|
||||
def to_representation(self, instance):
|
||||
""" Custom output """
|
||||
representation = super().to_representation(instance)
|
||||
if isinstance(instance, Organization):
|
||||
representation['province'] = ProvinceSerializer(instance.province).data
|
||||
representation['city'] = CitySerializer(instance.city).data
|
||||
representation['type'] = OrganizationTypeSerializer(instance.type).data
|
||||
if instance.parent_organization:
|
||||
representation['parent_organization'] = OrganizationSerializer(instance.parent_organization).data
|
||||
|
||||
representation['parent_organization'] = OrganizationSerializer(
|
||||
instance.parent_organization
|
||||
).data
|
||||
return representation
|
||||
|
||||
def update(self, instance, validated_data):
|
||||
|
||||
Reference in New Issue
Block a user