Add initial implementations for forms and organization apps with serializers, factories, and admin configurations
Some checks failed
CI/CD Pipeline / Run Tests (push) Failing after 45s
CI/CD Pipeline / Code Quality Checks (push) Failing after 48s
CI/CD Pipeline / Build Docker Images (push) Has been skipped
CI/CD Pipeline / Push to Gitea Registry (push) Has been skipped
CI/CD Pipeline / Deploy to Server (push) Has been skipped

This commit is contained in:
2026-03-28 18:23:06 +01:00
parent 8ed3e1175c
commit 345b1d0cc8
201 changed files with 15097 additions and 6691 deletions

View File

@@ -7,12 +7,33 @@
"""
from apps.organization.models import Organization
from apps.registers.models import Register
from rest_framework import serializers
class OrganizationRegisterSerializer(serializers.ModelSerializer):
"""Краткий сериализатор активного реестра организации."""
class Meta:
model = Register
fields = ["id", "name"]
read_only_fields = fields
class OrganizationSerializer(serializers.ModelSerializer):
"""Полный сериализатор организации."""
active_registry_names = serializers.SerializerMethodField()
active_registries = serializers.SerializerMethodField()
@staticmethod
def get_active_registry_names(obj: Organization) -> list[str]:
return obj.get_active_registry_names()
@staticmethod
def get_active_registries(obj: Organization) -> list[dict[str, str]]:
return OrganizationRegisterSerializer(obj.get_active_registries(), many=True).data
class Meta:
model = Organization
fields = [
@@ -22,6 +43,8 @@ class OrganizationSerializer(serializers.ModelSerializer):
"ogrn",
"kpp",
"okpo",
"active_registry_names",
"active_registries",
"created_at",
"updated_at",
]
@@ -31,6 +54,12 @@ class OrganizationSerializer(serializers.ModelSerializer):
class OrganizationListSerializer(serializers.ModelSerializer):
"""Краткий сериализатор для списков."""
active_registry_names = serializers.SerializerMethodField()
@staticmethod
def get_active_registry_names(obj: Organization) -> list[str]:
return obj.get_active_registry_names()
class Meta:
model = Organization
fields = [
@@ -38,4 +67,5 @@ class OrganizationListSerializer(serializers.ModelSerializer):
"name",
"inn",
"ogrn",
"active_registry_names",
]