35 lines
1.1 KiB
Python
35 lines
1.1 KiB
Python
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"
|
|
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 |