Files
centurion_erp/app/access/serializers/entity_person.py
2025-07-04 08:40:29 +09:30

73 lines
1.4 KiB
Python

from drf_spectacular.utils import extend_schema_serializer
from access.models.person import Person
from access.serializers.entity import (
BaseSerializer as BaseBaseSerializer,
ModelSerializer as BaseModelSerializer,
)
from access.serializers.organization import TenantBaseSerializer
class BaseSerializer(
BaseBaseSerializer,
):
pass
@extend_schema_serializer(component_name = 'PersonEntityModelSerializer')
class ModelSerializer(
BaseSerializer,
BaseModelSerializer,
):
"""Person Model
This model inherits from the Entity base model.
"""
class Meta:
model = Person
fields = [
'id',
'entity_ptr_id',
'organization',
'entity_type',
'display_name',
'f_name',
'm_name',
'l_name',
'dob',
'model_notes',
'created',
'modified',
'_urls',
]
read_only_fields = [
'id',
'display_name',
'entity_type',
'created',
'modified',
'_urls',
]
@extend_schema_serializer(component_name = 'PersonEntityViewSerializer')
class ViewSerializer(
ModelSerializer,
):
"""Person View Model
This model inherits from the Entity base model.
"""
organization = TenantBaseSerializer(many=False, read_only=True)