Fix 1 Test 1534

This commit is contained in:
2025-10-16 15:34:12 -03:00
parent 705a6f0f5e
commit 09c4d61b71
13 changed files with 52 additions and 10 deletions

View File

@@ -445,6 +445,27 @@ public class CriticalDataWorker : BackgroundService
foreach (var votoPositivoDto in resultadosDto.ValoresTotalizadosPositivos)
{
// PASO 1: VERIFICAR SI LA AGRUPACIÓN YA EXISTE EN NUESTRA BD
var agrupacion = await dbContext.AgrupacionesPoliticas.FindAsync(votoPositivoDto.IdAgrupacion);
// PASO 2: SI NO EXISTE, LA CREAMOS "SOBRE LA MARCHA"
if (agrupacion == null)
{
_logger.LogWarning("Agrupación con ID {AgrupacionId} ('{Nombre}') no encontrada en el catálogo local. Creándola desde los datos de resultados.",
votoPositivoDto.IdAgrupacion, votoPositivoDto.NombreAgrupacion);
agrupacion = new AgrupacionPolitica
{
Id = votoPositivoDto.IdAgrupacion,
Nombre = votoPositivoDto.NombreAgrupacion,
// El IdTelegrama puede ser nulo, usamos el operador '??' para asignar un string vacío si es así.
IdTelegrama = votoPositivoDto.IdAgrupacionTelegrama ?? string.Empty
};
await dbContext.AgrupacionesPoliticas.AddAsync(agrupacion, stoppingToken);
// No es necesario llamar a SaveChangesAsync aquí, se hará al final.
}
// PASO 3: CONTINUAR CON LA LÓGICA DE GUARDADO DEL VOTO
var resultadoVoto = await dbContext.ResultadosVotos.FirstOrDefaultAsync(
rv => rv.AmbitoGeograficoId == ambitoId &&
rv.CategoriaId == categoriaId &&

View File

@@ -167,6 +167,27 @@ public class LowPriorityDataWorker : BackgroundService
foreach (var votoPositivoDto in resultadosDto.ValoresTotalizadosPositivos)
{
// PASO 1: VERIFICAR SI LA AGRUPACIÓN YA EXISTE EN NUESTRA BD
var agrupacion = await dbContext.AgrupacionesPoliticas.FindAsync(votoPositivoDto.IdAgrupacion);
// PASO 2: SI NO EXISTE, LA CREAMOS "SOBRE LA MARCHA"
if (agrupacion == null)
{
_logger.LogWarning("Agrupación con ID {AgrupacionId} ('{Nombre}') no encontrada en el catálogo local. Creándola desde los datos de resultados.",
votoPositivoDto.IdAgrupacion, votoPositivoDto.NombreAgrupacion);
agrupacion = new AgrupacionPolitica
{
Id = votoPositivoDto.IdAgrupacion,
Nombre = votoPositivoDto.NombreAgrupacion,
// El IdTelegrama puede ser nulo, usamos el operador '??' para asignar un string vacío si es así.
IdTelegrama = votoPositivoDto.IdAgrupacionTelegrama ?? string.Empty
};
await dbContext.AgrupacionesPoliticas.AddAsync(agrupacion, stoppingToken);
// No es necesario llamar a SaveChangesAsync aquí, se hará al final.
}
// PASO 3: CONTINUAR CON LA LÓGICA DE GUARDADO DEL VOTO
var resultadoVoto = await dbContext.ResultadosVotos.FirstOrDefaultAsync(
rv => rv.AmbitoGeograficoId == ambitoId &&
rv.CategoriaId == categoriaId &&

View File

@@ -7,7 +7,7 @@
},
"ElectoralApi": {
"BaseUrl": "https://api.resultados.gob.ar",
"Username": "30500094156@elecciones2025.onmicrosoft.com",
"Username": "27238291726@elecciones2025.onmicrosoft.com",
"Password": "PTP847elec"
},
"ConnectionStrings": {

View File

@@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Elecciones.Worker")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+84f764390766e1d9716a38464ee478f3d0b75f96")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+705a6f0f5e555e94c5a59348c2610c4a61cb53d3")]
[assembly: System.Reflection.AssemblyProductAttribute("Elecciones.Worker")]
[assembly: System.Reflection.AssemblyTitleAttribute("Elecciones.Worker")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]