예제 #1
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            bool estaValidado = ValidarFormulario();

            if (!estaValidado)
            {
                return;
            }

            MenuBe registro = new MenuBe();

            if (codigoMenu.HasValue)
            {
                registro.CodigoMenu = codigoMenu.Value;
            }
            registro.Nombre     = txtNombre.Text.Trim();
            registro.Formulario = txtFormulario.Text.Trim();
            if (cbbCodigoMenuPadre.SelectedIndex != 0)
            {
                registro.CodigoMenuPadre = (int)cbbCodigoMenuPadre.SelectedValue;
            }

            bool seGuardoRegistro = menuBl.GuardarMenu(registro);

            if (seGuardoRegistro)
            {
                DialogResult = MessageBox.Show("¡El registro se guardó correctamente!", "¡Bien hecho!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                Close();
            }
            else
            {
                MessageBox.Show("¡Ocurrió un error! Contáctese con el administrador del sistema", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
예제 #2
0
파일: MenuDa.cs 프로젝트: RSEANCAS/pm
        public MenuBe ObtenerMenu(int codigoMenu, SqlConnection cn)
        {
            MenuBe item = null;

            try
            {
                using (SqlCommand cmd = new SqlCommand("dbo.usp_menu_obtener", cn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@codigoMenu", codigoMenu.GetNullable());

                    using (SqlDataReader dr = cmd.ExecuteReader())
                    {
                        if (dr.HasRows)
                        {
                            item = new MenuBe();

                            if (dr.Read())
                            {
                                item.CodigoMenu      = dr.GetData <int>("CodigoMenu");
                                item.Nombre          = dr.GetData <string>("Nombre");
                                item.Formulario      = dr.GetData <string>("Formulario");
                                item.CodigoMenuPadre = dr.GetData <int?>("CodigoMenuPadre");
                                item.FlagActivo      = dr.GetData <bool>("FlagActivo");
                            }
                        }
                    }
                }
            }
            catch (Exception ex) { log.Error(ex.Message); }

            return(item);
        }
예제 #3
0
파일: MenuDa.cs 프로젝트: RSEANCAS/pm
        public List <MenuBe> ListarComboMenuPadreMenu(int?codigoMenu, SqlConnection cn)
        {
            List <MenuBe> lista = null;

            try
            {
                using (SqlCommand cmd = new SqlCommand("dbo.usp_menu_listar_combo_menupadre", cn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@codigoMenu", codigoMenu.GetNullable());

                    using (SqlDataReader dr = cmd.ExecuteReader())
                    {
                        if (dr.HasRows)
                        {
                            lista = new List <MenuBe>();

                            while (dr.Read())
                            {
                                MenuBe item = new MenuBe();
                                item.CodigoMenu      = dr.GetData <int>("CodigoMenu");
                                item.Nombre          = dr.GetData <string>("Nombre");
                                item.Formulario      = dr.GetData <string>("Formulario");
                                item.CodigoMenuPadre = dr.GetData <int?>("CodigoMenuPadre");

                                lista.Add(item);
                            }
                        }
                    }
                }
            }
            catch (Exception ex) { log.Error(ex.Message); }

            return(lista);
        }
예제 #4
0
        void CargarMenu()
        {
            MenuBe item = menuBl.ObtenerMenu(codigoMenu.Value);

            txtNombre.Text     = item.Nombre;
            txtFormulario.Text = item.Formulario;
            if (item.CodigoMenuPadre.HasValue)
            {
                cbbCodigoMenuPadre.SelectedValue = item.CodigoMenuPadre;
            }
        }
예제 #5
0
        List <MenuBe> ObtenerListaMenuHijo(MenuBe menu, List <MenuBe> listaMenu)
        {
            List <MenuBe> listaMenuHijo = listaMenu.Where(x => x.CodigoMenuPadre == menu.CodigoMenu).ToList();

            if (listaMenuHijo != null)
            {
                foreach (MenuBe menuHijo in listaMenuHijo)
                {
                    menuHijo.ListaMenu = ObtenerListaMenuHijo(menuHijo, listaMenu);
                }
            }

            return(listaMenuHijo);
        }
예제 #6
0
파일: MenuDa.cs 프로젝트: RSEANCAS/pm
        public List <MenuBe> BuscarMenu(string nombre, string formulario, bool flagActivo, SqlConnection cn)
        {
            List <MenuBe> resultados = null;

            try
            {
                using (SqlCommand cmd = new SqlCommand("dbo.usp_menu_buscar", cn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@nombre", nombre.GetNullable());
                    cmd.Parameters.AddWithValue("@formulario", formulario.GetNullable());
                    cmd.Parameters.AddWithValue("@flagActivo", flagActivo.GetNullable());

                    using (SqlDataReader dr = cmd.ExecuteReader())
                    {
                        if (dr.HasRows)
                        {
                            resultados = new List <MenuBe>();

                            while (dr.Read())
                            {
                                MenuBe item = new MenuBe();
                                item.Fila            = dr.GetData <int>("Fila");
                                item.CodigoMenu      = dr.GetData <int>("CodigoMenu");
                                item.Nombre          = dr.GetData <string>("Nombre");
                                item.Formulario      = dr.GetData <string>("Formulario");
                                item.CodigoMenuPadre = dr.GetData <int?>("CodigoMenuPadre");
                                if (item.CodigoMenuPadre != null)
                                {
                                    item.MenuPadre            = new MenuBe();
                                    item.MenuPadre.CodigoMenu = dr.GetData <int>("CodigoMenuPadre");
                                    item.MenuPadre.Nombre     = dr.GetData <string>("NombreMenuPadre");
                                }
                                item.FlagActivo = dr.GetData <bool>("FlagActivo");

                                resultados.Add(item);
                            }
                        }
                    }
                }
            }
            catch (Exception ex) { log.Error(ex.Message); }

            return(resultados);
        }
예제 #7
0
        public bool CambiarFlagActivoMenu(MenuBe registro)
        {
            bool seGuardo = false;

            try
            {
                cn.Open();
                seGuardo = menuDa.CambiarFlagActivoMenu(registro, cn);
            }
            catch (Exception ex) { log.Error(ex.Message); }
            finally { if (cn.State == ConnectionState.Open)
                      {
                          cn.Close();
                      }
            }

            return(seGuardo);
        }
예제 #8
0
        public MenuBe ObtenerMenu(int codigoMenu)
        {
            MenuBe item = null;

            try
            {
                cn.Open();
                item = menuDa.ObtenerMenu(codigoMenu, cn);
            }
            catch (Exception ex) { log.Error(ex.Message); }
            finally { if (cn.State == ConnectionState.Open)
                      {
                          cn.Close();
                      }
            }

            return(item);
        }
예제 #9
0
파일: MenuDa.cs 프로젝트: RSEANCAS/pm
        public bool CambiarFlagActivoMenu(MenuBe registro, SqlConnection cn)
        {
            bool seGuardo = false;

            try
            {
                using (SqlCommand cmd = new SqlCommand("dbo.usp_menu_cambiar_flagactivo", cn))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@codigoMenu", registro.CodigoMenu.GetNullable());
                    cmd.Parameters.AddWithValue("@flagActivo", registro.FlagActivo.GetNullable());
                    cmd.Parameters.AddWithValue("@usuarioModi", registro.UsuarioModi.GetNullable());

                    int filasAfectadas = cmd.ExecuteNonQuery();

                    seGuardo = filasAfectadas > 0;
                }
            }
            catch (Exception ex) { log.Error(ex.Message); }

            return(seGuardo);
        }
예제 #10
0
        private void mitToggleActivar_Click(object sender, EventArgs e)
        {
            MenuItem mitControl = (MenuItem)sender;
            dynamic  data       = (object)mitControl.Tag;

            DialogResult dr = MessageBox.Show($"¿Estás seguro que deseas {(data.FlagActivo ? "Inactivar" : "Activar")} el registro?", "Confirmar", MessageBoxButtons.YesNo, MessageBoxIcon.Question);

            if (dr == DialogResult.Yes)
            {
                MenuBe registro = new MenuBe();
                registro.CodigoMenu = data.CodigoMenu;
                registro.FlagActivo = !data.FlagActivo;
                bool seGuardo = menuBl.CambiarFlagActivoMenu(registro);
                if (seGuardo)
                {
                    MessageBox.Show($"Se cambió el estado del registro a {(registro.FlagActivo ? "Activo" : "Inactivo")}", "¡Bien hecho!", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    BuscarMenues();
                }
                else
                {
                    MessageBox.Show("¡Ocurrió un error! Contáctese con el administrador del sistema", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
예제 #11
0
        List <MenuBe> ListarMenuesMarcados(TreeNode[] nodes)
        {
            List <MenuBe> lista = null;

            foreach (TreeNode node in nodes)
            {
                if (node.Checked)
                {
                    MenuBe item = new MenuBe {
                        CodigoMenu = (int)node.Tag
                    };
                    lista = lista ?? new List <MenuBe>();
                    lista.Add(item);
                    if (node.Nodes.Count > 0)
                    {
                        TreeNode[]    treeNodes = node.Nodes.Cast <TreeNode>().ToArray();
                        List <MenuBe> subLista  = ListarMenuesMarcados(treeNodes);
                        lista.AddRange(subLista);
                    }
                }
            }

            return(lista);
        }
예제 #12
0
        public override UsuarioBe ValidarUsuario(string u, string pw)
        {
            UsuarioBe usuario = null;

            using (SqlConnection conexion = new SqlConnection(_conexion))
            {
                try
                {
                    conexion.Open();
                    SqlCommand cmd = new SqlCommand("USP_USUARIO_VALIDACION", conexion);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.Add(new SqlParameter()
                    {
                        ParameterName = "@Loguin", SqlDbType = SqlDbType.VarChar, Value = (object)u ?? DBNull.Value, Direction = ParameterDirection.Input, IsNullable = false
                    });
                    cmd.Parameters.Add(new SqlParameter()
                    {
                        ParameterName = "@Clave", SqlDbType = SqlDbType.VarChar, Value = (object)pw ?? DBNull.Value, Direction = ParameterDirection.Input, IsNullable = false
                    });
                    SqlDataReader dr = cmd.ExecuteReader();
                    if (dr != null)
                    {
                        int pIdUsuario   = dr.GetOrdinal("IdUsuario");
                        int pLoguin      = dr.GetOrdinal("Loguin");
                        int pNombres     = dr.GetOrdinal("Nombres");
                        int pApellidos   = dr.GetOrdinal("Apellidos");
                        int pCorreo      = dr.GetOrdinal("Correo");
                        int pClave       = dr.GetOrdinal("Clave");
                        int pPerfilId    = dr.GetOrdinal("PerfilId");
                        int pPerfilStr   = dr.GetOrdinal("PerfilStr");
                        int pEmpresaId   = dr.GetOrdinal("EmpresaId");
                        int pRazonSocial = dr.GetOrdinal("RazonSocial");
                        int pRuc         = dr.GetOrdinal("Ruc");
                        if (dr.Read())
                        {
                            usuario             = new UsuarioBe();
                            usuario.IdUsuario   = dr.GetValueInt32(pIdUsuario);
                            usuario.Loguin      = dr.GetValueString(pLoguin);
                            usuario.Nombres     = dr.GetValueString(pNombres);
                            usuario.Apellidos   = dr.GetValueString(pApellidos);
                            usuario.Correo      = dr.GetValueString(pCorreo);
                            usuario.Clave       = dr.GetValueString(pClave);
                            usuario.PerfilId    = dr.GetValueInt32(pPerfilId);
                            usuario.PerfilStr   = dr.GetValueString(pPerfilStr);
                            usuario.EmpresaId   = dr.GetValueInt32(pEmpresaId);
                            usuario.RazonSocial = dr.GetValueString(pRazonSocial);
                            usuario.Ruc         = dr.GetValueString(pRuc);
                            if (dr.NextResult())
                            {
                                int           pMenuId    = dr.GetOrdinal("MenuId");
                                int           pNombre    = dr.GetOrdinal("Nombre");
                                int           pUrl       = dr.GetOrdinal("Url");
                                int           pOrden     = dr.GetOrdinal("Orden");
                                int           pPerfiles  = dr.GetOrdinal("Perfiles");
                                int           pMenuPadre = dr.GetOrdinal("MenuPadre");
                                MenuBe        menu       = null;
                                List <MenuBe> ListaMenu  = new List <MenuBe>();
                                while (dr.Read())
                                {
                                    menu           = new MenuBe();
                                    menu.MenuId    = dr.GetValueInt32(pMenuId);
                                    menu.Nombre    = dr.GetValueString(pNombre);
                                    menu.Url       = dr.GetValueString(pUrl);
                                    menu.Orden     = dr.GetValueInt16(pOrden);
                                    menu.Perfiles  = dr.GetValueString(pPerfiles);
                                    menu.MenuPadre = dr.GetValueInt32(pMenuPadre);
                                    ListaMenu.Add(menu);
                                }
                                usuario.ListMenus = ListaMenu;
                            }
                            dr.Close();
                        }
                    }
                    return(usuario);
                }
                catch (SqlException ex)
                {
                    Log.GrabarLog(ex.Message, ex.StackTrace);
                    throw ex;
                }
                catch (Exception ex1)
                {
                    Log.GrabarLog(ex1.Message, ex1.StackTrace);
                    throw ex1;
                }
            }
        }