From 7bc8400980bdd4a9106f8c94af0970cca0ce88db Mon Sep 17 00:00:00 2001 From: bcastrogallardo Date: Thu, 17 Jul 2025 09:43:13 -0400 Subject: [PATCH] cambios --- BLL/Recuperacion_DGA/EnvioDGA.cs | 49 ++++++++++++++++---------------- DAL/LogEnvioRepository.cs | 37 ------------------------ DAL/MedicionDGARepository.cs | 15 ---------- DAS/RegistrarMedicion.cs | 2 +- 4 files changed, 25 insertions(+), 78 deletions(-) diff --git a/BLL/Recuperacion_DGA/EnvioDGA.cs b/BLL/Recuperacion_DGA/EnvioDGA.cs index 3b88865..d5b30c6 100644 --- a/BLL/Recuperacion_DGA/EnvioDGA.cs +++ b/BLL/Recuperacion_DGA/EnvioDGA.cs @@ -35,35 +35,37 @@ namespace BLL.Recuperacion_DGA ConsoleLoggerHelper.WriteLineAndLogInfo("Obteniendo Mediciones Scada", ConsoleColor.Green); var mediciones = await _dGAMedicionRepository.ObtenerMedicionesAsync(); - var listaMediciones = new List(); + var medicionesEnviadas = new List(); + var logs = new List(); foreach (var medicion in mediciones) { try { - var fechaEnvio = DateTime.UtcNow; + var fechaEnvio = DateTime.UtcNow; - var body = new MedicionSubterraneaRequest + var body = new MedicionSubterraneaRequest + { + Autenticacion = new Autenticacion { - Autenticacion = new Autenticacion - { - Password = CredencialDGA.Password, - RutEmpresa = medicion.TIPO_EMPRESA == "EV" ? CredencialDGA.RutEsval : CredencialDGA.RutAv, - RutUsuario = CredencialDGA.RutUsuario - }, - 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 ?? "", - } - }; + Password = CredencialDGA.Password, + RutEmpresa = medicion.TIPO_EMPRESA == "EV" ? CredencialDGA.RutEsval : CredencialDGA.RutAv, + RutUsuario = CredencialDGA.RutUsuario + }, + 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 ?? "", + } + }; - var response = await _registrarMedicion.EnviarMedicionAsync(medicion, body, fechaEnvio); + var response = await _registrarMedicion.EnviarMedicionAsync(medicion, body, fechaEnvio); - listaMediciones.Add(new {Id = medicion.ID,FechaEnvio = fechaEnvio.ToString("yyyy-MM-dd HH:mm:ss"), Enviado = 1}); + medicionesEnviadas.Add(new {Id = medicion.ID,FechaEnvio = fechaEnvio.ToString("yyyy-MM-dd HH:mm:ss"), Enviado = 1}); + logs.Add(response); } catch (Exception ex) { @@ -71,12 +73,9 @@ namespace BLL.Recuperacion_DGA ConsoleLoggerHelper.WriteLineAndLogInfo($"Error al enviar la medición con ID {medicion.CODIGO_DGA}.", ConsoleColor.Red); } } - var listaMedicionesJson = JsonSerializer.Serialize(listaMediciones); - if (listaMediciones.Count > 0) - { - await MedicionDGARepository.ActualizarMedicionesAsync(listaMedicionesJson); - } + //INSERTAR DATOS DE LOGS, ACTUALIZAR REGISTROS + ConsoleLoggerHelper.WriteLineAndLogEventoAsync("FIN","Fin proceso de recuperación DGA",""); } diff --git a/DAL/LogEnvioRepository.cs b/DAL/LogEnvioRepository.cs index 6213939..363a317 100644 --- a/DAL/LogEnvioRepository.cs +++ b/DAL/LogEnvioRepository.cs @@ -9,43 +9,6 @@ namespace DAL { public class LogEnvioRepository { - public async Task InsertarLogEnvioAsync(LogMedicionEnvio logMedicionScada) - { - try - { - await using (var connection = new SqlConnection(BdConexion.StringConnection)) - { - // No es necesario hacer OpenAsync: Dapper lo abre si hace falta - var sql = @" - INSERT INTO dbo.DGA_LOGS_ENVIOS - ( - [ESTADO_ENVIO], - [JSON_ENVIO], - [JSON_RESPUESTA], - [COMPROBANTE], - [FECHA_ENVIO], - [ID_DGA_DATO] - ) - VALUES - ( - @ESTADO_ENVIO, - @JSON_ENVIO, - @JSON_RESPUESTA, - @COMPROBANTE, - @FECHA_ENVIO, - @ID_DGA_DATO - );"; - - await connection.ExecuteAsync(sql, logMedicionScada); - return true; - } - } - catch (Exception ex) - { - return false; - } - } - public async Task InsertarLogProcesoAsync(LogProceso log) { try diff --git a/DAL/MedicionDGARepository.cs b/DAL/MedicionDGARepository.cs index f291829..4d4dced 100644 --- a/DAL/MedicionDGARepository.cs +++ b/DAL/MedicionDGARepository.cs @@ -18,20 +18,5 @@ namespace DAL return result.ToList(); } - - public static async Task ActualizarMedicionesAsync(string medicionesJson) - { - //TODO: ACTUALIZAR REGISTROS - try - { - await using var connection = new SqlConnection(BdConexion.StringConnection); - await connection.ExecuteAsync("SP_ACTUALIZAR_MEDICION_SMARTSCADA_OPERACION", new { JsonMediciones = medicionesJson }, commandType: CommandType.StoredProcedure); - return true; - } - catch (Exception ex) - { - throw new Exception($"Error: {ex.Message}"); - } - } } } diff --git a/DAS/RegistrarMedicion.cs b/DAS/RegistrarMedicion.cs index 76983a3..e30b35f 100644 --- a/DAS/RegistrarMedicion.cs +++ b/DAS/RegistrarMedicion.cs @@ -65,7 +65,7 @@ namespace DAS } finally { - await _logMedicionScadaRepository.InsertarLogEnvioAsync(log); + } return log;