예제 #1
0
        /// <summary>
        /// Chama a tela com a listagem de logs
        /// </summary>
        /// <returns></returns>
        public ActionResult Index()
        {
            // Se não tiver login, encaminhar para a tela de login
            if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao))
            {
                return(RedirectToAction("Login", "Usuario"));
            }

            // Model a ser utilizada na tela
            FiltrosLogModel model = new FiltrosLogModel()
            {
                Pagina      = 1,
                DataFinal   = DateTime.Now,
                DataInicial = DateTime.Now
            };

            string mensagemErro = "";

            if (!Utilidades.PreencherListasFiltrosLog(model, ref mensagemErro))
            {
                ViewBag.MensagemErro = mensagemErro;
                return(View("Erro"));
            }

            //Chamar a view
            return(View(model));
        }
예제 #2
0
        /// <summary>
        /// Preenche as listas de filtros dos logs
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static bool PreencherListasFiltrosLog(FiltrosLogModel model, ref string mensagemErro)
        {
            // Preencher todos os recursos disponíveis
            LogRecursos[] elementos = Enum.GetValues(typeof(LogRecursos)) as LogRecursos[];
            foreach (var recurso in elementos)
            {
                model.ListaRecursos.Add(new SelectListItem()
                {
                    Text  = recurso.ToString(),
                    Value = ((int)recurso).ToString()
                });
            }

            model.ListaRecursos.RemoveAt(0);
            model.ListaRecursos = model.ListaRecursos.OrderBy(p => p.Text).ToList();

            UsuarioBll usuarioBll = new UsuarioBll(false);
            RetornoObterDicionarioDto <Guid, string> retornoDto = new RetornoObterDicionarioDto <Guid, string>();
            BaseRequisicaoDto requisicaoDto = new BaseRequisicaoDto()
            {
                Identificacao = SessaoUsuario.SessaoLogin.Identificacao,
                IdUsuario     = SessaoUsuario.SessaoLogin.IdUsuario
            };

            // Obter a lista de usuários cadastrados
            if (!usuarioBll.ObterListaParaSelecao(requisicaoDto, ref retornoDto))
            {
                mensagemErro = retornoDto.Mensagem;
                return(false);
            }

            // Popular a lista da model com os usuários retornados
            foreach (var usuario in retornoDto.ListaEntidades)
            {
                model.ListaUsuarios.Add(new SelectListItem()
                {
                    Text  = usuario.Value,
                    Value = usuario.Key.ToString()
                });
            }

            return(true);
        }
예제 #3
0
        /// <summary>
        /// Obtem uma listra filtrada de logs
        /// </summary>
        /// <param name="filtros"></param>
        /// <returns></returns>
        public string ObterListaFiltrada(FiltrosLogModel filtros)
        {
            //Requisição para obter a lista
            RequisicaoObterListaDto requisicaoDto = new RequisicaoObterListaDto()
            {
                CampoOrdem           = "DATAINCLUSAO",
                IdUsuario            = SessaoUsuario.SessaoLogin.IdUsuario,
                Identificacao        = SessaoUsuario.SessaoLogin.Identificacao,
                NaoPaginarPesquisa   = filtros.NaoPaginaPesquisa,
                Pagina               = filtros.Pagina,
                NumeroItensPorPagina = 10
            };

            requisicaoDto.ListaFiltros.Add("DATAINCLUSAOINICIAL", filtros.DataInicial.ToString());
            requisicaoDto.ListaFiltros.Add("DATAINCLUSAOFINAL", filtros.DataFinal.ToString());

            //Adicionar filtros utilizados
            if (!string.IsNullOrWhiteSpace(filtros.Mensagem))
            {
                requisicaoDto.ListaFiltros.Add("MENSAGEM", filtros.Mensagem.Trim());
            }

            if (!string.IsNullOrWhiteSpace(filtros.IdUsuario))
            {
                requisicaoDto.ListaFiltros.Add("IDUSUARIO", filtros.IdUsuario.ToString());
            }

            if (filtros.Recurso != PizzaByteEnum.Enumeradores.LogRecursos.NaoIdentificado)
            {
                requisicaoDto.ListaFiltros.Add("RECURSO", ((int)filtros.Recurso).ToString());
            }

            //Consumir o serviço
            LogBll logBll = new LogBll("LogController");
            RetornoObterListaDto <LogDto> retornoDto = new RetornoObterListaDto <LogDto>();

            logBll.ObterListaFiltrada(requisicaoDto, ref retornoDto);

            string retorno = new JavaScriptSerializer().Serialize(retornoDto);

            return(retorno);
        }