Ejemplo n.º 1
0
        public TRegistro_CadMenu RetornaRegMenu(string lin, string modulo)
        {
            TRegistro_CadMenu reg = new TRegistro_CadMenu();

            string[] campos = lin.Split(':');
            reg.id_menu     = campos[0].Trim();
            reg.id_menuraiz = (campos[1].Trim() != "NULL" ? campos[1] : null);
            reg.cd_modulo   = (campos[2].Trim() != "NULL" ? campos[2] : null);
            reg.nm_classe   = (campos[3].Trim() != "NULL" ? campos[3] : null);
            reg.ds_menu     = (campos[4].Trim() != "NULL" ? campos[4] : null);
            reg.nm_modulo   = modulo;
            if (string.IsNullOrEmpty(reg.nm_classe))
            {
                reg.tp_evento = "S";
            }
            else
            {
                reg.tp_evento = "P";
            }

            if (string.IsNullOrEmpty(reg.id_menuraiz))
            {
                reg.nivel = 1;
            }

            return(reg);
        }
Ejemplo n.º 2
0
            private void bb_SalvarMenu_Click(object sender, EventArgs e)
            {
                try
                {
                    if (pDadosItemMenu.ValidarCampos(pDadosItemMenu))
                    {
                        Reg_CadMenu = new TRegistro_CadMenu();
                        Reg_CadMenu.id_menu = (Nr1.Text + Nr2.Text + Nr3.Text).Trim();

                        if (CacheListaMenu.Where(c => c.id_menu.Equals(Reg_CadMenu.id_menu)).Count() <= 0)
                        {
                            Reg_CadMenu.ds_menu = DS_Menu.Text;
                            Reg_CadMenu.nivel = Convert.ToDecimal(cb_Nivel.Text);
                            if (rb_Analitico.Checked)
                                Reg_CadMenu.tp_evento = "R";
                            else
                                Reg_CadMenu.tp_evento = "S";
                            Reg_CadMenu.id_menuraiz = treeMenu.SelectedNode.Name.ToString().Trim();
                            Reg_CadMenu.ID_Report = Cad_Report.ID_Report;

                            if (rb_Analitico.Checked)
                            {
                                this.DialogResult = DialogResult.OK;
                                this.Dispose();
                            }
                            else
                            {
                                //GRAVA NOVO MENU SINTETICO
                                string retorno = TCN_CadMenu.GravarMenu(Reg_CadMenu, banco);

                                TreeNode noMenu = new TreeNode(Reg_CadMenu.id_menu + " - " + Reg_CadMenu.ds_menu.Trim());
                                noMenu.Name = Reg_CadMenu.id_menu.ToString().Trim();
                                noMenu.Tag = Reg_CadMenu.nivel.ToString();
                                treeMenu.SelectedNode.Nodes.AddRange(new TreeNode[] { noMenu });

                                //FECHA E LIMPA O PANEL
                                treeMenu.Enabled = true;
                                bb_OK.Enabled = false;
                                LimpaAba();
                                CacheListaMenu = TCN_CadMenu.Busca("", "", false, "a.id_menu", false, "", banco);
                            }
                        }
                        else
                        {
                            throw new Exception("Atenção, não foi possível lançar o item do menu, já existe um item com este código!");
                        }
                    }
                }
                catch (Exception erro)
                {
                    MessageBox.Show("ERRO: " + erro.Message, "Mensagem");
                    bb_OK.Focus();
                }
            }
Ejemplo n.º 3
0
        public static string DeletarMenuAcesso(TRegistro_CadMenu val, BancoDados.TObjetoBanco banco)
        {
            bool        st_transacao = false;
            TCD_CadMenu qtb_menu     = new TCD_CadMenu();

            try
            {
                if (banco == null)
                {
                    qtb_menu.CriarBanco_Dados(true);
                    st_transacao = true;
                    banco        = qtb_menu.Banco_Dados;
                }
                else
                {
                    qtb_menu.Banco_Dados = banco;
                }

                //DELETA OS ACESSOS
                new CamadaDados.TDataQuery(banco).executarSql("DELETE TB_DIV_Acesso WHERE  " +
                                                              "	ID_Menu = " + val.id_menu, null);

                //DELETA MENU
                string retorno = qtb_menu.DeletarMenu(val);

                if (st_transacao)
                {
                    qtb_menu.Banco_Dados.Commit_Tran();
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_menu.Banco_Dados.RollBack_Tran();
                }
                else
                {
                    throw new Exception(ex.Message);
                }
                return("");
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_menu.deletarBanco_Dados();
                }
            }
        }
