diff --git a/SyncReferences2IONOS/SyncReferences2IONOS.py b/SyncReferences2IONOS/SyncReferences2IONOS.py index effe40a..405e730 100644 --- a/SyncReferences2IONOS/SyncReferences2IONOS.py +++ b/SyncReferences2IONOS/SyncReferences2IONOS.py @@ -61,7 +61,7 @@ def WriteToLog(referencia): referencia = referencia.replace('[', '') referencia = referencia.replace(']', '') if referencia in processed_files: - print(f"El archivo {referencia} ya ha sido trabajada .") + print(f"El archivo {referencia} ya ha sido procesado.") return False with open('./log/Referencias.txt', 'a') as f: @@ -71,7 +71,7 @@ def WriteToLog(referencia): log_file = "./log/fechayHora.txt" WriteToLogDate(log_file, referencia) - print(f"El archivo {referencia} ha sido registrado en la carpeta Log en los respectivos archivos.") + print(f"El archivo {referencia} ha sido registrado.") return True def CreateFolderContent(): @@ -92,10 +92,13 @@ def CreateFolderContent(): + ";PWD=" + PasswordSIR ) cursor = cnxn.cursor() - cursor.execute("""SELECT P.sReferencia, p.Archivo, P.Aduana, P.Patente, P.Pedimento, P.[Pedimento Fecha Pago], Peds.nTipoCambio, + cursor.execute("""SELECT P.sReferencia, p.Archivo, P.Aduana, P.Patente, P.Pedimento, P.[Pedimento Fecha Pago], Peds.nTipoCambio, Res.sDescripcion, P.Clave, P.Cliente FROM SIR.Admin.SIR_VT_PedimPagados P INNER JOIN SIR.SIR.SIR_149_PEDIMENTO AS Peds ON Peds.nIdPedimento149=ID - WHERE P.ClienteClave=2096 and p.[Pedimento FechaPago]>=CAST( GETDATE()-5 AS Date ) """) + INNER JOIN SIR.SIR.SIR_216_ARCHIVOS_PEDIMENTO A ON A.nIdArchM3216=Peds.nIdArchM3216 + INNER JOIN SIR.SIR.SIR_217_PEDIMENTO_ARCHIVOM3 Rel on A.nIdArchM3216 = Rel.nIdArchM3216 + INNER JOIN SIR.SIR.SIR_218_RESPUESTA_VALIDACION Res on Res.nIdArchM3216 = Rel.nIdArchM3216 AND Res.sDescripcion LIKE '%.err' + WHERE P.ClienteClave=2096 and p.[Pedimento FechaPago]>=CAST( GETDATE()-2 AS Date ) """) for row in cursor: referencia = row[0] archivoM = row[1] @@ -104,23 +107,34 @@ def CreateFolderContent(): pedimento = row[4] fPago = row[5] tipoCambio = row[6] - clave = row[7] - cliente = row [8] + descripcion = row[7] + clave = row[8] + cliente = row[9] referenceFolder = TempFolder + referencia + archivo_sDescripcion = os.path.join(referenceFolder, descripcion) + + + if referencia in processed_references: - print(f"La referencia {referencia} ya se ha trabajado.") + print(f"La referencia {referencia} ya ha sido procesada.") continue + if os.path.exists(referenceFolder): shutil.rmtree(referenceFolder) shutil.copytree(RepositoryArchivoElectronicoOficial + str(YEAR) + '/' + referencia, referenceFolder) + # Validar si el archivo sDescripcion existe en la carpeta del folder + if not os.path.isfile(archivo_sDescripcion): + print(f"El archivo {descripcion} no existe en la carpeta del folder para la referencia {referencia}. Proceso detenido.") + continue zip_file = referenceFolder+'_____'+cliente+'.zip' if os.path.exists(zip_file) == False: ZipReference(referencia, referenceFolder, cliente) + # Procesar archivo if WriteToLog(referencia): processed_references.append(referencia) - URL = 'https://www.gemcousa.mx/GEMCOBackend/api/AmazonInvoice/UploadSIRReference?ArchivoM=' +\ + URL = 'http://localhost:5000/api/AmazonInvoice/UploadSIRReference?ArchivoM=' +\ archivoM+'&aduana='+aduana+'&patente='+patente + \ '&pedimento='+pedimento+'&fPago=' + \ str(fPago)+'&TipoCambio='+str(tipoCambio)+'&clave='+clave @@ -135,12 +149,18 @@ def CreateFolderContent(): 'tipoCambio' : str(tipoCambio), 'clave': clave } - print( f"la referencia {referencia} esta siendo enviada al servidor." ) - r = requests.post(url=URL,files=multiple_files, verify=False, timeout=30) + print( f"la referencia {referencia} ya ha sido posteada." ) + r = requests.post(url=URL,files=multiple_files, verify=False, timeout=1000000) except Exception as e: print("Error: %s" % e) # WriteToLog(r.text) - + ''' contents = [os.path.join(TempFolder, i) for i in os.listdir(TempFolder)] [shutil.rmtree(i) if os.path.isdir(i) and not os.path.islink(i) else os.remove(i) for i in contents] ''' CreateFolderContent() + + + + + #URL = 'https://www.gemcousa.mx/GEMCOBackend/api/AmazonInvoice/UploadSIRReference?ArchivoM=' +\ +# URL = 'http://localhost:5000/api/AmazonInvoice/UploadSIRReference?ArchivoM=' +\ \ No newline at end of file