public async Task <IActionResult> Get()
        {
            var pretendentes = await _pretendenteRepositorio.ListarAsync();

            if (pretendentes != null && pretendentes.Any())
            {
                return(Ok(await _pretendenteRepositorio.ListarAsync()));
            }
            return(NotFound(null));
        }
예제 #2
0
        public async Task <IEnumerable <EleicaoDoDia> > ObterEleicaoDoDiaAsync()
        {
            var pretendentes = await _pretendenteRepositorio.ListarAsync();

            var votos = await _votoRepositorio.ListarDoDiaAsync();

            var resultado = new List <EleicaoDoDia>();

            foreach (var pretendente in pretendentes)
            {
                var voto = votos.FirstOrDefault(p => p.PretendenteId == pretendente.Id);
                if (voto != null)
                {
                    var totalDeVotos = votos.Sum(p => p.Quantidade);
                    resultado.Add(
                        new EleicaoDoDia(pretendente.Id, pretendente.Nome, voto.Quantidade, CalcularPorcentagem(voto.Quantidade, totalDeVotos)));
                }
                else
                {
                    resultado.Add(new EleicaoDoDia(pretendente.Id, pretendente.Nome));
                }
            }
            return(resultado.ToArray());
        }