public IActionResult TotaisExames() { var usuario = _usuarioContext.RetornLoggedUser((ClaimsIdentity)User.Identity); var autenticadoTrabalhaEstado = _pessoaTrabalhaEstadoContext.GetByIdPessoa(usuario.UsuarioModel.IdPessoa); var autenticadoTrabalhaMunicipio = _pessoaTrabalhaMunicipioContext.GetByIdPessoa(usuario.UsuarioModel.IdPessoa); List <TotalEstadoMunicipioBairro> totaisRealizado = new List <TotalEstadoMunicipioBairro>(); if (autenticadoTrabalhaMunicipio != null) { totaisRealizado = _exameContext.GetTotaisRealizadosByMunicipio(autenticadoTrabalhaMunicipio.IdMunicipio); } else if (autenticadoTrabalhaEstado != null) { if (autenticadoTrabalhaEstado.IdEmpresaExame == EmpresaExameModel.EMPRESA_ESTADO_MUNICIPIO) { totaisRealizado = _exameContext.GetTotaisRealizadosByEstado(autenticadoTrabalhaEstado.IdEstado); } else { totaisRealizado = _exameContext.GetTotaisRealizadosByEmpresa(autenticadoTrabalhaEstado.IdEmpresaExame); } } List <TotalEstadoMunicipioBairro> totaisPopulacao = new List <TotalEstadoMunicipioBairro>(); if (autenticadoTrabalhaMunicipio != null) { var cidade = _municicpioContext.GetById(autenticadoTrabalhaMunicipio.IdMunicipio); var estado = _estadoContext.GetById(Convert.ToInt32(cidade.Uf)); totaisPopulacao = _exameContext.GetTotaisPopulacaoByMunicipio(estado.Uf, cidade.Nome); } else if (autenticadoTrabalhaEstado != null) { var estado = _estadoContext.GetById(autenticadoTrabalhaEstado.IdEstado); if (autenticadoTrabalhaEstado.IdEmpresaExame == EmpresaExameModel.EMPRESA_ESTADO_MUNICIPIO) { totaisPopulacao = _exameContext.GetTotaisPopulacaoByEstado(estado.Uf); } } TotalTestesGestaoPopulacao totais = new TotalTestesGestaoPopulacao(); totais.Gestao = totaisRealizado; totais.TotalGestaoRecuperados = totaisRealizado.Sum(t => t.TotalRecuperados); totais.TotalGestaoIndeterminados = totaisRealizado.Sum(t => t.TotalIndeterminados); totais.TotalGestaoNegativos = totaisRealizado.Sum(t => t.TotalNegativos); totais.TotalGestaoPositivos = totaisRealizado.Sum(t => t.TotalPositivos); totais.TotalGestaoAguardando = totaisRealizado.Sum(t => t.TotalAguardando); totais.TotalGestaoIgGIgM = totaisRealizado.Sum(t => t.TotalIgGIgM); totais.Populacao = totaisPopulacao; totais.TotalPopulacaoRecuperados = totaisPopulacao.Sum(t => t.TotalRecuperados); totais.TotalPopulacaoIndeterminados = totaisPopulacao.Sum(t => t.TotalIndeterminados); totais.TotalPopulacaoNegativos = totaisPopulacao.Sum(t => t.TotalNegativos); totais.TotalPopulacaoPositivos = totaisPopulacao.Sum(t => t.TotalPositivos); totais.TotalPopulacaoAguardando = totaisPopulacao.Sum(t => t.TotalAguardando); totais.TotalPopulacaoIgGIGM = totaisPopulacao.Sum(t => t.TotalIgGIgM); return(View(totais)); }