Integracion_DGA/BLL/Recuperacion_DGA/EnvioDGA.cs
bcastrogallardo f62bb133c5 prueba logs
2025-09-11 13:05:43 -03:00

146 lines
7.5 KiB
C#

using System;
using System.Text.Json;
using DAL;
using DAS;
using Shared.DTO;
using Shared.DTO.Envios_DGA;
using Shared.DTO.VariablesEntorno;
using Shared.Helper;
namespace BLL.Recuperacion_DGA
{
public class EnvioDGA
{
private readonly MedicionDGARepository _dGAMedicionRepository;
private readonly RegistrarMedicion _registrarMedicion;
private readonly LogEnvioRepository _logEnvioRepository;
public EnvioDGA(MedicionDGARepository dGAMedicionRepository, RegistrarMedicion registrarMedicion, LogEnvioRepository logEnvioRepository)
{
_dGAMedicionRepository = dGAMedicionRepository;
_registrarMedicion = registrarMedicion;
_logEnvioRepository = logEnvioRepository;
}
public async Task<bool> RegistrarMedicionesAsync()
{
//try
//{
// await _logEnvioRepository.InsertarLogProcesoAsync(new LogProceso
// {
// FechaEjecucion = DateTime.UtcNow,
// NombreProceso = "ENVIO DATOS DGA"
// });
// ConsoleLoggerHelper.WriteLineAndLogEventoAsync("INICIO", "Inicio proceso de recuperación DGA", "");
// ConsoleLoggerHelper.WriteLineAndLogInfo("Obteniendo Mediciones Scada", ConsoleColor.Green);
// var logsEnviado = new LogMedicionEnvio();
// var pageNumber = 1;
// var fechaInicio = DateTime.UtcNow;
// var cont = 1;
// while (true)
// {
// var mediciones = await _dGAMedicionRepository.ObtenerMedicionesPorLoteAsync(pageNumber, fechaInicio);
// var totalMediciones = await _dGAMedicionRepository.ObtenerTotalMediciones(fechaInicio);
// if (mediciones == null || mediciones.Count == 0)
// {
// break;
// }
// foreach (var medicion in mediciones)
// {
// try
// {
// var fechaEnvio = DateTime.UtcNow;
// var body = new MedicionSubterraneaRequest
// {
// Autenticacion = new Autenticacion
// {
// Password = medicion.Password ?? "",
// RutEmpresa = medicion.Empresa_Informante == "EV" ? CredencialDGA.RutEsval : CredencialDGA.RutAv,
// RutUsuario = medicion.RUT ?? ""
// },
// MedicionSubterranea = new Medicion
// {
// Caudal = medicion.CAUDAL ?? "",
// FechaMedicion = medicion.FECHA_MEDICION_CAUDAL?.ToString("yyyy-MM-dd") ?? "",
// HoraMedicion = medicion.FECHA_MEDICION_CAUDAL?.ToString("HH:mm:ss") ?? "",
// NivelFreaticoDelPozo = medicion.NIVEL_FREATICO_DEL_POZO ?? "",
// Totalizador = medicion.TOTALIZADOR_CAUDAL ?? "",
// }
// };
// ConsoleLoggerHelper.WriteLineAndLogInfo($"Enviando medición DGA {cont} - {totalMediciones}", ConsoleColor.Yellow);
// var response = await _registrarMedicion.EnviarMedicionAsync(medicion, body, fechaEnvio);
// logsEnviado = response;
// await _logEnvioRepository.InsertarLogRespuesta(logsEnviado);
// if (logsEnviado.ESTADO_ENVIO == "EXITO")
// {
// await _dGAMedicionRepository.GuardarMedicionesEnviadaAsync(medicion.ID);
// }
// ConsoleLoggerHelper.WriteLineAndLogInfo($"Estado medición enviada {logsEnviado.ESTADO_ENVIO ?? ""}", ConsoleColor.Yellow);
// cont++;
// }
// catch (Exception ex)
// {
// ConsoleLoggerHelper.WriteLineAndLogInfo($"[Error]: medicion[{medicion.ID}], mensaje: {ex.Message}");
// }
// }
// mediciones.Clear();
// pageNumber++;
// }
// ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN","Fin proceso de recuperación DGA","");
//}
//catch (Exception ex)
//{
// FileLoggerHelper.LogError($"[Error] {ex.Message}.", ex);
// ConsoleLoggerHelper.WriteLineAndLogInfo($"Error al procesar las mediciones.", ConsoleColor.Red);
// return false;
//}
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
await Task.Delay(5000);
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
await Task.Delay(5000);
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
await Task.Delay(5000);
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
await Task.Delay(5000);
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN", "Fin proceso de recuperación DGA", "");
return true;
}
}
}