54 lines
2.7 KiB
Python
54 lines
2.7 KiB
Python
from typing import Optional
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class Collaborateur(BaseModel):
|
|
"""Modèle pour un collaborateur/commercial"""
|
|
|
|
numero: Optional[int] = Field(None, description="Numéro du collaborateur (CO_No)")
|
|
nom: Optional[str] = Field(None, description="Nom (CO_Nom)")
|
|
prenom: Optional[str] = Field(None, description="Prénom (CO_Prenom)")
|
|
fonction: Optional[str] = Field(None, description="Fonction (CO_Fonction)")
|
|
adresse: Optional[str] = Field(None, description="Adresse (CO_Adresse)")
|
|
complement: Optional[str] = Field(
|
|
None, description="Complément adresse (CO_Complement)"
|
|
)
|
|
code_postal: Optional[str] = Field(None, description="Code postal (CO_CodePostal)")
|
|
ville: Optional[str] = Field(None, description="Ville (CO_Ville)")
|
|
region: Optional[str] = Field(None, description="Région (CO_CodeRegion)")
|
|
pays: Optional[str] = Field(None, description="Pays (CO_Pays)")
|
|
service: Optional[str] = Field(None, description="Service (CO_Service)")
|
|
est_vendeur: Optional[bool] = Field(None, description="Est vendeur (CO_Vendeur)")
|
|
est_caissier: Optional[bool] = Field(None, description="Est caissier (CO_Caissier)")
|
|
est_acheteur: Optional[bool] = Field(None, description="Est acheteur (CO_Acheteur)")
|
|
telephone: Optional[str] = Field(None, description="Téléphone (CO_Telephone)")
|
|
telecopie: Optional[str] = Field(None, description="Fax (CO_Telecopie)")
|
|
email: Optional[str] = Field(None, description="Email (CO_EMail)")
|
|
tel_portable: Optional[str] = Field(None, description="Portable (CO_TelPortable)")
|
|
matricule: Optional[str] = Field(None, description="Matricule (CO_Matricule)")
|
|
facebook: Optional[str] = Field(None, description="Facebook (CO_Facebook)")
|
|
linkedin: Optional[str] = Field(None, description="LinkedIn (CO_LinkedIn)")
|
|
skype: Optional[str] = Field(None, description="Skype (CO_Skype)")
|
|
est_actif: Optional[bool] = Field(None, description="Est actif (CO_Sommeil=0)")
|
|
est_chef_ventes: Optional[bool] = Field(
|
|
None, description="Est chef des ventes (CO_ChefVentes)"
|
|
)
|
|
chef_ventes_numero: Optional[int] = Field(
|
|
None, description="N° chef des ventes (CO_NoChefVentes)"
|
|
)
|
|
|
|
class Config:
|
|
json_schema_extra = {
|
|
"example": {
|
|
"numero": 1,
|
|
"nom": "DUPONT",
|
|
"prenom": "Jean",
|
|
"fonction": "Commercial",
|
|
"service": "Ventes",
|
|
"est_vendeur": True,
|
|
"telephone": "0123456789",
|
|
"email": "j.dupont@entreprise.fr",
|
|
"tel_portable": "0612345678",
|
|
"est_actif": True,
|
|
}
|
|
}
|