public JsonResult list()
 {
     SYS_Modulo module = new SYS_Modulo() {
         Descripcion = "Modulo Ejemplo"
     };
     return new JsonResult() { Data = module, JsonRequestBehavior = JsonRequestBehavior.AllowGet };
 }
        protected override void OnLoad(EventArgs e)
        {
            string dirIncludes = __SessionWEB._AreaAtual._DiretorioIncludes;

            Page.Header.Controls.Add(UtilBO.SetStyleHeader(dirIncludes, "altoContraste.css", true));

            //Inicia tag que checa se o browser é IE6
            LiteralControl ifIE6 = new LiteralControl("<!--[if IE 6]>");

            Page.Header.Controls.Add(ifIE6);

            //Adiciona css para IE6
            Page.Header.Controls.Add(UtilBO.SetStyleHeader(dirIncludes, "cssIE6.css", false));

            //Fecha tag que checa se o browser é IE6
            LiteralControl endifIE6 = new LiteralControl("<![endif]-->");

            Page.Header.Controls.Add(endifIE6);

            if (__SessionWEB.__UsuarioWEB.Grupo != null)
            {
                __SessionWEB.__UsuarioWEB.GrupoPermissao = SYS_GrupoBO.GetGrupoPermissaoBy_url(
                    __SessionWEB.__UsuarioWEB.Grupo.gru_id
                    , HttpContext.Current.Request.CurrentExecutionFilePath
                    );
                SYS_Modulo mod = new SYS_Modulo
                {
                    mod_id = __SessionWEB.__UsuarioWEB.GrupoPermissao.mod_id,
                    sis_id = __SessionWEB.__UsuarioWEB.GrupoPermissao.sis_id
                };
                HttpContext.Current.Session[SYS_Modulo.SessionName] = SYS_ModuloBO.GetEntity(mod);
            }

            Title = CoreLibrary.Web.WebProject.ApplicationWEB._TituloDasPaginas;

            base.OnLoad(e);

            // Adiciona Init.js, que carrega na tela todas as funções declaradas dos outros scripts.
            // Carregar sempre por último - depois de todos os outros Js da página.
            ScriptManager sm = ScriptManager.GetCurrent(this);

            if (sm != null)
            {
                sm.Scripts.Add(new ScriptReference(ArquivoJS.Init));
            }
        }
示例#3
0
 /// <summary>
 /// Carrega o valor do log de sistema do atual context.
 /// </summary>
 protected virtual void GetSystemLogContext()
 {
     if (HttpContext.Current != null &&
         (HttpContext.Current.Session[LOG_Sistema.SessionName] != null &&
          HttpContext.Current.Session[SYS_Modulo.SessionName] != null) &&
         (HttpContext.Current.Session[LOG_Sistema.SessionName].GetType() == typeof(Guid) &&
          HttpContext.Current.Session[SYS_Modulo.SessionName].GetType() == typeof(SYS_Modulo)))
     {
         sys_modulo = (SYS_Modulo)HttpContext.Current.Session[SYS_Modulo.SessionName];
         log_id     = new Guid(HttpContext.Current.Session[LOG_Sistema.SessionName].ToString());
     }
     else
     {
         sys_modulo = null;
         log_id     = Guid.Empty;
     }
 }
 private void _ExcluirModulo(int sis_id, int mod_id)
 {
     try
     {
         SYS_Modulo modulo = new SYS_Modulo
         {
             mod_id = mod_id
             ,
             sis_id = sis_id
         };
         SYS_ModuloBO.Delete(modulo);
         ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Delete, "sis_id: " + _VS_sis_id + "; mod_id: " + modulo.mod_id);
     }
     catch
     {
         throw;
     }
 }
示例#5
0
    private void _Salvar()
    {
        try
        {
            GridView          grd = _dgvModulo;
            List <SYS_Modulo> lst = new List <SYS_Modulo>();
            foreach (GridViewRow row in grd.Rows)
            {
                SYS_Modulo mod = new SYS_Modulo();
                mod.sis_id = _VS_sis_id;
                mod.mod_id = Convert.ToInt32(grd.DataKeys[row.DataItemIndex].Values[0]);

                CheckBox ckbAuditoria = (CheckBox)row.Cells[2].FindControl("_ckbAuditoria");
                if (ckbAuditoria != null)
                {
                    mod.mod_auditoria = ckbAuditoria.Checked;
                }
                else
                {
                    mod.mod_auditoria = false;
                }

                lst.Add(mod);
            }
            if (new SYS_ModuloBO().SalvarAuditoria(lst))
            {
                ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "sis_id: " + _VS_sis_id);
                __SessionWEB.PostMessages = UtilBO.GetErroMessage("Configuração de auditoria salva com sucesso.", UtilBO.TipoMensagem.Sucesso);
                Response.Redirect(__SessionWEB._AreaAtual._Diretorio + "ConfiguracoesAuditoria/Busca.aspx", false);
            }
            else
            {
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar a configuração de auditoria.", UtilBO.TipoMensagem.Erro);
            }
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar a configuração de auditoria.", UtilBO.TipoMensagem.Erro);
        }
    }