Ejemplo n.º 4
0
        public static string GravarMenu(TRegistro_CadMenu val, TObjetoBanco banco)
        {
            bool        st_transacao = false;
            TCD_CadMenu qtb_Menu     = new TCD_CadMenu();

            try
            {
                if (banco == null)
                {
                    qtb_Menu.CriarBanco_Dados(true);
                    st_transacao = true;
                }
                else
                {
                    qtb_Menu.Banco_Dados = banco;
                }
                //Gravar Uf
                string retorno = qtb_Menu.GravarMenu(val);
                if (st_transacao)
                {
                    qtb_Menu.Banco_Dados.Commit_Tran();
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_Menu.Banco_Dados.RollBack_Tran();
                }
                else
                {
                    throw new Exception(ex.Message);
                }
                return("");
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_Menu.deletarBanco_Dados();
                }
            }
            //return new TCD_CadMenu().GravarMenu(val);
        }
Ejemplo n.º 5
0
        public override void afterExclui()
        {
            //DELETA MENU
            if (treeMenu.SelectedNode != null)
            {
                if (MessageBox.Show("Confirma Exclusão do Item do Menu?", "Mensagem",
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) ==
                    System.Windows.Forms.DialogResult.Yes)
                {
                    //excluir
                    TreeNode nodeMenu = treeMenu.SelectedNode;
                    if (nodeMenu.Nodes.Count == 0)
                    {
                        List <TRegistro_CadMenu> RegMenuVar = CacheListaMenu.Where(p => (p.id_menu == nodeMenu.Name)).ToList <TRegistro_CadMenu>();

                        if (RegMenuVar.Count > 0)
                        {
                            TRegistro_CadMenu regMenu = (RegMenuVar[0] as TRegistro_CadMenu);

                            if (regMenu.tp_evento.Trim() == "R")
                            {
                                TCN_Cad_Report.AtualizaMenuReport(regMenu.id_menu, null);
                            }
                            TCN_CadMenu.DeletarMenuAcesso(regMenu, null);

                            CarregaDados();
                        }
                        else
                        {
                            MessageBox.Show("Não foi possível excluir o menu, tente novamente!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        MessageBox.Show("Não é possível excluir menu que tem filhos!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            else
            {
                MessageBox.Show("É necessário selecionar um item do menu!", "Mensagem", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 6
0
        public TList_CadMenu CriaListNode(TList_CadMenu lista, TreeNode nodeMenu)
        {
            List <TRegistro_CadMenu> RegMenuVar = CacheListaInfo.Where(p => (p.id_menu == nodeMenu.Name)).ToList <TRegistro_CadMenu>();

            if (RegMenuVar.Count > 0)
            {
                TRegistro_CadMenu regMenu = (RegMenuVar[0] as TRegistro_CadMenu);
                lista.Add(regMenu);

                if (nodeMenu.Nodes.Count > 0)
                {
                    for (int i = 0; i < nodeMenu.Nodes.Count; i++)
                    {
                        CriaListNode(lista, nodeMenu.Nodes[i]);
                    }
                }
            }

            return(lista);
        }
Ejemplo n.º 7
0
        public static string GravarReportXMenu(TRegistro_Cad_Report val, TRegistro_CadMenu valMenu, TObjetoBanco banco)
        {
            bool           st_transacao = false;
            TCD_Cad_Report qtb_Report   = new TCD_Cad_Report();

            try
            {
                if (banco == null)
                {
                    st_transacao = qtb_Report.CriarBanco_Dados(true);
                }
                else
                {
                    qtb_Report.Banco_Dados = banco;
                }
                //GRAVA MENU
                string retorno = TCN_CadMenu.GravarMenu(valMenu, qtb_Report.Banco_Dados);

                if (st_transacao)
                {
                    qtb_Report.Banco_Dados.Commit_Tran();
                }
                return(retorno);
            }
            catch (Exception ex)
            {
                if (st_transacao)
                {
                    qtb_Report.Banco_Dados.RollBack_Tran();
                }
                throw new Exception("Erro gravar menu: " + ex.Message.Trim());
            }
            finally
            {
                if (st_transacao)
                {
                    qtb_Report.deletarBanco_Dados();
                }
            }
        }
Ejemplo n.º 8
0
            private void tsb_DelItem_Click(object sender, EventArgs e)
            {
                if (treeMenu.SelectedNode != null)
                {
                    TreeNode nodeSel = treeMenu.SelectedNode;
                    if (nodeSel.Nodes.Count <= 0)
                    {
                        if (MessageBox.Show("Deseja realmente deletar este item do menu?", "Mensagem",
                            MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) ==
                            System.Windows.Forms.DialogResult.Yes)
                        {
                            TRegistro_CadMenu Reg_CadMenu = new TRegistro_CadMenu();
                            Reg_CadMenu.id_menu = nodeSel.Name.Trim();
                            string retorno = TCN_CadMenu.DeletarMenuAcesso(Reg_CadMenu, banco);
                            if (retorno != "")
                            {
                                treeMenu.Nodes.Remove(treeMenu.SelectedNode);

                                //CARREGA NOVAMENTE O MENU
                                //Type t = Application.OpenForms["FMenuPrin"].GetType();
                                //t.GetMethod("CarregaMenu").Invoke(Application.OpenForms["FMenuPrin"], new object[] { "MASTER", new TDatUsuario(), true });

                                CacheListaMenu = TCN_CadMenu.Busca("", "", false, "a.id_menu", false, "", banco);
                            }
                            else
                            {
                                MessageBox.Show("Atenção, não foi possível deletar o item!");
                            }
                        }
                    }
                    else
                    {
                        MessageBox.Show("Atenção, este item do menu tem subitems e não pode ser deletado!");
                    }
                }
                else
                {
                    MessageBox.Show("Atenção, é necessário selecionar um item!");
                }
            }
Ejemplo n.º 9
0
        public static string GravarMenu(string lin, string modulo)
        {
            TRegistro_CadMenu reg = new TRegistro_CadMenu();

            string[] campos = lin.Split(':');
            reg.id_menu     = campos[0].Trim();
            reg.id_menuraiz = (campos[1].Trim() != "NULL" ? campos[1] : null);
            reg.cd_modulo   = (campos[2].Trim() != "NULL" ? campos[2] : null);
            reg.nm_classe   = (campos[3].Trim() != "NULL" ? campos[3] : null);
            reg.ds_menu     = (campos[4].Trim() != "NULL" ? campos[4] : null);
            reg.nm_modulo   = (campos[3].Trim() != "NULL" ? modulo : null);
            if (reg.nm_classe == null)
            {
                reg.tp_evento = "S";
            }
            else
            {
                reg.tp_evento = "P";
            }

            return(GravarMenu(reg, null));
        }
Ejemplo n.º 10
0
        public void PopulaMenusInfo()
        {
            System.IO.DirectoryInfo folder = new System.IO.DirectoryInfo(Utils.Parametros.pubPathAliance.Trim());
            System.IO.FileInfo[]    lista  = folder.GetFiles("*.dll");
            Int32 tam = lista.Length;

            string[] registros;

            for (int x = 0; x < tam; x++)
            {
                try
                {
                    Assembly extAssembly = Assembly.LoadFrom(lista[x].FullName.Trim());
                    string   Mod         = extAssembly.ManifestModule.Name.Replace(".dll", "");

                    object extInfo = extAssembly.CreateInstance(Mod + ".TInfo");

                    string tt = extInfo.GetType().GetMethod("getInfoMenu").Invoke(extInfo, null).ToString();
                    registros = tt.Split('|');
                    for (int y = 0; y < registros.Length; y++)
                    {
                        TRegistro_CadMenu regMenu = RetornaRegMenu(registros[y], extAssembly.ManifestModule.Name);
                        CacheListaInfo.Add(regMenu);
                    }
                }
                catch (System.IO.FileLoadException ex)
                {
                    MessageBox.Show("Arquivo: " + ex.FileName.Remove(0, 8) + "\r\n" +
                                    "O sistema não pode ler o arquivo especificado.\r\n\r\n " + ex.StackTrace, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                catch (System.IO.FileNotFoundException ex)
                {
                    MessageBox.Show("Arquivo: " + ex.FileName.Remove(0, 8) + "\r\n" +
                                    "O sistema não pode encontrar o arquivo especificado.\r\n\r\n " + ex.StackTrace, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                catch
                {
                }
            }

            List <TRegistro_CadMenu> ItemsMenus = CacheListaInfo.Where(c => (c.id_menuraiz == null && c.nivel == 1 && c.tp_evento.Equals("S"))).OrderBy(p => p.id_menu).ToList <TRegistro_CadMenu>();

            if (ItemsMenus.Count > 0)
            {
                for (int x = 0; x < ItemsMenus.Count; x++)
                {
                    if (ItemsMenus[x].ds_menu.Trim() != "")
                    {
                        TreeNode noMenu = new TreeNode(ItemsMenus[x].id_menu + " - " + ItemsMenus[x].ds_menu.Trim());
                        noMenu.Name = ItemsMenus[x].id_menu.ToString().Trim();
                        noMenu.Tag  = ItemsMenus[x].tp_evento.ToString();
                        treeMenuPreCad.Nodes.AddRange(new TreeNode[] { noMenu });

                        //BUSCA TODOS OS MENUS PAIS
                        List <TRegistro_CadMenu> ItemsFilhosMenus = CacheListaInfo.Where(c => (c.id_menuraiz == ItemsMenus[x].id_menu)).OrderBy(p => p.id_menu).ToList <TRegistro_CadMenu>();
                        if (ItemsFilhosMenus.Count > 0)
                        {
                            AddCamposTree(ItemsFilhosMenus, treeMenuPreCad.Nodes);
                            VerificaExisteFilhosInfo(ItemsFilhosMenus, CacheListaInfo);
                        }
                    }
                }
            }

            //treeMenuPreCad.ExpandAll();
            //treeMenuPreCad.SelectedNode = treeMenuPreCad.Nodes[0];
        }
Ejemplo n.º 11
0
 public static string DeletarMenu(TRegistro_CadMenu val)
 {
     return(new TCD_CadMenu().DeletarMenu(val));
 }