diff --git a/api.py b/api.py index c5ec086..4a26f93 100644 --- a/api.py +++ b/api.py @@ -120,6 +120,51 @@ class ClientResponse(BaseModel): telephone: Optional[str] = None +class ClientDetails(ClientResponse): + type: int + qualite: str + est_prospect: bool + est_fournisseur: bool + est_actif: bool + est_en_sommeil: bool + + civilite: Optional[str] = None + nom: Optional[str] = None + prenom: Optional[str] = None + nom_complet: Optional[str] = None + contact: Optional[str] = None + + complement: Optional[str] = None + region: Optional[str] = None + pays: Optional[str] = None + + portable: Optional[str] = None + telecopie: Optional[str] = None + site_web: Optional[str] = None + + siret: Optional[str] = None + siren: Optional[str] = None + tva_intra: Optional[str] = None + code_naf: Optional[str] = None + forme_juridique: Optional[str] = None + + secteur: Optional[str] = None + effectif: Optional[int] = None + ca_annuel: Optional[float] = None + commercial_code: Optional[str] = None + commercial_nom: Optional[str] = None + + categorie_tarifaire: Optional[int] = None + categorie_comptable: Optional[int] = None + + encours_autorise: Optional[float] = None + assurance_credit: Optional[float] = None + compte_general: Optional[str] = None + + date_creation: Optional[str] = None + date_modification: Optional[str] = None + + class ArticleResponse(BaseModel): reference: str designation: str @@ -752,12 +797,12 @@ app.include_router(auth_router) # ===================================================== # ENDPOINTS - US-A1 (CRÉATION RAPIDE DEVIS) # ===================================================== -@app.get("/clients", response_model=List[ClientResponse], tags=["Clients"]) +@app.get("/clients", response_model=List[ClientDetails], tags=["Clients"]) async def rechercher_clients(query: Optional[str] = Query(None)): """🔍 Recherche clients via gateway Windows""" try: clients = sage_client.lister_clients(filtre=query or "") - return [ClientResponse(**c) for c in clients] + return [ClientDetails(**c) for c in clients] except Exception as e: logger.error(f"Erreur recherche clients: {e}") raise HTTPException(500, str(e))