public async Task <IActionResult> Index(bool Partial = false)
        {
            UsuarioADE usuario = await ObterUsuarioComDadosPessoais();

            UsuarioHomeViewModel model;

            try
            {
                if (usuario.Id != "N/A")
                {
                    usuario.IdInstituicaoNavigation = await _servicoInstituicao.BuscarPorId(usuario.IdInstituicao);

                    model = new UsuarioHomeViewModel()
                    {
                        Usuario                     = usuario,
                        GeracoesDocumento           = await _servicoHistoricoGeracaoDocumento.RecuperarHistoricoDoUsuario(usuario.Id),
                        QuantidadeDocumentosGerados = await ObterProgressoDownloads(usuario),
                        ContagemRequisitoDoUsuario  = await ObterRequisitoUsuarioComRequisito(usuario.Id),
                        ContagemDocumentosCurso     = await _servicoDocumento.ContarPorCurso(usuario.IdCurso)
                    };
                    if (!usuario.PossuiCurso())
                    {
                        model.PrimeiroCurso = true;
                    }
                }
                else
                {
                    model = new UsuarioHomeViewModel()
                    {
                        Usuario                     = await ObterUsuarioLogado(),
                        GeracoesDocumento           = null,
                        QuantidadeDocumentosGerados = 0,
                        ContagemRequisitoDoUsuario  = 0,
                        ContagemDocumentosCurso     = 0
                    };
                }
            }
            catch (System.Exception ex)
            {
                model = new UsuarioHomeViewModel()
                {
                    Usuario                     = await ObterUsuarioLogado(),
                    GeracoesDocumento           = null,
                    QuantidadeDocumentosGerados = 0,
                    ContagemRequisitoDoUsuario  = 0,
                    ContagemDocumentosCurso     = 0
                };
            }
            if (Partial)
            {
                return(PartialView("_Index", model));
            }

            return(View(model));
        }
예제 #2
0
        public UsuarioHomeViewModel Listar()
        {
            try
            {
                UsuarioHomeViewModel viewModel = new UsuarioHomeViewModel();
                viewModel.Usuarios   = _mapper.Map <List <UsuarioViewModel> >(_usuarioRepositorio.Listar());
                viewModel.quantidade = viewModel.Usuarios.Count;

                return(viewModel);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
예제 #3
0
        public UsuarioHomeViewModel Filtrar(Expression <Func <UsuarioEntidade, bool> > filtro)
        {
            try
            {
                UsuarioHomeViewModel viewModel = new UsuarioHomeViewModel();
                viewModel.Usuarios   = _mapper.Map <List <UsuarioViewModel> >(_usuarioRepositorio.Pesquisar(filtro));
                viewModel.quantidade = viewModel.Usuarios.Count;

                return(viewModel);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }