from pydantic import Field, ConfigDict from firm.entity.models import Entity, Institution, Individual, Corporation from firm.core.schemas import Writer, Reader class EntityRead(Reader, Entity): pass class EntityCreate(Writer): model_config = ConfigDict(title="Création d'un client") entity_data: Individual | Corporation | Institution = Field(..., discriminator='type') address: str = Field(default="", title='Adresse') class EntityIndividualCreate(EntityCreate): entity_data: Individual class EntityCorporationCreate(EntityCreate): entity_data: Corporation class EntityUpdate(EntityCreate): pass