Fase 5 Completa: Implementada la generación de CSV automática y manual.

This commit is contained in:
2025-10-28 13:19:24 -03:00
parent 75d06820aa
commit 3c12a89f76
7 changed files with 150 additions and 5 deletions

View File

@@ -39,6 +39,7 @@ public class ProcesoScrapingWorker : BackgroundService
var repositorio = scope.ServiceProvider.GetRequiredService<TitularRepositorio>();
var scrapingService = scope.ServiceProvider.GetRequiredService<ScrapingService>();
var hubContext = scope.ServiceProvider.GetRequiredService<IHubContext<TitularesHub>>();
var csvService = scope.ServiceProvider.GetRequiredService<CsvService>();
// Obtener estos valores desde la configuración
int cantidadAObtener = configActual.CantidadTitularesAScrapear;
@@ -49,14 +50,14 @@ public class ProcesoScrapingWorker : BackgroundService
if (articulosScrapeados.Any())
{
// 2. Sincronizar con la base de datos
await repositorio.SincronizarDesdeScraping(articulosScrapeados, limiteTotalEnDb);
_logger.LogInformation("Sincronización con la base de datos completada.");
// 3. Notificar a todos los clientes a través de SignalR
var titularesActualizados = await repositorio.ObtenerTodosAsync();
await hubContext.Clients.All.SendAsync("TitularesActualizados", titularesActualizados, stoppingToken);
_logger.LogInformation("Notificación enviada a los clientes.");
await csvService.GenerarCsvAsync(titularesActualizados);
}
else
{