from pydantic import BaseModel, Field from typing import Optional, List class ContactCreate(BaseModel): full_name: str email: str phone: Optional[str] = None contact_type: str = "primary" class CorpOnboardIn(BaseModel): # Névkezelés full_name: str = Field(..., description="Teljes hivatalos név") name: str = Field(..., description="Rövidített cégnév (pl. ProfiBot Kft.)") display_name: str = Field(..., description="Alkalmazáson belüli rövidítés (pl. ProfiBot)") tax_number: str country_code: str = "HU" language: str = Field("hu", description="A szervezet alapértelmezett nyelve") default_currency: str = Field("HUF", description="A szervezet alapértelmezett pénzneme") reg_number: Optional[str] = None # Atomizált Címkezelés address_zip: str address_city: str address_street_name: Optional[str] = None address_street_type: Optional[str] = None # utca, út, tér, dűlő address_house_number: Optional[str] = None address_hrsz: Optional[str] = None # Helyrajzi szám (ha nincs utca/házszám) address_stairwell: Optional[str] = None address_floor: Optional[str] = None address_door: Optional[str] = None contacts: List[ContactCreate] = [] class CorpOnboardResponse(BaseModel): organization_id: int status: str