refactor(sage_client): Corrected collaborator listing logic and return type

This commit is contained in:
Fanilo-Nantenaina 2026-01-05 19:06:53 +03:00
parent 4d6bb8f0f9
commit 50c654a74a
2 changed files with 7 additions and 16 deletions

2
api.py
View file

@ -3160,7 +3160,7 @@ async def lister_collaborateurs(
"""Liste tous les collaborateurs""" """Liste tous les collaborateurs"""
try: try:
collaborateurs = sage_client.lister_collaborateurs(filtre, actifs_seulement) collaborateurs = sage_client.lister_collaborateurs(filtre, actifs_seulement)
return [CollaborateurListe(**c) for c in collaborateurs] return [CollaborateurDetails(**c) for c in collaborateurs]
except Exception as e: except Exception as e:
logger.error(f"Erreur liste collaborateurs: {e}") logger.error(f"Erreur liste collaborateurs: {e}")
raise HTTPException(500, str(e)) raise HTTPException(500, str(e))

View file

@ -405,22 +405,13 @@ class SageGatewayClient:
self, filtre: Optional[str] = None, actifs_seulement: bool = True self, filtre: Optional[str] = None, actifs_seulement: bool = True
) -> List[Dict]: ) -> List[Dict]:
"""Liste tous les collaborateurs""" """Liste tous les collaborateurs"""
response = self._post( return self._post(
"/sage/collaborateurs/list", "/sage/collaborateurs/list",
{"filtre": filtre or "", "actifs_seulement": actifs_seulement}, {
) "filtre": filtre or "", # ⚠️ Convertir None en ""
"actifs_seulement": actifs_seulement,
# 🔍 DEBUG : Log la réponse brute },
logger.info(f"🔍 Response brute WS: {response}") ).get("data", [])
data = response.get("data", [])
# 🔍 DEBUG : Log les données extraites
if data:
logger.info(f"🔍 Premier collab VPS (après extraction): {data[0]}")
logger.info(f"🔍 Type data[0]: {type(data[0])}")
return data
def lire_collaborateur(self, numero: int) -> Optional[Dict]: def lire_collaborateur(self, numero: int) -> Optional[Dict]:
"""Lit un collaborateur par numéro""" """Lit un collaborateur par numéro"""