Ejemplo n.º 1
0
        private enumAcaoNaPagina PegarAcao(V entity, enumAcaoNaPagina acao = enumAcaoNaPagina.Criacao)
        {
            var existId = (int)entity
                          .GetType()
                          .GetProperties()
                          .FirstOrDefault(x => x.Name == "ID" || x.Name.EndsWith("ID"))
                          .GetValue(entity) > 0;

            var name = entity.GetType().Name;

            if (name == "MatriculaTurma" || name == "MatriculaOferta")
            {
                if (existId)
                {
                    return(enumAcaoNaPagina.EdicaoMatricula);
                }

                return(enumAcaoNaPagina.IncricaoAluno);
            }

            if (existId && acao != enumAcaoNaPagina.Exclusao)
            {
                return(enumAcaoNaPagina.Edicao);
            }

            return(acao);
        }
Ejemplo n.º 2
0
        private void SalvarLog(V entity, enumAcaoNaPagina acao = enumAcaoNaPagina.Criacao)
        {
            if (HttpContext.Current?.Session == null)
            {
                return;
            }

            var paginaAtual   = (Pagina)HttpContext.Current.Session["paginaAtual"];
            var queryString   = HttpContext.Current.Request.QueryString.ToString();
            var usuarioLogado = (Usuario)HttpContext.Current.Session["usuarioSGUS"];
            var ip            = HttpContext.Current.Request.UserHostAddress;

            var log = new LogAcessoPagina
            {
                IDUsuario     = usuarioLogado,
                Pagina        = paginaAtual,
                QueryString   = queryString,
                Acao          = PegarAcao(entity, acao),
                DTSolicitacao = DateTime.Now,
                IP            = ip
            };

            new RepositorioBase <LogAcessoPagina>().SalvarSemCommit(log);
        }