diff --git a/api.py b/api.py index 2c946c8..1bea9da 100644 --- a/api.py +++ b/api.py @@ -1147,14 +1147,25 @@ async def devis_vers_commande(id: str, session: AsyncSession = Depends(get_sessi """ 🔧 Transformation Devis → Commande ✅ CORRECTION : Utilise les VRAIS types Sage (0 → 10) + ✅ Met à jour le statut du devis source à 5 (Transformé) """ try: + # Étape 1: Transformation resultat = sage_client.transformer_document( numero_source=id, type_source=settings.SAGE_TYPE_DEVIS, # = 0 type_cible=settings.SAGE_TYPE_BON_COMMANDE, # = 10 ) + # Étape 2: Mettre à jour le statut du devis à 5 (Transformé) + try: + sage_client.changer_statut_devis(id, nouveau_statut=5) + logger.info(f"✅ Statut devis {id} mis à jour: 5 (Transformé)") + except Exception as e: + logger.warning(f"⚠️ Impossible de mettre à jour le statut du devis {id}: {e}") + # On continue même si la MAJ statut échoue + + # Étape 3: Logger la transformation workflow_log = WorkflowLog( id=str(uuid.uuid4()), document_source=id, @@ -1178,6 +1189,7 @@ async def devis_vers_commande(id: str, session: AsyncSession = Depends(get_sessi "document_source": id, "document_cible": resultat["document_cible"], "nb_lignes": resultat["nb_lignes"], + "statut_devis_mis_a_jour": True, } except Exception as e: