diff --git a/BLL/BLL.csproj b/BLL/BLL.csproj index 61194cb..b0d3427 100644 --- a/BLL/BLL.csproj +++ b/BLL/BLL.csproj @@ -6,6 +6,10 @@ enable + + + + diff --git a/BLL/Integracion_DGA/ApiService.cs b/BLL/Integracion_DGA/ApiService.cs new file mode 100644 index 0000000..d666502 --- /dev/null +++ b/BLL/Integracion_DGA/ApiService.cs @@ -0,0 +1,111 @@ +using System.Text.Json; +using System.Text; +using Azure.Core; +using System; +using Newtonsoft.Json; + +namespace BLL.Integracion_DGA +{ + public class ApiService + { + private readonly HttpClient _httpClient; + + public ApiService(HttpClient httpClient) + { + _httpClient = httpClient ?? throw new ArgumentNullException(nameof(httpClient)); + } + + public async Task GetApiResponseAsync(string apiUrl, Dictionary headers = null) + { + + using (var httpClient = new HttpClient()) + { + // Configura la URL base + httpClient.BaseAddress = new Uri(apiUrl); + + var request = new HttpRequestMessage(HttpMethod.Get, apiUrl); + + // Configura los encabezados personalizados si se proporcionan + if (headers != null) + { + foreach (var header in headers) + { + request.Headers.Add(header.Key, header.Value); + } + } + + // Realiza la solicitud con la solicitud personalizada + try + { + var response = await httpClient.SendAsync(request); + if (response.IsSuccessStatusCode) + { + return await response.Content.ReadAsStringAsync(); + } + else + { + // Maneja errores aquí según sea necesario. + Console.WriteLine($"Error en la solicitud: {response.StatusCode}"); + throw new HttpRequestException($"Error en la solicitud HTTP. Código de estado: {response.StatusCode}"); + } + }catch (Exception ex) + { + Console.WriteLine("Error: " + ex.Message); + throw new Exception($"Error en la solicitud HTTP: {ex.Message}"); + // Maneja la excepción según sea necesario + } + } + } + + public async Task PostApiResponseAsync(string apiUrl, Dictionary headers = null, object data = null) + { + using (var httpClient = new HttpClient()) + { + try + { + httpClient.BaseAddress = new Uri(apiUrl); + var request = new HttpRequestMessage(HttpMethod.Post, apiUrl); + + // Serializa el objeto data a JSON + //string jsonData = JsonSerializer.Serialize(data); + string jsonData = JsonConvert.SerializeObject(data); + // Crea el contenido de la solicitud HTTP con el cuerpo JSON + HttpContent contenido = new StringContent(jsonData, Encoding.UTF8, "application/json"); + request.Content = contenido; + + // Configura los encabezados personalizados si se proporcionan + if (headers != null) + { + foreach (var header in headers) + { + request.Headers.Add(header.Key, header.Value); + } + } + + // Realiza la solicitud POST + HttpResponseMessage response = await httpClient.SendAsync(request); + + // Verifica si la solicitud fue exitosa + if (response.IsSuccessStatusCode) + { + // Lee la respuesta como una cadena + return await response.Content.ReadAsStringAsync(); + } + else + { + // La solicitud no fue exitosa, maneja el error según sea necesario + Console.WriteLine($"Error en la solicitud HTTP. Código de estado: {response.StatusCode}"); + throw new HttpRequestException($"Error en la solicitud HTTP. Código de estado: {response.StatusCode}"); + } + } + catch (Exception ex) + { + // Maneja excepciones si ocurren + Console.WriteLine($"Error en la solicitud HTTP: {ex.Message}"); + throw new Exception($"Error en la solicitud HTTP: {ex.Message}"); + } + } + } + } +} + diff --git a/BLL/Integracion_DGA/BusinessLogic.cs b/BLL/Integracion_DGA/BusinessLogic.cs new file mode 100644 index 0000000..63d0871 --- /dev/null +++ b/BLL/Integracion_DGA/BusinessLogic.cs @@ -0,0 +1,228 @@ +using Azure; +using DAL; +using Microsoft.Extensions.Configuration; +using Shared.DTO; +using Shared.DTO.Integracion_DGA; +using Shared.Helper; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography; +using System.Text; +using System.Text.Json; +using System.Threading.Tasks; + +namespace BLL.Integracion_DGA +{ + public class BusinessLogic + { + private readonly IConfiguration _configuration; + private readonly ApiService _apiService; + private readonly JobsDgaRepository _jobs; + private readonly JobsDgaVilosRepository _jobsVilos; + private readonly JobsDgaSupFlujRepository _jobsSupFluj; + private readonly FileLoggerHelper _fileLoggerHelper; + + public BusinessLogic(IConfiguration configuration, ApiService apiService, JobsDgaRepository jobs, JobsDgaVilosRepository jobsVilos, JobsDgaSupFlujRepository jobsSupFluj) { + _configuration = configuration; + _apiService = apiService; + _jobs = jobs; + _jobsVilos = jobsVilos; + _jobsSupFluj = jobsSupFluj; + + FileLoggerHelper.ConfigureLogger(_configuration); + } + + public async Task Run() + { + + DateTimeOffset dateEnd = DateTimeOffset.Now; + DateTimeOffset dateStart = dateEnd.AddHours(-1); + + JsonSerializerOptions options = new JsonSerializerOptions() { PropertyNameCaseInsensitive = true }; + + //FileLoggerHelper.ConfigureLogger(_configuration); + WriteLineAndLog($"Inicia Proceso DGA"); + try + { + string apiUrlBase = _configuration["ApiSettings:ApiUrl"]; + Dictionary headers = new Dictionary + { + { "nexustoken", _configuration["ApiSettings:ApiKey"] }, + { "nexusapiversion", _configuration["ApiSettings:Version"] }, + { "accept", "application/json" } + }; + + WriteLineAndLog($"Obteniendo Documentos"); + string apiUrlDocuments = apiUrlBase + "/api/Documents"; + + // Utiliza el servicio para realizar la solicitud a la API con URL y encabezados personalizados + string responseData = await _apiService.GetApiResponseAsync(apiUrlDocuments, headers); + + var documento = JsonSerializer.Deserialize>(responseData, options); + foreach (DocumentResponse item in documento) + { + WriteLineAndLog($"Obteniendo Tagviews"); + string apiUrlTagViews = $"{apiUrlBase}/api/Documents/tagviews/{item.uid}"; + responseData = await _apiService.GetApiResponseAsync(apiUrlTagViews, headers); + TagviewsResponse tagviews = JsonSerializer.Deserialize(responseData, options); + + List listTagsID = new List(); + foreach (Column tag in tagviews.Columns) + { + listTagsID.Add(tag.Uid); + } + + HistoricRequest historicRequest = new HistoricRequest(); + historicRequest.DataSource = _configuration["ApiSettings:DataSource"]; + historicRequest.Resolution = _configuration["ApiSettings:Resolution"]; + historicRequest.Uids = listTagsID; + historicRequest.StartTs = dateStart.ToUnixTimeSeconds(); + historicRequest.EndTs = dateEnd.ToUnixTimeSeconds(); + + WriteLineAndLog($"Obteniendo Tagviews Historic"); + string apiUrlHistoric = $"{apiUrlBase}/api/Documents/tagviews/{item.uid}/historic"; + responseData = await _apiService.PostApiResponseAsync(apiUrlHistoric, headers, historicRequest); + List historicResponse = JsonSerializer.Deserialize>(responseData, options); + + List listDgaMacroResultados = new List(); + foreach (Column tag in tagviews.Columns) + { + IEnumerable filter = historicResponse.Where(h => h.Uid == tag.Uid); + foreach (HistoricResponse historic in filter) + { + TimeZoneInfo zonaHorariaChile = TimeZoneInfo.FindSystemTimeZoneById("Pacific SA Standard Time"); + DateTime now = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddSeconds(historic.TimeStamp); + DateTime fechaHoraChile = TimeZoneInfo.ConvertTimeFromUtc(now, zonaHorariaChile); + + + DgaMacroResultado dgaMacroResultado = new DgaMacroResultado(); + dgaMacroResultado.TagName = $"SCADA001.{tag.Name}.F_CV"; + dgaMacroResultado.Value = historic.Value; + //dgaMacroResultado.TimeStamp = new DateTime(historic.TimeStamp); + dgaMacroResultado.TimeStamp = fechaHoraChile; + + listDgaMacroResultados.Add(dgaMacroResultado); + } + } + + /**************/ + WriteLineAndLog($"Inicia Envio DGA", ConsoleColor.Green); + WriteLineAndLog($"\t Descargar datos historian: Insertar DgaMacroResultado"); + var resultMacro = await _jobs.InsertarDgaMacroResultado(listDgaMacroResultados); + + WriteLineAndLog($"\t Descargar datos historian: Insertar DgaSensorResultado"); + List listDgaSensorResultado = listDgaMacroResultados.Select(item => new DgaSensorResultado + { + TagName = item.TagName, + TimeStamp = item.TimeStamp, + Value = item.Value, + Quality = item.Quality + }).ToList(); + + var resultSensor = await _jobs.InsertarDgaSensorResultado(listDgaSensorResultado); + + WriteLineAndLog($"\t Calculo DGA"); + var resultCalculo = await _jobs.SpCalculoDga(); + + WriteLineAndLog($"\t descargar datos suma reversibilidad : Insertar DgaMacroResultadoSupFlujSuma"); + List listDgaMacroResultadoSupFlujSuma = listDgaMacroResultados.Select(item => new DgaMacroResultadoSupFlujSuma + { + TagName = item.TagName, + TimeStamp = item.TimeStamp, + Value = item.Value, + Quality = item.Quality + }).ToList(); + + var resultSupFlujSuma = await _jobs.InsertarDgaMacroResultadoSupFlujSuma(listDgaMacroResultadoSupFlujSuma); + + WriteLineAndLog($"\t Calculo Suma"); + var resultCalculoDgaSup = await _jobs.SpCalculoDgaSupFlujSumaSnreversibilidad(); + + + WriteLineAndLog($"\t Traspaso datos achird"); + var result = await _jobs.SpTraspasoDatosAchird(); + WriteLineAndLog($"Fin Envio DGA", ConsoleColor.Green); + /**************/ + /**************/ + WriteLineAndLog($"Inicio Envio DGA Vilos", ConsoleColor.Green); + WriteLineAndLog($"\t Descargar datos historian: Insertar InsertarDgaMacroResultadoVilos"); + List listDgaMacroResultadoVilos = listDgaMacroResultados.Select(item => new DgaMacroResultadoVilos + { + TagName = item.TagName, + TimeStamp = item.TimeStamp, + Value = item.Value, + Quality = item.Quality + }).ToList(); + + var resultVilos = await _jobsVilos.InsertarDgaMacroResultadoVilos(listDgaMacroResultadoVilos); + + WriteLineAndLog($"\t Descargar datos historian: Insertar InsertarDgaSensorResultadoVilos"); + List listDgaSensorResultadoVilos = listDgaMacroResultados.Select(item => new DgaSensorResultadoVilos + { + TagName = item.TagName, + TimeStamp = item.TimeStamp, + Value = item.Value, + Quality = item.Quality + }).ToList(); + + var resultSensorVilos = await _jobsVilos.InsertarDgaSensorResultadoVilos(listDgaSensorResultadoVilos); + + WriteLineAndLog($"\t Calculo Suma"); + var resultCalculoVilos = await _jobsVilos.SpCalculoDgaVilos(); + + + WriteLineAndLog($"\t Traspaso datos achird"); + var resultAchirdVilos = await _jobsVilos.SpTraspasoDatosAchirdVilos(); + WriteLineAndLog($"Fin Envio DGA Vilos", ConsoleColor.Green); + /**************/ + /**************/ + WriteLineAndLog($"Inicio Envio DGA Sup Fluj", ConsoleColor.Green); + WriteLineAndLog($"\t Descargar datos historian: Insertar InsertarDgaMacroResultadoSupFluj"); + List listDgaMacroResultadoSupFluj = listDgaMacroResultados.Select(item => new DgaMacroResultadoSupFluj + { + TagName = item.TagName, + TimeStamp = item.TimeStamp, + Value = item.Value, + Quality = item.Quality + }).ToList(); + + var resultSensorSup = await _jobsSupFluj.InsertarDgaMacroResultadoSupFluj(listDgaMacroResultadoSupFluj); + + WriteLineAndLog($"\t Calculo Suma"); + var resultCalculoSup = await _jobsSupFluj.SpCalculoDgaSupFluj(); + + + WriteLineAndLog($"\t Traspaso datos achird"); + var resultAchirdSup = await _jobsSupFluj.SpTraspasoDatosAchirdSupFluj(); + WriteLineAndLog($"Fin Envio DGA Sup Fluj", ConsoleColor.Green); + /**************/ + /**************/ + } + WriteLineAndLog($"FIN Proceso DGA"); + } + catch (Exception ex) + { + FileLoggerHelper.LogError($"{ex.Message}", ex); + WriteLineAndLog($"{ex.Message}", ConsoleColor.Red); + } + + } + + static void WriteLineAndLog(string msj, ConsoleColor? color = null) + { + if (color.HasValue && Enum.IsDefined(typeof(ConsoleColor), color.Value)) + { + Console.ForegroundColor = (ConsoleColor)color; + Console.WriteLine(msj); + Console.ResetColor(); + } + else + { + Console.WriteLine($"{msj}"); + } + + FileLoggerHelper.LogInformation($"{msj}"); + } + } +} diff --git a/BLL/EnvioDGA.cs b/BLL/Recuperacion_DGA/EnvioDGA.cs similarity index 96% rename from BLL/EnvioDGA.cs rename to BLL/Recuperacion_DGA/EnvioDGA.cs index 8f8ec69..f2fcaf9 100644 --- a/BLL/EnvioDGA.cs +++ b/BLL/Recuperacion_DGA/EnvioDGA.cs @@ -2,8 +2,9 @@ using Shared.DTO; using DAL; using DAS; +using Shared.DTO.Envios_DGA; -namespace BLL +namespace BLL.Recuperacion_DGA { public class EnvioDGA { diff --git a/DAL/Encriptador.cs b/DAL/Encriptador.cs new file mode 100644 index 0000000..3153883 --- /dev/null +++ b/DAL/Encriptador.cs @@ -0,0 +1,58 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Security.Cryptography; +using System.Text; +using System.Threading.Tasks; + +namespace DAL +{ + public static class Encriptador + { + private static readonly byte[] key = Encoding.ASCII.GetBytes("1234567891234567"); + private static readonly byte[] iv = Encoding.ASCII.GetBytes("Devjoker7.37hAES"); + + public static string Encripta(string Cadena) + { + + using Aes aesAlg = Aes.Create(); + aesAlg.Key = key; + aesAlg.IV = iv; + + ICryptoTransform encryptor = aesAlg.CreateEncryptor(aesAlg.Key, aesAlg.IV); + + using (MemoryStream msEncrypt = new MemoryStream()) + { + using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write)) + { + using (StreamWriter swEncrypt = new StreamWriter(csEncrypt)) + { + swEncrypt.Write(Cadena); + } + } + + return Convert.ToBase64String(msEncrypt.ToArray()); + } + } + + public static string Desencripta(string Cadena) + { + using Aes aesAlg = Aes.Create(); + aesAlg.Key = key; + aesAlg.IV = iv; + + ICryptoTransform decryptor = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV); + + using (MemoryStream msDecrypt = new MemoryStream(Convert.FromBase64String(Cadena))) + { + using (CryptoStream csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read)) + { + using (StreamReader srDecrypt = new StreamReader(csDecrypt)) + { + return srDecrypt.ReadToEnd(); + } + } + } + } + } +} diff --git a/DAL/JobsDgaRepository.cs b/DAL/JobsDgaRepository.cs new file mode 100644 index 0000000..d68c233 --- /dev/null +++ b/DAL/JobsDgaRepository.cs @@ -0,0 +1,159 @@ +using Microsoft.Data.SqlClient; +using Microsoft.Win32; +using Shared.DTO.Integracion_DGA; +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Dapper; +using Microsoft.Extensions.Configuration; + +namespace DAL +{ + public class JobsDgaRepository + { + private static string connectionString = string.Empty; + private readonly IConfiguration _configuration; + public JobsDgaRepository(IConfiguration configuration) + { + _configuration = configuration; + connectionString = _configuration.GetConnectionString("DefaultConnection") ?? ""; + + } + + public async Task InsertarDgaMacroResultado(List dgaMacroResultados) + { + try + { + using (SqlConnection connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + // 1. Truncar la tabla antes de insertar + await connection.ExecuteAsync("TRUNCATE TABLE DGA_MACRO_RESULTADO"); + // 2. Insertar la lista de registros + string sql = "INSERT INTO DGA_MACRO_RESULTADO (TagName, TimeStamp, Value, Quality) VALUES (@TagName, @TimeStamp, @Value, @Quality)"; + // Esto inserta todos los elementos de la lista en la tabla + await connection.ExecuteAsync(sql, dgaMacroResultados); + return true; + } + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task InsertarDgaSensorResultado(List dgaSensorResultado) + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + + // 1. Truncar la tabla DGA_SENSOR_RESULTADO + await connection.ExecuteAsync("TRUNCATE TABLE DGA_SENSOR_RESULTADO"); + + // 2. Llamar al stored procedure SP_CALCULO_DGA + await connection.ExecuteAsync("SP_CALCULO_DGA", commandType: System.Data.CommandType.StoredProcedure); + + // 3. Insertar todos los registros de la lista con Dapper + string sql = "INSERT INTO DGA_SENSOR_RESULTADO (TagName, TimeStamp, Value, Quality) VALUES (@TagName, @TimeStamp, @Value, @Quality)"; + await connection.ExecuteAsync(sql, dgaSensorResultado); + + return true; + } + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task InsertarDgaMacroResultadoSupFlujSuma(List dgaMacroResultadoSupFlujSuma) + { + try + { + // Configurar la conexión a la base de datos + using (SqlConnection connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + // Truncar la tabla antes de insertar + await connection.ExecuteAsync("TRUNCATE TABLE DGA_MACRO_RESULTADO_SUP_FLUJ_SUMA"); + + // Crear un adaptador de datos + SqlDataAdapter adapter = new SqlDataAdapter(); + + // Configurar el comando de inserción + string sql = "INSERT INTO DGA_MACRO_RESULTADO_SUP_FLUJ_SUMA (TagName, TimeStamp, Value, Quality) VALUES (@TagName, @TimeStamp, @Value, @Quality)"; + await connection.ExecuteAsync(sql, dgaMacroResultadoSupFlujSuma); + + return true; // Éxito + } + }catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task SpCalculoDga() + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + // Ejecuta el stored procedure sin parámetros + await connection.ExecuteAsync("SP_CALCULO_DGA", commandType: CommandType.StoredProcedure); + } + return true; // Éxito + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task SpCalculoDgaSupFlujSumaSnreversibilidad() + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + await connection.ExecuteAsync( + "SP_CALCULO_DGA_SUP_FLUJ_SUMA_SNREVERSIBILIDAD", + commandType: CommandType.StoredProcedure + ); + } + return true; // Éxito + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task SpTraspasoDatosAchird() + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + await connection.ExecuteAsync( + "SP_TRASPASO_DATOS_ACHIRD", + commandType: CommandType.StoredProcedure + ); + } + return true; // Éxito + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + } +} diff --git a/DAL/JobsDgaSupFlujRepository.cs b/DAL/JobsDgaSupFlujRepository.cs new file mode 100644 index 0000000..9ccd075 --- /dev/null +++ b/DAL/JobsDgaSupFlujRepository.cs @@ -0,0 +1,88 @@ +using Dapper; +using Microsoft.Data.SqlClient; +using Microsoft.Extensions.Configuration; +using Shared.DTO.Integracion_DGA; +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace DAL +{ + public class JobsDgaSupFlujRepository + { + private static string connectionString = string.Empty; + private readonly IConfiguration _configuration; + + public JobsDgaSupFlujRepository(IConfiguration configuration) + { + _configuration = configuration; + connectionString = _configuration.GetConnectionString("DefaultConnection") ?? ""; + } + + public async Task InsertarDgaMacroResultadoSupFluj(List dgaMacroResultadoSupFluj) + { + try + { + // Configurar la conexión a la base de datos + using (SqlConnection connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + await connection.ExecuteAsync("TRUNCATE TABLE DGA_MACRO_RESULTADO_SUP_FLUJ"); + + await SpCalculoDgaSupFluj(); + + string sql = "INSERT INTO DGA_MACRO_RESULTADO_SUP_FLUJ (TagName, TimeStamp, Value, Quality) VALUES (@TagName, @TimeStamp, @Value, @Quality)"; + await connection.ExecuteAsync(sql, dgaMacroResultadoSupFluj); + return true; + } + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task SpCalculoDgaSupFluj() + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + await connection.ExecuteAsync( + "SP_CALCULO_DGA_SUP_FLUJ", + commandType: CommandType.StoredProcedure + ); + } + return true; // Éxito + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task SpTraspasoDatosAchirdSupFluj() + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + await connection.ExecuteAsync( + "SP_TRASPASO_DATOS_ACHIRD_SUP_FLUJ", + commandType: CommandType.StoredProcedure + ); + } + return true; // Éxito + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + } +} diff --git a/DAL/JobsDgaVilosRepository.cs b/DAL/JobsDgaVilosRepository.cs new file mode 100644 index 0000000..822c6bb --- /dev/null +++ b/DAL/JobsDgaVilosRepository.cs @@ -0,0 +1,116 @@ +using Dapper; +using Microsoft.Data.SqlClient; +using Microsoft.Extensions.Configuration; +using Shared.DTO.Integracion_DGA; +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace DAL +{ + public class JobsDgaVilosRepository + { + private IConfiguration _configuration; + private static string connectionString = string.Empty; + + public JobsDgaVilosRepository(IConfiguration configuration) + { + _configuration = configuration; + connectionString = _configuration.GetConnectionString("DefaultConnection") ?? ""; + } + + public async Task InsertarDgaMacroResultadoVilos(List dgaMacroResultadoVilos) + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + + // 1. Truncar la tabla antes de insertar + await connection.ExecuteAsync("TRUNCATE TABLE DGA_MACRO_RESULTADO_VILOS"); + + // 2. Llamar al stored procedure + await connection.ExecuteAsync("SP_CALCULO_DGA_VILOS", commandType: System.Data.CommandType.StoredProcedure); + + // 3. Insertar todos los datos de la lista usando Dapper + string sql = "INSERT INTO DGA_MACRO_RESULTADO_VILOS (TagName, TimeStamp, Value, Quality) VALUES (@TagName, @TimeStamp, @Value, @Quality)"; + await connection.ExecuteAsync(sql, dgaMacroResultadoVilos); + + return true; // Éxito + } + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task InsertarDgaSensorResultadoVilos(List dgaSensorResultadoVilos) + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + + // 1. Truncar la tabla antes de insertar + await connection.ExecuteAsync("TRUNCATE TABLE DGA_SENSOR_RESULTADO_VILOS"); + + // 2. Insertar todos los datos de la lista usando Dapper + string sql = "INSERT INTO DGA_SENSOR_RESULTADO_VILOS (TagName, TimeStamp, Value, Quality) VALUES (@TagName, @TimeStamp, @Value, @Quality)"; + await connection.ExecuteAsync(sql, dgaSensorResultadoVilos); + + return true; // Éxito + } + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task SpCalculoDgaVilos() + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + await connection.ExecuteAsync( + "SP_CALCULO_DGA_VILOS", + commandType: CommandType.StoredProcedure + ); + } + return true; // Éxito + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + + public async Task SpTraspasoDatosAchirdVilos() + { + try + { + using (var connection = new SqlConnection(connectionString)) + { + await connection.OpenAsync(); + await connection.ExecuteAsync( + "SP_TRASPASO_DATOS_ACHIRD_VILOS", + commandType: CommandType.StoredProcedure + ); + } + return true; // Éxito + } + catch (Exception ex) + { + throw new Exception($"Error: {ex.Message}"); + } + } + } +} diff --git a/DAL/MedicionScadaRepository.cs b/DAL/MedicionScadaRepository.cs index 71f5a7b..f2143cd 100644 --- a/DAL/MedicionScadaRepository.cs +++ b/DAL/MedicionScadaRepository.cs @@ -1,7 +1,7 @@ using Dapper; using Microsoft.Data.SqlClient; using Microsoft.Extensions.Configuration; -using Shared.DTO; +using Shared.DTO.Envios_DGA; using System.Data; namespace DAL diff --git a/DAS/RegistrarMedicion.cs b/DAS/RegistrarMedicion.cs index 5ed4372..ee4765a 100644 --- a/DAS/RegistrarMedicion.cs +++ b/DAS/RegistrarMedicion.cs @@ -1,5 +1,5 @@ using Microsoft.Extensions.Configuration; -using Shared.DTO; +using Shared.DTO.Envios_DGA; using System.Text; using System.Text.Json; diff --git a/Integracion_DGA/Program.cs b/Integracion_DGA/Program.cs index 5e70bfa..d2d54ff 100644 --- a/Integracion_DGA/Program.cs +++ b/Integracion_DGA/Program.cs @@ -1,9 +1,10 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Configuration; -using BLL; using DAL; using DAS; +using BLL.Recuperacion_DGA; +using BLL.Integracion_DGA; namespace Integracion_DGA { @@ -20,10 +21,18 @@ namespace Integracion_DGA services.AddScoped(); services.AddScoped(); services.AddHttpClient(); + //Estos dos servicios son los que migre del otro proyecto + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); }) .Build(); var envioDGA = host.Services.GetRequiredService(); + var BussinessLogic = host.Services.GetRequiredService(); + var ApiService = host.Services.GetRequiredService(); var mediciones = await envioDGA.ObtenerMedicionesAsync(); Console.WriteLine($"Se obtuvieron {mediciones.Count} registros."); diff --git a/Integracion_DGA/appsettings.json b/Integracion_DGA/appsettings.json index f928e3b..4140b3b 100644 --- a/Integracion_DGA/appsettings.json +++ b/Integracion_DGA/appsettings.json @@ -1,14 +1,19 @@ { - "ConnectionStrings": { - "DefaultConnection": "Server=10.224.7.53,1433;Initial Catalog=ENVIO_DGA;Persist Security Info=False;User ID=enviodga;Password=esval++2022;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=true;Connection Timeout=30;" - }, - "ApiSubterranea": { - "BaseUrl": "https://apimee.mop.gob.cl", - "Endpoint": "/api/v1/mediciones/subterraneas" - }, - "Credenciales": { - "rutEmpresa": "9A4PUqd1t4", - "rutUsuario": "77555666-7", - "password": "20999888-7" - } -} \ No newline at end of file + "ConnectionStrings": { + "DefaultConnection": "Server=10.224.7.53,1433;Initial Catalog=ENVIO_DGA;Persist Security Info=False;User ID=enviodga;Password=esval++2022;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=true;Connection Timeout=30;" + }, + "ApiSubterranea": { + "BaseUrl": "https://apimee.mop.gob.cl", + "Endpoint": "/api/v1/mediciones/subterraneas" + }, + "Credenciales": { + "rutEmpresa": "9A4PUqd1t4", + "rutUsuario": "77555666-7", + "password": "20999888-7" + }, + "Logging": { + "LogFile": { + "Path": "logs/log.txt" + } + } +} diff --git a/SHARED/DTO/DocumentResponse.cs b/SHARED/DTO/DocumentResponse.cs new file mode 100644 index 0000000..9b963c6 --- /dev/null +++ b/SHARED/DTO/DocumentResponse.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Shared.DTO +{ + public class DocumentResponse + { + public string owner { get; set; } + public string type { get; set; } + public string uid { get; set; } + public string name { get; set; } + } +} diff --git a/SHARED/DTO/MedicionScada.cs b/SHARED/DTO/Envios_DGA/MedicionScada.cs similarity index 95% rename from SHARED/DTO/MedicionScada.cs rename to SHARED/DTO/Envios_DGA/MedicionScada.cs index 93af65f..20639da 100644 --- a/SHARED/DTO/MedicionScada.cs +++ b/SHARED/DTO/Envios_DGA/MedicionScada.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Shared.DTO +namespace Shared.DTO.Envios_DGA { public class MedicionScada { diff --git a/SHARED/DTO/MedicionSubterraneaRequest.cs b/SHARED/DTO/Envios_DGA/MedicionSubterraneaRequest.cs similarity index 95% rename from SHARED/DTO/MedicionSubterraneaRequest.cs rename to SHARED/DTO/Envios_DGA/MedicionSubterraneaRequest.cs index 675e630..05de152 100644 --- a/SHARED/DTO/MedicionSubterraneaRequest.cs +++ b/SHARED/DTO/Envios_DGA/MedicionSubterraneaRequest.cs @@ -4,7 +4,7 @@ using System.Linq; using System.Text; using System.Threading.Tasks; -namespace Shared.DTO +namespace Shared.DTO.Envios_DGA { public class MedicionSubterraneaRequest { diff --git a/SHARED/DTO/HistoricRequest.cs b/SHARED/DTO/HistoricRequest.cs new file mode 100644 index 0000000..8c63b7e --- /dev/null +++ b/SHARED/DTO/HistoricRequest.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Shared.DTO +{ + public class HistoricRequest + { + public string DataSource { get; set; } + public string Resolution { get; set; } + public List Uids { get; set; } + public long StartTs { get; set; } + public long EndTs { get; set; } + } +} diff --git a/SHARED/DTO/HistoricResponse.cs b/SHARED/DTO/HistoricResponse.cs new file mode 100644 index 0000000..e99c753 --- /dev/null +++ b/SHARED/DTO/HistoricResponse.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Shared.DTO +{ + public class HistoricResponse + { + public string Uid { get; set; } + public double? Value { get; set; } + public long TimeStamp { get; set; } + } +} diff --git a/SHARED/DTO/Integracion_DGA/BitacoraPiloto.cs b/SHARED/DTO/Integracion_DGA/BitacoraPiloto.cs new file mode 100644 index 0000000..6a1eff6 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/BitacoraPiloto.cs @@ -0,0 +1,47 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class BitacoraPiloto +{ + public string IdProceso { get; set; } = null!; + + public DateTime? FechaInicial { get; set; } + + public DateTime? FechaFinal { get; set; } + + public string? AnoMes { get; set; } + + public int? Ano { get; set; } + + public int? Mes { get; set; } + + public int? Sector { get; set; } + + public string? Frecuencia { get; set; } + + public string? Procesado { get; set; } + + public DateTime? FechaMedicion { get; set; } + + public string? Estructura { get; set; } + + public string? Variante { get; set; } + + public string? Campo { get; set; } + + public float? ValorOra { get; set; } + + public float? ValorSql { get; set; } + + public string? Naturaleza { get; set; } + + public string? CampoCondicion1 { get; set; } + + public string? CampoCondicion2 { get; set; } + + public int Cor { get; set; } + + public int? Diferencia { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabApoyoProceso.cs b/SHARED/DTO/Integracion_DGA/CabApoyoProceso.cs new file mode 100644 index 0000000..d2c1f14 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabApoyoProceso.cs @@ -0,0 +1,9 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabApoyoProceso +{ + public string IdSensor { get; set; } = null!; +} diff --git a/SHARED/DTO/Integracion_DGA/CabBaseMonitoreoConsumo.cs b/SHARED/DTO/Integracion_DGA/CabBaseMonitoreoConsumo.cs new file mode 100644 index 0000000..67f44c8 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabBaseMonitoreoConsumo.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabBaseMonitoreoConsumo +{ + public string? EmpresaPiloto { get; set; } + + public double? IdCliente { get; set; } + + public string? IdDma { get; set; } + + public string? FechaLectura { get; set; } + + public double? ConsumoAcumulado { get; set; } + + public string? CodigoLectura { get; set; } + + public DateTime? FechaFacturacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabClientesDma.cs b/SHARED/DTO/Integracion_DGA/CabClientesDma.cs new file mode 100644 index 0000000..28e0394 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabClientesDma.cs @@ -0,0 +1,11 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabClientesDma +{ + public int? IdCliente { get; set; } + + public string? IdDma { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenale.cs b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenale.cs new file mode 100644 index 0000000..00d706d --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenale.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabIncrementoValoresSenale +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesBaseform.cs b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesBaseform.cs new file mode 100644 index 0000000..2a58bd2 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesBaseform.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabIncrementoValoresSenalesBaseform +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesNe.cs b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesNe.cs new file mode 100644 index 0000000..c050e77 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesNe.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabIncrementoValoresSenalesNe +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesWt.cs b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesWt.cs new file mode 100644 index 0000000..3f0b78d --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesWt.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabIncrementoValoresSenalesWt +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesWtPrueba.cs b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesWtPrueba.cs new file mode 100644 index 0000000..8c030c8 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabIncrementoValoresSenalesWtPrueba.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabIncrementoValoresSenalesWtPrueba +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabMaxFecha.cs b/SHARED/DTO/Integracion_DGA/CabMaxFecha.cs new file mode 100644 index 0000000..76a32e8 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabMaxFecha.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabMaxFecha +{ + public string IdSensor { get; set; } = null!; + + public string? FrecuenciaRegistro { get; set; } + + public DateTime? MaxFecha { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabMonitoreoConsumo.cs b/SHARED/DTO/Integracion_DGA/CabMonitoreoConsumo.cs new file mode 100644 index 0000000..ae7cd62 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabMonitoreoConsumo.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabMonitoreoConsumo +{ + public string? EmpresaPiloto { get; set; } + + public double? IdCliente { get; set; } + + public string? IdDma { get; set; } + + public string? FechaLectura { get; set; } + + public double? ConsumoAcumulado { get; set; } + + public string? CodigoLectura { get; set; } + + public DateTime? FechaFacturacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabResultadoCargaHistorico.cs b/SHARED/DTO/Integracion_DGA/CabResultadoCargaHistorico.cs new file mode 100644 index 0000000..c91f25d --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabResultadoCargaHistorico.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabResultadoCargaHistorico +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabResultadoCargaHistoricoPwbi.cs b/SHARED/DTO/Integracion_DGA/CabResultadoCargaHistoricoPwbi.cs new file mode 100644 index 0000000..9222413 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabResultadoCargaHistoricoPwbi.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabResultadoCargaHistoricoPwbi +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenale.cs b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenale.cs new file mode 100644 index 0000000..c1b47df --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenale.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSalidaValoresSenale +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesBaseform.cs b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesBaseform.cs new file mode 100644 index 0000000..a9456c1 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesBaseform.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSalidaValoresSenalesBaseform +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesNe.cs b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesNe.cs new file mode 100644 index 0000000..eda0326 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesNe.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSalidaValoresSenalesNe +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesWt.cs b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesWt.cs new file mode 100644 index 0000000..6790091 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSalidaValoresSenalesWt.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSalidaValoresSenalesWt +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSenalesSensoresBorrada.cs b/SHARED/DTO/Integracion_DGA/CabSenalesSensoresBorrada.cs new file mode 100644 index 0000000..d15207c --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSenalesSensoresBorrada.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSenalesSensoresBorrada +{ + public string TagName { get; set; } = null!; + + public DateTime? FechaDesde { get; set; } + + public string? FechaHasta { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensore.cs b/SHARED/DTO/Integracion_DGA/CabSensore.cs new file mode 100644 index 0000000..92b77e6 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensore.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensore +{ + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresAgregar.cs b/SHARED/DTO/Integracion_DGA/CabSensoresAgregar.cs new file mode 100644 index 0000000..573ef78 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresAgregar.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresAgregar +{ + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresBaseform.cs b/SHARED/DTO/Integracion_DGA/CabSensoresBaseform.cs new file mode 100644 index 0000000..d8cfedb --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresBaseform.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresBaseform +{ + public int Id { get; set; } + + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } + + public short EstadoSensor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresEliminado.cs b/SHARED/DTO/Integracion_DGA/CabSensoresEliminado.cs new file mode 100644 index 0000000..846e1c1 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresEliminado.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresEliminado +{ + public DateTime? FechaEliminacion { get; set; } + + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresEliminar.cs b/SHARED/DTO/Integracion_DGA/CabSensoresEliminar.cs new file mode 100644 index 0000000..98d55c5 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresEliminar.cs @@ -0,0 +1,9 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresEliminar +{ + public string? IdSensor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresHistorico.cs b/SHARED/DTO/Integracion_DGA/CabSensoresHistorico.cs new file mode 100644 index 0000000..812b872 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresHistorico.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresHistorico +{ + public int Id { get; set; } + + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } + + public short EstadoSensor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresNe.cs b/SHARED/DTO/Integracion_DGA/CabSensoresNe.cs new file mode 100644 index 0000000..42491e2 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresNe.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresNe +{ + public int Id { get; set; } + + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } + + public short EstadoSensor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresRevisar.cs b/SHARED/DTO/Integracion_DGA/CabSensoresRevisar.cs new file mode 100644 index 0000000..01cd355 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresRevisar.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresRevisar +{ + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresValidar.cs b/SHARED/DTO/Integracion_DGA/CabSensoresValidar.cs new file mode 100644 index 0000000..696ab34 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresValidar.cs @@ -0,0 +1,35 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresValidar +{ + public int Id { get; set; } + + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } + + public short EstadoSensor { get; set; } + + public int CodEmpresa { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresWt.cs b/SHARED/DTO/Integracion_DGA/CabSensoresWt.cs new file mode 100644 index 0000000..d5f9f87 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresWt.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresWt +{ + public int Id { get; set; } + + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } + + public short EstadoSensor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabSensoresWtPrueba.cs b/SHARED/DTO/Integracion_DGA/CabSensoresWtPrueba.cs new file mode 100644 index 0000000..2725331 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabSensoresWtPrueba.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabSensoresWtPrueba +{ + public int Id { get; set; } + + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? Descripcion { get; set; } + + public string? Tipo { get; set; } + + public string? Unidad { get; set; } + + public string? FrecuenciaRegistro { get; set; } + + public string? IdMedicion { get; set; } + + public string? OrigenSenal { get; set; } + + public int? CodMedicion { get; set; } + + public byte? FrecuenciaEnvio { get; set; } + + public int? CantidadData { get; set; } + + public short EstadoSensor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabUltimoEnvio.cs b/SHARED/DTO/Integracion_DGA/CabUltimoEnvio.cs new file mode 100644 index 0000000..f056612 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabUltimoEnvio.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabUltimoEnvio +{ + public string? EmpresaPiloto { get; set; } + + public string IdSensor { get; set; } = null!; + + public string? OrigenSenal { get; set; } + + public string? MaxFecha { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabValoresSenale.cs b/SHARED/DTO/Integracion_DGA/CabValoresSenale.cs new file mode 100644 index 0000000..05da0c8 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabValoresSenale.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabValoresSenale +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabValoresSenalesAgregar.cs b/SHARED/DTO/Integracion_DGA/CabValoresSenalesAgregar.cs new file mode 100644 index 0000000..2d371ee --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabValoresSenalesAgregar.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabValoresSenalesAgregar +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabValoresSenalesBaseform.cs b/SHARED/DTO/Integracion_DGA/CabValoresSenalesBaseform.cs new file mode 100644 index 0000000..bee7270 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabValoresSenalesBaseform.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabValoresSenalesBaseform +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabValoresSenalesHistorico.cs b/SHARED/DTO/Integracion_DGA/CabValoresSenalesHistorico.cs new file mode 100644 index 0000000..5375a0e --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabValoresSenalesHistorico.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabValoresSenalesHistorico +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabValoresSenalesNe.cs b/SHARED/DTO/Integracion_DGA/CabValoresSenalesNe.cs new file mode 100644 index 0000000..bcd5dfc --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabValoresSenalesNe.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabValoresSenalesNe +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/CabValoresSenalesWt.cs b/SHARED/DTO/Integracion_DGA/CabValoresSenalesWt.cs new file mode 100644 index 0000000..f781b7e --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/CabValoresSenalesWt.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class CabValoresSenalesWt +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public string? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaBorrado.cs b/SHARED/DTO/Integracion_DGA/DgaBorrado.cs new file mode 100644 index 0000000..b2f72aa --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaBorrado.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaBorrado +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public long? Totalizador { get; set; } + + public string? MarcaUbicacion { get; set; } + + public DateTime? FechaBorrado { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacro.cs b/SHARED/DTO/Integracion_DGA/DgaMacro.cs new file mode 100644 index 0000000..deecec0 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacro.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacro +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public long? Totalizador { get; set; } + + public string? MarcaUbicacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroA.cs b/SHARED/DTO/Integracion_DGA/DgaMacroA.cs new file mode 100644 index 0000000..1a2a225 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroA.cs @@ -0,0 +1,45 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroA +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public int? IdLocalidad { get; set; } + + public string Localidad { get; set; } = null!; + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public long? Totalizador { get; set; } + + public string? MarcaUbicacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroQa.cs b/SHARED/DTO/Integracion_DGA/DgaMacroQa.cs new file mode 100644 index 0000000..c6023c8 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroQa.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroQa +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public long? Totalizador { get; set; } + + public string? MarcaUbicacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroResultado.cs b/SHARED/DTO/Integracion_DGA/DgaMacroResultado.cs new file mode 100644 index 0000000..82c07ed --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroResultado.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroResultado +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroResultadoQa.cs b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoQa.cs new file mode 100644 index 0000000..cf74223 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoQa.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroResultadoQa +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSup.cs b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSup.cs new file mode 100644 index 0000000..8d2c2b3 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSup.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroResultadoSup +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSupFluj.cs b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSupFluj.cs new file mode 100644 index 0000000..38dfa95 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSupFluj.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroResultadoSupFluj +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSupFlujSuma.cs b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSupFlujSuma.cs new file mode 100644 index 0000000..8e8fe2c --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoSupFlujSuma.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroResultadoSupFlujSuma +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroResultadoVilos.cs b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoVilos.cs new file mode 100644 index 0000000..f4ed351 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroResultadoVilos.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroResultadoVilos +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroSup.cs b/SHARED/DTO/Integracion_DGA/DgaMacroSup.cs new file mode 100644 index 0000000..22672d9 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroSup.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroSup +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public long? Totalizador { get; set; } + + public string? MarcaUbicacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroSupFluj.cs b/SHARED/DTO/Integracion_DGA/DgaMacroSupFluj.cs new file mode 100644 index 0000000..0082996 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroSupFluj.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroSupFluj +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public decimal? Totalizador { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroSupFlujSuma.cs b/SHARED/DTO/Integracion_DGA/DgaMacroSupFlujSuma.cs new file mode 100644 index 0000000..1df2adf --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroSupFlujSuma.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroSupFlujSuma +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public decimal? Totalizador { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroSuperficial.cs b/SHARED/DTO/Integracion_DGA/DgaMacroSuperficial.cs new file mode 100644 index 0000000..99d4d91 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroSuperficial.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroSuperficial +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public long? Totalizador { get; set; } + + public string? MarcaUbicacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaMacroVilo.cs b/SHARED/DTO/Integracion_DGA/DgaMacroVilo.cs new file mode 100644 index 0000000..0c73611 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaMacroVilo.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaMacroVilo +{ + public int Id { get; set; } + + public string? Zonal { get; set; } + + public string? Comuna { get; set; } + + public string? NombreCaptacion { get; set; } + + public string? Fuente { get; set; } + + public string? CodigoNbi { get; set; } + + public string? CodigoDga { get; set; } + + public string? InfraEstandarDga { get; set; } + + public string? Macro { get; set; } + + public string? Sensor { get; set; } + + public decimal? UbicacionSensor { get; set; } + + public string? MacroTag { get; set; } + + public string? SensorTag { get; set; } + + public int? TipoObra { get; set; } + + public int? IdSensor { get; set; } + + public long? Totalizador { get; set; } + + public string? MarcaUbicacion { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaSensorResultado.cs b/SHARED/DTO/Integracion_DGA/DgaSensorResultado.cs new file mode 100644 index 0000000..c19b0ba --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaSensorResultado.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaSensorResultado +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaSensorResultadoQa.cs b/SHARED/DTO/Integracion_DGA/DgaSensorResultadoQa.cs new file mode 100644 index 0000000..b5dc5e3 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaSensorResultadoQa.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaSensorResultadoQa +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DgaSensorResultadoVilos.cs b/SHARED/DTO/Integracion_DGA/DgaSensorResultadoVilos.cs new file mode 100644 index 0000000..19d2b79 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DgaSensorResultadoVilos.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DgaSensorResultadoVilos +{ + public string TagName { get; set; } = null!; + + public DateTime TimeStamp { get; set; } + + public double? Value { get; set; } + + public string? Quality { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/DiccionarioCalidad.cs b/SHARED/DTO/Integracion_DGA/DiccionarioCalidad.cs new file mode 100644 index 0000000..e480d35 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/DiccionarioCalidad.cs @@ -0,0 +1,61 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class DiccionarioCalidad +{ + public string? Empresa { get; set; } + + public string? SubgerenciaZonal { get; set; } + + public string? ZonaRedes { get; set; } + + public string? Localidad { get; set; } + + public string? Codigo1 { get; set; } + + public string? Descripcion1 { get; set; } + + public string? Relacion { get; set; } + + public string? Codigo2 { get; set; } + + public string? CodigoIdunicoSensor { get; set; } + + public string? Descripcion2 { get; set; } + + public string? TipoVariable { get; set; } + + public string? TipoSensor { get; set; } + + public string? UnidadesIhistorian { get; set; } + + public string? UnidadesTaKaDu { get; set; } + + public string? FuentePresion { get; set; } + + public double? FrecuenciaTransmision { get; set; } + + public string? FuenteDatos { get; set; } + + public string? Manufactura { get; set; } + + public string? Modelo { get; set; } + + public string? TipoActivo { get; set; } + + public string? ActivoAsociado { get; set; } + + public double? CodigoIdgis { get; set; } + + public double? Latitud { get; set; } + + public double? Longitud { get; set; } + + public string? Plcscada { get; set; } + + public string? PantallaScada { get; set; } + + public string? EstadoSensor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/EstructuraRedEsvalScadaNbi.cs b/SHARED/DTO/Integracion_DGA/EstructuraRedEsvalScadaNbi.cs new file mode 100644 index 0000000..0f2feec --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/EstructuraRedEsvalScadaNbi.cs @@ -0,0 +1,177 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class EstructuraRedEsvalScadaNbi +{ + public string? Empresa { get; set; } + + public string? SubgerenciaZonal { get; set; } + + public string? ZonaRedes { get; set; } + + public string? Localidad { get; set; } + + public string? Código2 { get; set; } + + public string? Descripción2 { get; set; } + + public string? Relación { get; set; } + + public string? Código { get; set; } + + public string? CódigoIdÚnicoSensor { get; set; } + + public string? Descripción { get; set; } + + public string? TipoDeVariable { get; set; } + + public string? TipoDeSensor { get; set; } + + public string? UnidadesIhistorian { get; set; } + + public string? UnidadesEnTaKaDu { get; set; } + + public string? FuenteDePresión { get; set; } + + public string? FrecuenciaDeTransmisión { get; set; } + + public string? FuenteDeDatos { get; set; } + + public string? Manufactura { get; set; } + + public string? Modelo { get; set; } + + public string? TipoDeActivo { get; set; } + + public string? ActivoAsociado { get; set; } + + public string? CódigoIdGis { get; set; } + + public string? Latitud { get; set; } + + public string? Longitud { get; set; } + + public string? PlcScada { get; set; } + + public string? PantallaScada { get; set; } + + public string? Empresa2 { get; set; } + + public string? Column27 { get; set; } + + public string? Column28 { get; set; } + + public string? Column29 { get; set; } + + public string? Column30 { get; set; } + + public string? Column31 { get; set; } + + public string? Column32 { get; set; } + + public string? Column33 { get; set; } + + public string? Column34 { get; set; } + + public string? Column35 { get; set; } + + public string? Column36 { get; set; } + + public string? Column37 { get; set; } + + public string? Column38 { get; set; } + + public string? Column39 { get; set; } + + public string? Column40 { get; set; } + + public string? Column41 { get; set; } + + public string? Column42 { get; set; } + + public string? Column43 { get; set; } + + public string? Column44 { get; set; } + + public string? Column45 { get; set; } + + public string? Column46 { get; set; } + + public string? Column47 { get; set; } + + public string? Column48 { get; set; } + + public string? Column49 { get; set; } + + public string? Column50 { get; set; } + + public string? Column51 { get; set; } + + public string? Column52 { get; set; } + + public string? Column53 { get; set; } + + public string? Column54 { get; set; } + + public string? Column55 { get; set; } + + public string? Column56 { get; set; } + + public string? Column57 { get; set; } + + public string? Column58 { get; set; } + + public string? Column59 { get; set; } + + public string? Column60 { get; set; } + + public string? Column61 { get; set; } + + public string? Column62 { get; set; } + + public string? Column63 { get; set; } + + public string? Column64 { get; set; } + + public string? Column65 { get; set; } + + public string? Column66 { get; set; } + + public string? Column67 { get; set; } + + public string? Column68 { get; set; } + + public string? Column69 { get; set; } + + public string? Column70 { get; set; } + + public string? Column71 { get; set; } + + public string? Column72 { get; set; } + + public string? Column73 { get; set; } + + public string? Column74 { get; set; } + + public string? Column75 { get; set; } + + public string? Column76 { get; set; } + + public string? Column77 { get; set; } + + public string? Column78 { get; set; } + + public string? Column79 { get; set; } + + public string? Column80 { get; set; } + + public string? Column81 { get; set; } + + public string? Column82 { get; set; } + + public string? Column83 { get; set; } + + public string? Column84 { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/IoAsParamMaxcap.cs b/SHARED/DTO/Integracion_DGA/IoAsParamMaxcap.cs new file mode 100644 index 0000000..be6781e --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/IoAsParamMaxcap.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class IoAsParamMaxcap +{ + public string? IdScada { get; set; } + + public string? FiltroWhereN0 { get; set; } + + public string? FiltroWhereFrec { get; set; } + + public int? MaxBomb { get; set; } + + public string? Localidad { get; set; } + + public string? Sgz { get; set; } + + public string? NombrePlanta { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/MedicionDga.cs b/SHARED/DTO/Integracion_DGA/MedicionDga.cs new file mode 100644 index 0000000..6becb2b --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/MedicionDga.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class MedicionDga +{ + public string? Code { get; set; } + + public DateTime? DateOrigen { get; set; } + + public DateTime? DateMedicionSup { get; set; } + + public decimal? Caudal { get; set; } + + public decimal? Altura { get; set; } + + public DateTime? DateMedicionSub { get; set; } + + public decimal? Totalizador { get; set; } + + public decimal? Caudalsub { get; set; } + + public decimal? Nivel { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/MedicionDgaQa.cs b/SHARED/DTO/Integracion_DGA/MedicionDgaQa.cs new file mode 100644 index 0000000..03f10d4 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/MedicionDgaQa.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class MedicionDgaQa +{ + public string? Code { get; set; } + + public DateTime? DateOrigen { get; set; } + + public DateTime? DateMedicionSup { get; set; } + + public decimal? Caudal { get; set; } + + public decimal? Altura { get; set; } + + public DateTime? DateMedicionSub { get; set; } + + public decimal? Totalizador { get; set; } + + public decimal? Caudalsub { get; set; } + + public decimal? Nivel { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/MedicionDgaSupFluj.cs b/SHARED/DTO/Integracion_DGA/MedicionDgaSupFluj.cs new file mode 100644 index 0000000..e209a22 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/MedicionDgaSupFluj.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class MedicionDgaSupFluj +{ + public string? Code { get; set; } + + public DateTime? DateOrigen { get; set; } + + public DateTime? DateMedicionSup { get; set; } + + public decimal? Caudal { get; set; } + + public decimal? Altura { get; set; } + + public DateTime? DateMedicionSub { get; set; } + + public decimal? Totalizador { get; set; } + + public decimal? Caudalsub { get; set; } + + public decimal? Nivel { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/MedicionDgaSupFlujSuma.cs b/SHARED/DTO/Integracion_DGA/MedicionDgaSupFlujSuma.cs new file mode 100644 index 0000000..e5da20d --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/MedicionDgaSupFlujSuma.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class MedicionDgaSupFlujSuma +{ + public string? Code { get; set; } + + public DateTime? DateOrigen { get; set; } + + public DateTime? DateMedicionSup { get; set; } + + public decimal? Caudal { get; set; } + + public decimal? Altura { get; set; } + + public DateTime? DateMedicionSub { get; set; } + + public decimal? Totalizador { get; set; } + + public decimal? Caudalsub { get; set; } + + public decimal? Nivel { get; set; } + + public decimal? Suma1 { get; set; } + + public decimal? Suma2 { get; set; } + + public decimal? Total { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/MedicionDgaSupFlujSumaQa.cs b/SHARED/DTO/Integracion_DGA/MedicionDgaSupFlujSumaQa.cs new file mode 100644 index 0000000..d95c9da --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/MedicionDgaSupFlujSumaQa.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class MedicionDgaSupFlujSumaQa +{ + public string? Code { get; set; } + + public DateTime? DateOrigen { get; set; } + + public DateTime? DateMedicionSup { get; set; } + + public decimal? Caudal { get; set; } + + public decimal? Altura { get; set; } + + public DateTime? DateMedicionSub { get; set; } + + public decimal? Totalizador { get; set; } + + public decimal? Caudalsub { get; set; } + + public decimal? Nivel { get; set; } + + public decimal? Suma1 { get; set; } + + public decimal? Suma2 { get; set; } + + public decimal? Total { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/MedicionDgaVilos.cs b/SHARED/DTO/Integracion_DGA/MedicionDgaVilos.cs new file mode 100644 index 0000000..7bcdb30 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/MedicionDgaVilos.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class MedicionDgaVilos +{ + public string? Code { get; set; } + + public DateTime? DateOrigen { get; set; } + + public DateTime? DateMedicionSup { get; set; } + + public decimal? Caudal { get; set; } + + public decimal? Altura { get; set; } + + public DateTime? DateMedicionSub { get; set; } + + public decimal? Totalizador { get; set; } + + public decimal? Caudalsub { get; set; } + + public decimal? Nivel { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/ResponseDga.cs b/SHARED/DTO/Integracion_DGA/ResponseDga.cs new file mode 100644 index 0000000..f8fa1a8 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/ResponseDga.cs @@ -0,0 +1,11 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class ResponseDga +{ + public string? Code { get; set; } + + public DateTime? Date { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/SenalesNueva.cs b/SHARED/DTO/Integracion_DGA/SenalesNueva.cs new file mode 100644 index 0000000..b6a6067 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/SenalesNueva.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class SenalesNueva +{ + public string TagName { get; set; } = null!; + + public string Data { get; set; } = null!; + + public string? Hora { get; set; } + + public string? Valor { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/SenalesNuevasBunt.cs b/SHARED/DTO/Integracion_DGA/SenalesNuevasBunt.cs new file mode 100644 index 0000000..4826ac9 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/SenalesNuevasBunt.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class SenalesNuevasBunt +{ + public string TagName { get; set; } = null!; + + public string Data { get; set; } = null!; + + public string? Hora { get; set; } + + public string? Valor { get; set; } + + public DateTime? Fecha { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/Sensore.cs b/SHARED/DTO/Integracion_DGA/Sensore.cs new file mode 100644 index 0000000..a5949ae --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/Sensore.cs @@ -0,0 +1,9 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class Sensore +{ + public string IdSensor { get; set; } = null!; +} diff --git a/SHARED/DTO/Integracion_DGA/SensoresBunt.cs b/SHARED/DTO/Integracion_DGA/SensoresBunt.cs new file mode 100644 index 0000000..82f3621 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/SensoresBunt.cs @@ -0,0 +1,9 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class SensoresBunt +{ + public string IdSensor { get; set; } = null!; +} diff --git a/SHARED/DTO/Integracion_DGA/SensoresConsolidado.cs b/SHARED/DTO/Integracion_DGA/SensoresConsolidado.cs new file mode 100644 index 0000000..5b9de59 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/SensoresConsolidado.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class SensoresConsolidado +{ + public string EmpresaPiloto { get; set; } = null!; + + public string IdSensor { get; set; } = null!; + + public string? OrigenSenal { get; set; } +} diff --git a/SHARED/DTO/Integracion_DGA/Sensoresold.cs b/SHARED/DTO/Integracion_DGA/Sensoresold.cs new file mode 100644 index 0000000..980b3a4 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/Sensoresold.cs @@ -0,0 +1,9 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class Sensoresold +{ + public string IdSensor { get; set; } = null!; +} diff --git a/SHARED/DTO/Integracion_DGA/VwSensoresAgregarExistente.cs b/SHARED/DTO/Integracion_DGA/VwSensoresAgregarExistente.cs new file mode 100644 index 0000000..7b79b39 --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/VwSensoresAgregarExistente.cs @@ -0,0 +1,9 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class VwSensoresAgregarExistente +{ + public string IdSensor { get; set; } = null!; +} diff --git a/SHARED/DTO/Integracion_DGA/VwSensoresAgregarExistentesRango.cs b/SHARED/DTO/Integracion_DGA/VwSensoresAgregarExistentesRango.cs new file mode 100644 index 0000000..0993d1b --- /dev/null +++ b/SHARED/DTO/Integracion_DGA/VwSensoresAgregarExistentesRango.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; + +namespace Shared.DTO.Integracion_DGA; + +public partial class VwSensoresAgregarExistentesRango +{ + public string TagName { get; set; } = null!; + + public DateTime? MaxFecRegistro { get; set; } + + public DateTime? MinFecRegistro { get; set; } +} diff --git a/SHARED/DTO/TagviewsResponse.cs b/SHARED/DTO/TagviewsResponse.cs new file mode 100644 index 0000000..6385c37 --- /dev/null +++ b/SHARED/DTO/TagviewsResponse.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Shared.DTO +{ + public class TagviewsResponse + { + public List Columns { get; set; } + } + + public class Column + { + public string Statistic { get; set; } + public Details Details { get; set; } + public string Name { get; set; } + public string Uid { get; set; } + } + + public class Details + { + public string Type { get; set; } + public string Installation { get; set; } + public string Name { get; set; } + public string Uid { get; set; } + } +} + diff --git a/SHARED/Helper/FileLoggerHelper.cs b/SHARED/Helper/FileLoggerHelper.cs new file mode 100644 index 0000000..3aaf591 --- /dev/null +++ b/SHARED/Helper/FileLoggerHelper.cs @@ -0,0 +1,29 @@ +using Microsoft.Extensions.Configuration; +using Serilog; + +namespace Shared.Helper +{ + public class FileLoggerHelper + { + public static void ConfigureLogger(IConfiguration configuration) + { + var logFilePath = configuration.GetSection("Logging:LogFile:Path").Value; + var logFileFullPath = Path.Combine(Directory.GetCurrentDirectory(), logFilePath); + + Log.Logger = new LoggerConfiguration() + .ReadFrom.Configuration(configuration) + .WriteTo.File(logFileFullPath, rollingInterval: RollingInterval.Day) + .CreateLogger(); + } + + public static void LogInformation(string message) + { + Log.Information($"{message}"); + } + + public static void LogError(string message, Exception ex) + { + Log.Error(ex, message); + } + } +} diff --git a/SHARED/Shared.csproj b/SHARED/Shared.csproj index fa71b7a..b5542cf 100644 --- a/SHARED/Shared.csproj +++ b/SHARED/Shared.csproj @@ -6,4 +6,10 @@ enable + + + + + +