Se agrego coves

This commit is contained in:
2025-08-06 14:28:34 -06:00
parent 543a3558ca
commit ea40a0c74e
3 changed files with 34 additions and 26 deletions

View File

@@ -1142,27 +1142,25 @@ async def get_cove(request: ServiceRemesaSchema):
# Obtener COVES
logger.info("Obteniendo COVES...")
try:
coves = await rest_controller.get_coves(service_data['pedimento']['id'])
if not coves:
logger.warning("No se encontraron COVES para el pedimento")
await _update_service_status(service_data['id'], ESTADO_ERROR, service_data, operation_name)
raise HTTPException(status_code=404, detail="No se encontraron COVES para el pedimento")
logger.info(f"Se encontraron {len(coves)} COVES")
except HTTPException:
raise
except Exception as e:
logger.error(f"Error al obtener COVES: {e}")
await _update_service_status(service_data['id'], ESTADO_ERROR, service_data, operation_name)
raise HTTPException(status_code=500, detail="Error al obtener COVES")
# Procesar acuses de documentos digitalizados
documentos_procesados = []
documentos_exitosos = 0
logger.info(f"Procesando COVE para {len(coves)} documentos...")
for idx, cove in enumerate(coves):
@@ -1173,17 +1171,17 @@ async def get_cove(request: ServiceRemesaSchema):
"procesado": False,
"error": None
}
# Verificar que el documento tenga número de cove
if not cove.get('numero_cove'):
logger.warning(f"Documento {idx + 1} no tiene numero_cove, saltando...")
documento_info["error"] = "Sin número de cove"
documentos_procesados.append(documento_info)
continue
try:
logger.info(f"Procesando cove para documento {idx + 1}: {cove['numero_cove']}")
# Procesar cove del documento
soap_response = await get_soap_cove(
credenciales=credentials,
response_service=service_data,
@@ -1191,7 +1189,7 @@ async def get_cove(request: ServiceRemesaSchema):
cove=cove,
idx=idx + 1
)
if soap_response:
documento_info["procesado"] = True
documento_info["documento"] = soap_response.get('documento', {})
@@ -1205,7 +1203,7 @@ async def get_cove(request: ServiceRemesaSchema):
logger.error(f"Error al procesar cove del documento {idx + 1}: {e}")
documento_info["error"] = str(e)
# Continuar con los siguientes documentos
documentos_procesados.append(documento_info)
# Verificar si se procesó al menos un documento