示例#6
0
        /// <summary>
        /// Carrega as permissões no módulo para o grupo do usuário e url que ele está acessando.
        /// </summary>
        /// <param name="sis_id">ID do sistema ao qual o grupo pertence</param>
        /// <param name="gru_id">ID do grupo</param>
        /// <param name="url">
        /// Informar url nos formatos ~/myapp/pagina.aspx, ~/pagina.aspx, /myapp/pagina.asx ou /pagina.aspx.
        /// </param>
        /// <param name="entModulo">
        /// Entidade de Módulo carregada, quando a entidade GrupoPermissao estiver preenchida ela
        /// também estará.
        /// </param>
        /// <returns></returns>
        public static SYS_GrupoPermissao GetGrupoPermissao_Grupo_By_Url(int sis_id, Guid gru_id, string url, out SYS_Modulo entModulo)
        {
            entModulo = new SYS_Modulo();
            SYS_GrupoPermissao entGrupoPermissao = new SYS_GrupoPermissao();

            url = ResolveUrl(url);

            if (sis_id <= 0)
            {
                throw new ArgumentException("Sistema não informado/encontrado.");
            }

            DataTable dtGrupoPermissao = new SYS_GrupoPermissaoDAO().CarregarGrupos_Urls_PorSistema(gru_id, url, sis_id);

            if (dtGrupoPermissao.Rows.Count > 0)
            {
                // Busca os valores pra carregar as entidades.
                entGrupoPermissao = new SYS_GrupoPermissaoDAO().DataRowToEntity(dtGrupoPermissao.Rows[0], entGrupoPermissao);
                entModulo         = new SYS_ModuloDAO().DataRowToEntity(dtGrupoPermissao.Rows[0], entModulo);
            }

            return(entGrupoPermissao);
        }
示例#7
0
        /// <summary>
        /// Retorna uma lista de objetos SYS_Modulo filtrado por grupo
        /// </summary>
        /// <param name="gru_id">ID do grupo</param>
        /// <returns>Lista de SYS_Modulo</returns>
        public IList <SYS_Modulo> SelectBy_gru_id(Guid gru_id)
        {
            IList <SYS_Modulo>         lt = new List <SYS_Modulo>();
            QuerySelectStoredProcedure qs = new QuerySelectStoredProcedure("NEW_SYS_Modulo_SelectBy_gru_id", _Banco);

            try
            {
                #region PARAMETROS

                Param               = qs.NewParameter();
                Param.DbType        = DbType.Guid;
                Param.ParameterName = "@gru_id";
                Param.Size          = 16;
                Param.Value         = gru_id;
                qs.Parameters.Add(Param);

                #endregion

                qs.Execute();

                foreach (DataRow dr in qs.Return.Rows)
                {
                    SYS_Modulo entity = new SYS_Modulo();
                    lt.Add(DataRowToEntity(dr, entity));
                }
                return(lt);
            }
            catch
            {
                throw;
            }
            finally
            {
                qs.Parameters.Clear();
            }
        }
示例#8
0
 /// <summary>
 /// Método alterado para que o delete não faça exclusão física e sim lógica (update).
 /// </summary>
 /// <param name="entity"> Entidade SYS_Modulo</param>
 /// <returns>true = sucesso | false = fracasso</returns>
 public override bool Delete(SYS_Modulo entity)
 {
     __STP_DELETE = "NEW_SYS_Modulo_Update_mod_situacao";
     return(base.Delete(entity));
 }
示例#9
0
 /// <summary>
 /// Método alterado para que o update não faça a alteração da data de criação e da integridade
 /// </summary>
 /// <param name="entity"> Entidade SYS_Modulo</param>
 /// <returns>true = sucesso | false = fracasso</returns>
 protected override bool Alterar(SYS_Modulo entity)
 {
     __STP_UPDATE = "NEW_SYS_Modulo_UPDATE";
     return(base.Alterar(entity));
 }
