using System.Text.Json.Serialization;
using System.Collections.Generic;

namespace Elecciones.Core.DTOs;

// DTO para la respuesta del endpoint /resultados/getResumen
public class ResumenDto
{
    [JsonPropertyName("fechaTotalizacion")]
    public string FechaTotalizacion { get; set; } = string.Empty;

    [JsonPropertyName("estadoRecuento")]
    public EstadoRecuentoDto EstadoRecuento { get; set; } = new();

    [JsonPropertyName("valoresTotalizadosPositivos")]
    public List<ResumenVotosPositivosDto> ValoresTotalizadosPositivos { get; set; } = [];
}

// DTO específico para los objetos dentro de la lista "valoresTotalizadosPositivos" de /getResumen
public class ResumenVotosPositivosDto
{
    [JsonPropertyName("idAgrupacion")]
    public string IdAgrupacion { get; set; } = string.Empty;

    [JsonPropertyName("votos")]
    public long Votos { get; set; }

    [JsonPropertyName("votosPorcentaje")]
    public decimal VotosPorcentaje { get; set; }
}