diff --git a/src/Mercados.Infrastructure/DataFetchers/BcrDataFetcher.cs b/src/Mercados.Infrastructure/DataFetchers/BcrDataFetcher.cs index aad2d76..62674e5 100644 --- a/src/Mercados.Infrastructure/DataFetchers/BcrDataFetcher.cs +++ b/src/Mercados.Infrastructure/DataFetchers/BcrDataFetcher.cs @@ -64,6 +64,19 @@ namespace Mercados.Infrastructure.DataFetchers _logger = logger; } + /// + /// Formatea el nombre del grano para corregir acentos u otros detalles. + /// + private string FormatearNombreGrano(string nombreOriginal) + { + if (nombreOriginal.Equals("Maiz", StringComparison.OrdinalIgnoreCase)) + { + // Devuelve la versión con el caso de la primera letra original, pero con acento. + return char.IsUpper(nombreOriginal[0]) ? "Maíz" : "maíz"; + } + return nombreOriginal; // Devuelve el original si no hay ninguna regla + } + public async Task<(bool Success, string Message)> FetchDataAsync() { _logger.LogInformation("Iniciando fetch para {SourceName}.", SourceName); @@ -96,7 +109,7 @@ namespace Mercados.Infrastructure.DataFetchers { cotizaciones.Add(new CotizacionGrano { - Nombre = grain.Key, + Nombre = FormatearNombreGrano(grain.Key), Precio = latestRecord.PrecioCotizacion, VariacionPrecio = latestRecord.VariacionPrecioCotizacion, FechaOperacion = latestRecord.FechaOperacionPizarra,