示例#10
0
        /// <summary>
        /// Parâmetros para efetuar a alteração preservando a data de criação
        /// </summary>
        protected override void ParamAlterar(QueryStoredProcedure qs, SYS_Modulo entity)
        {
            Param               = qs.NewParameter();
            Param.DbType        = DbType.Int32;
            Param.ParameterName = "@sis_id";
            Param.Size          = 4;
            Param.Value         = entity.sis_id;
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.Int32;
            Param.ParameterName = "@mod_id";
            Param.Size          = 4;
            Param.Value         = entity.mod_id;
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.AnsiString;
            Param.ParameterName = "@mod_nome";
            Param.Size          = 50;
            Param.Value         = entity.mod_nome;
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.String;
            Param.ParameterName = "@mod_descricao";
            if (!string.IsNullOrEmpty(entity.mod_descricao))
            {
                Param.Value = entity.mod_descricao;
            }
            else
            {
                Param.Value = DBNull.Value;
            }
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.Int32;
            Param.ParameterName = "@mod_idPai";
            Param.Size          = 4;
            if (entity.mod_idPai > 0)
            {
                Param.Value = entity.mod_idPai;
            }
            else
            {
                Param.Value = DBNull.Value;
            }
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.Boolean;
            Param.ParameterName = "@mod_auditoria";
            Param.Size          = 1;
            Param.Value         = entity.mod_auditoria;
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.Byte;
            Param.ParameterName = "@mod_situacao";
            Param.Size          = 1;
            Param.Value         = entity.mod_situacao;
            qs.Parameters.Add(Param);

            Param               = qs.NewParameter();
            Param.DbType        = DbType.DateTime;
            Param.ParameterName = "@mod_dataAlteracao";
            Param.Size          = 16;
            Param.Value         = DateTime.Now;
            qs.Parameters.Add(Param);
        }
