Exemple #1
0
        public static DataTable GetSelectPermissoes(int mod_id, Guid gru_id)
        {
            SYS_GrupoPermissaoDAO dal = new SYS_GrupoPermissaoDAO();

            try
            {
                return(dal.SelectBy_mod_id(mod_id, gru_id));
            }
            catch
            {
                throw;
            }
        }
        public static DataTable SelecionarPermissoesGrupoPorIdGrupo(Guid grupoId)
        {
            SYS_GrupoPermissaoDAO dao = new SYS_GrupoPermissaoDAO();

            try
            {
                using (DataTable dt = dao.SelecionarPermissoesGrupoPorIdGrupo(grupoId)) { }
                return(dao.SelecionarPermissoesGrupoPorIdGrupo(grupoId));
            }
            catch
            {
                throw;
            }
        }
Exemple #3
0
        /// <summary>
        /// Carrega as permissões do sistema pelo grupo do usuário e url que ele está acessando.
        /// </summary>
        /// <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>
        /// <returns></returns>
        public static SYS_GrupoPermissao GetGrupoPermissaoBy_url(Guid gru_id, string url)
        {
            SYS_GrupoPermissaoDAO dal = new SYS_GrupoPermissaoDAO();

            try
            {
                url = ResolveUrl(url);

                return(dal.CarregarBy_url(gru_id, url));
            }
            catch
            {
                throw;
            }
        }
Exemple #4
0
        public static bool SalvarPermissoes(List <SYS_GrupoPermissao> lt)
        {
            List <Permissoes> xml = new List <Permissoes>();

            try
            {
                foreach (SYS_GrupoPermissao grp in lt)
                {
                    Permissoes per = new Permissoes
                    {
                        gru_id = grp.gru_id
                        ,
                        sis_id = grp.sis_id
                        ,
                        mod_id = grp.mod_id
                        ,
                        grp_inserir = grp.grp_inserir
                        ,
                        grp_alterar = grp.grp_alterar
                        ,
                        grp_excluir = grp.grp_excluir
                        ,
                        grp_consultar = grp.grp_consultar
                    };
                    xml.Add(per);
                }
                XmlDocument xDoc = new XmlDocument();
                using (MemoryStream ms = new MemoryStream())
                {
                    using (XmlTextWriter xtw = new XmlTextWriter(ms, Encoding.UTF8))
                    {
                        xtw.Formatting = Formatting.Indented;
                        XmlSerializer ser = new XmlSerializer(typeof(List <Permissoes>));
                        ser.Serialize(xtw, xml);
                        ms.Seek(0, SeekOrigin.Begin);
                        xDoc.Load(ms);
                    }
                }
                SYS_GrupoPermissaoDAO dal = new SYS_GrupoPermissaoDAO();
                XmlNode node = xDoc.SelectSingleNode("/ArrayOfPermissoes");
                return(dal._AlterarByXML(node));
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemple #5
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);
        }
Exemple #6
0
        public static bool Save
        (
            SYS_Grupo entity
            , Guid gru_idPermissao
            , Guid gru_idUsuario
            , CoreLibrary.Data.Common.TalkDBTransaction banco
        )
        {
            SYS_GrupoDAO dao = new SYS_GrupoDAO();

            try
            {
                if (banco == null)
                {
                    dao._Banco.Open(IsolationLevel.ReadCommitted);
                }
                else
                {
                    dao._Banco = banco;
                }

                //Salva dados na tabela SYS_Grupo
                if (entity.Validate())
                {
                    if (VerificaGrupoExistente(entity))
                    {
                        throw new DuplicateNameException("Já existe um grupo cadastrado com este nome.");
                    }

                    dao.Salvar(entity);
                }
                else
                {
                    throw new CoreLibrary.Validation.Exceptions.ValidationException(entity.PropertiesErrorList[0].Message);
                }

                if (entity.IsNew && gru_idPermissao != Guid.Empty)
                {
                    SYS_GrupoPermissaoDAO grp = new SYS_GrupoPermissaoDAO {
                        _Banco = dao._Banco
                    };
                    grp.CopiaPermissao(entity.gru_id, entity.sis_id, gru_idPermissao);
                }

                if (entity.IsNew && gru_idUsuario != Guid.Empty)
                {
                    SYS_GrupoPermissaoDAO grp = new SYS_GrupoPermissaoDAO {
                        _Banco = dao._Banco
                    };
                    grp.CopiaUsuario(entity.gru_id, gru_idUsuario);
                }

                return(true);
            }
            catch (Exception err)
            {
                if (banco == null)
                {
                    dao._Banco.Close(err);
                }

                throw;
            }
            finally
            {
                if (banco == null)
                {
                    dao._Banco.Close();
                }
            }
        }
Exemple #7
0
        /// <summary>
        /// Carrega as permissões do sistema pelo grupo do usuário e url que ele está acessando.
        /// </summary>
        /// <param name="gru_id">ID do grupo</param>
        /// <param name="url">Informar url no formato "~/myapp/pagina.aspx"</param>
        /// <returns></returns>
        public static SYS_GrupoPermissao GetGrupoPermissaoBy_UrlNaoAbsoluta(Guid gru_id, string url)
        {
            SYS_GrupoPermissaoDAO dal = new SYS_GrupoPermissaoDAO();

            return(dal.CarregarBy_url(gru_id, url));
        }