示例#11
0
        /// <summary>
        /// Atualiza o campo de auditoria nos modulos
        /// </summary>
        /// <param name="modulo">Entity do modulo que será alterado</param>
        /// <returns>True: ocorreu alguma alteração / False: não ocorreu nenhuma alteração </returns>
        public bool UpdateAuditoria
        (
            SYS_Modulo modulo

        )
        {
            int totalRecords;

            QuerySelectStoredProcedure qs = new QuerySelectStoredProcedure("NEW_SYS_Modulo_UPDATE_Auditoria", _Banco);

            try
            {
                #region PARAMETROS

                Param               = qs.NewParameter();
                Param.DbType        = DbType.Int32;
                Param.ParameterName = "@sis_id";
                Param.Size          = 4;
                if (modulo.sis_id > 0)
                {
                    Param.Value = modulo.sis_id;
                }
                else
                {
                    Param.Value = DBNull.Value;
                }
                qs.Parameters.Add(Param);

                Param               = qs.NewParameter();
                Param.DbType        = DbType.Int32;
                Param.ParameterName = "@mod_id";
                Param.Size          = 4;
                if (modulo.mod_id > 0)
                {
                    Param.Value = modulo.mod_id;
                }
                else
                {
                    Param.Value = DBNull.Value;
                }
                qs.Parameters.Add(Param);

                Param               = qs.NewParameter();
                Param.DbType        = DbType.Boolean;
                Param.ParameterName = "@mod_auditoria";
                Param.Size          = 1;
                Param.Value         = modulo.mod_auditoria;
                qs.Parameters.Add(Param);

                Param               = qs.NewParameter();
                Param.DbType        = DbType.DateTime;
                Param.ParameterName = "@mod_dataAlteracao";
                Param.Size          = 8;
                Param.Value         = DateTime.Now;
                qs.Parameters.Add(Param);

                #endregion

                qs.Execute();
                totalRecords = qs.Return.Rows.Count;

                if (totalRecords > 0)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch
            {
                throw;
            }
            finally
            {
                qs.Parameters.Clear();
            }
        }
    private void _SalvarModulo()
    {
        int mod_id = String.IsNullOrEmpty(_txt_mod_id.Text.Trim()) ? 0 : Convert.ToInt32(_txt_mod_id.Text.Trim());

        try
        {
            SYS_Modulo modulo = new SYS_Modulo
            {
                mod_situacao = 1
                ,
                mod_dataAlteracao = DateTime.Now
                ,
                mod_dataCriacao = DateTime.Now
                ,
                mod_nome = _txt_mod_nome.Text
                ,
                mod_auditoria = _ckb_mod_auditoria.Checked
                ,
                mod_descricao = _txt_mod_descricao.Text
                ,
                mod_idPai = String.IsNullOrEmpty(_txt_mod_idPai.Value.Trim()) ? 0 : Convert.ToInt32(_txt_mod_idPai.Value.Trim())
                ,
                sis_id = _VS_sis_id
                ,
                mod_id = mod_id
                ,
                IsNew = mod_id == 0 ? true : false
            };

            // SE NÃO FOR UM MÓDULO PAI VERIFICA PERMISSÕES
            if (modulo.mod_idPai != 0)
            {
                foreach (DataRow item in _VS_VisoesSalvasModulos.Rows)
                {
                    if (item.RowState != DataRowState.Deleted)
                    {
                        // VERIFICA SE A VISÃO TEM PERMISSAO NO MODULO PAI DO MODULO QUE ESTÁ SENDO ATRIBUIDA
                        SYS_ModuloBO bo = new SYS_ModuloBO();

                        if (!bo.ValidarPermissaoModuloPai(_VS_sis_id, Convert.ToInt32(item.ItemArray[0]), modulo.mod_idPai))
                        {
                            SYS_Modulo moduloPai = new SYS_Modulo
                            {
                                mod_id = modulo.mod_idPai
                                ,
                                sis_id = _VS_sis_id
                            };
                            SYS_ModuloBO.GetEntity(moduloPai);
                            throw new ValidationException("A visão de usuário " + item.ItemArray[1].ToString() + " não possui permissão no módulo pai (" + moduloPai.mod_nome + "). " +
                                                          "Atribua esta permissão para que ele acesse o módulo " + _txt_mod_nome.Text + ".");
                        }
                    }
                }
            }

            //Salvar o módulo.
            if (SYS_ModuloBO.Save(modulo, _VS_Mod_SiteMapMenu, _VS_Mod_SiteMapMenuAntigo, _VS_VisoesSalvasModulos, _VS_SiteMap))
            {
                divModulo.Visible = false;

                if (modulo.IsNew)
                {
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Insert, "sis_id: " + _VS_sis_id + "; mod_id: " + modulo.mod_id);
                    _lblMessage.Text = UtilBO.GetErroMessage("Módulo incluído com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }
                else
                {
                    ApplicationWEB._GravaLogSistema(LOG_SistemaTipo.Update, "sis_id: " + _VS_sis_id + "; mod_id: " + modulo.mod_id);
                    _lblMessage.Text = UtilBO.GetErroMessage("Módulo alterado com sucesso.", UtilBO.TipoMensagem.Sucesso);
                }

                _CarregarModulos();
            }
            else
            {
                _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o módulo.", UtilBO.TipoMensagem.Erro);
            }
        }
        catch (ValidationException e)
        {
            _lblMessage.Text = UtilBO.GetErroMessage(e.Message, UtilBO.TipoMensagem.Alerta);
        }
        catch (Exception e)
        {
            ApplicationWEB._GravaErro(e);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar salvar o módulo.", UtilBO.TipoMensagem.Erro);
            _CarregarModulos();
        }
        finally
        {
            _updModulos.Update();
            _updDetalhesModulo.Update();
        }
    }
    private void _TrataCadastroModulo(int sis_id, int mod_id, string mod_nome, int mod_idPai)
    {
        try
        {
            if (sis_id > 0)
            {
                if (mod_id > 0)
                {
                    SYS_Modulo modulo = new SYS_Modulo
                    {
                        mod_id = mod_id
                        ,
                        sis_id = sis_id
                    };

                    SYS_ModuloBO.GetEntity(modulo);
                    _txt_mod_nome.Text         = mod_nome;
                    _txt_mod_id.Text           = mod_id.ToString();
                    _txt_mod_descricao.Text    = modulo.mod_descricao;
                    _txt_mod_idPai.Value       = modulo.mod_idPai.ToString();
                    _ckb_mod_auditoria.Checked = modulo.mod_auditoria;

                    DataTable dtVisoes = SYS_GrupoPermissaoBO.GetSelect_Visoes(sis_id, mod_id);
                    _VS_VisoesSalvasModulos = dtVisoes.Rows.Count > 0 ? dtVisoes : null;
                    _CarregarVisoes(_VS_VisoesSalvasModulos);

                    if (SYS_VisaoModuloMenuBO.GetSelect_SiteMapMenu(sis_id, mod_id) != Convert.ToInt32(null))
                    {
                        _VS_Mod_SiteMapMenu = SYS_VisaoModuloMenuBO.GetSelect_SiteMapMenu(sis_id, mod_id);
                    }
                    else
                    {
                        _VS_Mod_SiteMapMenu = 0;
                    }

                    _VS_Mod_SiteMapMenuAntigo = _VS_Mod_SiteMapMenu;

                    DataTable dtSiteMap = SYS_ModuloSiteMapBO.GetSelect_by_mod_id(sis_id, mod_id, _gdvSiteMap.AllowPaging, 1, _gdvSiteMap.PageSize);
                    _VS_SiteMap = dtSiteMap.Rows.Count > 0 ? dtSiteMap : null;
                    _CarregarSiteMap(_VS_SiteMap);

                    _VS_msm_id = SYS_ModuloSiteMapBO.Gerar_msm_id(sis_id, mod_id) - 1;
                }
                else
                {
                    _LimparCamposNovo();
                    _txt_mod_nome.Text   = mod_nome;
                    _txt_mod_id.Text     = mod_id.ToString();
                    _txt_mod_idPai.Value = mod_idPai.ToString();
                }

                _lblMessage.Text  = string.Empty;
                divModulo.Visible = true;
            }
            else
            {
                divModulo.Visible = false;
            }
            _updDetalhesModulo.Update();
        }
        catch (Exception ex)
        {
            ApplicationWEB._GravaErro(ex);
            _lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar carregar o módulo.", UtilBO.TipoMensagem.Erro);
        }
    }
示例#14
0
 /// <summary>
 /// Grava log de sistema no banco de dados.
 /// </summary>
 /// <param name="acao">Ação executada pelo usuário</param>
 /// <param name="descricao">Descrição do log</param>
 /// <param name="usu_login">Login do usuário que tentou realizar a operação (utilizado para operações de login sem sucesso)</param>
 /// <returns>Informa se o log de sistema foi salvo com sucesso.</returns>
 public static Guid _GravaLogSistema(LOG_SistemaTipo acao, string descricao)
 {
     try
     {
         LOG_Sistema entity = new LOG_Sistema();
         entity.log_acao      = Enum.GetName(typeof(LOG_SistemaTipo), acao);
         entity.log_dataHora  = DateTime.Now;
         entity.log_descricao = descricao;
         if (HttpContext.Current != null)
         {
             //Preenche dados do host do site
             LOG_SistemaBO.GenerateLogID();
             entity.log_id          = new Guid(HttpContext.Current.Session[LOG_Sistema.SessionName].ToString());
             entity.log_ip          = HttpContext.Current.Request.UserHostAddress;
             entity.log_machineName = HttpContext.Current.Server.MachineName;
             if (HttpContext.Current.Session != null)
             {
                 SessionWEB session = (SessionWEB)HttpContext.Current.Session[SessSessionWEB];
                 if (session != null)
                 {
                     //Preenche dados referente ao usuário
                     if (session.__UsuarioWEB != null && session.__UsuarioWEB.Usuario != null)
                     {
                         entity.usu_id    = session.__UsuarioWEB.Usuario.usu_id;
                         entity.usu_login = session.__UsuarioWEB.Usuario.usu_login;
                     }
                     //Preenche dados referente ao grupo do usuário
                     if (session.__UsuarioWEB != null && session.__UsuarioWEB.Grupo != null)
                     {
                         //Preenche os dados do grupo
                         entity.gru_id   = session.__UsuarioWEB.Grupo.gru_id;
                         entity.gru_nome = session.__UsuarioWEB.Grupo.gru_nome;
                         //Preenche os dados do sistema
                         SYS_Sistema sistema = new SYS_Sistema
                         {
                             sis_id = session.__UsuarioWEB.Grupo.sis_id
                         };
                         SYS_SistemaBO.GetEntity(sistema);
                         entity.sis_id   = sistema.sis_id;
                         entity.sis_nome = sistema.sis_nome;
                         //Preenche os dados do módulo
                         if (HttpContext.Current.Session[SYS_Modulo.SessionName] != null)
                         {
                             SYS_Modulo modulo = (SYS_Modulo)HttpContext.Current.Session[SYS_Modulo.SessionName];
                             entity.mod_id   = modulo.mod_id;
                             entity.mod_nome = modulo.mod_nome;
                         }
                         else
                         {
                             entity.mod_id   = 0;
                             entity.mod_nome = string.Empty;
                         }
                         //Preenche as entidades e unidades administrativa do grupo
                         if (session.__UsuarioWEB.GrupoUA != null)
                         {
                             //Formata a entidade no padrão JSON
                             JavaScriptSerializer oSerializer = new JavaScriptSerializer();
                             entity.log_grupoUA = oSerializer.Serialize(session.__UsuarioWEB.GrupoUA);
                         }
                     }
                 }
             }
         }
         if (!LOG_SistemaBO.Save(entity))
         {
             throw new Exception("Não foi possível salvar o log do sistema.");
         }
         if (HttpContext.Current != null)
         {
             HttpContext.Current.Session[LOG_Sistema.SessionName] = null;
         }
         return(entity.log_id);
     }
     catch (Exception)
     {
         throw;
     }
 }