internal List <Funcionalidad> obtenerTodasLasFuncionalidadesDelRol(int id)
        {
            FuncionalidadManager fm          = new FuncionalidadManager();
            List <Funcionalidad> funcsDelRol = fm.obtenerFuncionalidadesRol(id);

            return(funcsDelRol);
        }
        internal List <Funcionalidad> obtenerTodasLasFuncionalidades()
        {
            FuncionalidadManager fm = new FuncionalidadManager();
            List <Funcionalidad> todasLasFuncionalidades = fm.getTodasLasFuncionalidades();

            return(todasLasFuncionalidades);
        }
        internal void modificarRol(Rol rol, List <Funcionalidad> funcionalidadesAsignadas)
        {
            try
            {
                FuncionalidadManager fm         = new FuncionalidadManager();
                ParametroParaSP      parametro1 = new ParametroParaSP("rol_id", SqlDbType.SmallInt, rol.id);
                ParametroParaSP      parametro2 = new ParametroParaSP("nombre", SqlDbType.VarChar, rol.nombre);

                List <ParametroParaSP> parametros = new List <ParametroParaSP>();
                parametros.Add(parametro1);
                parametros.Add(parametro2);

                this.openDB();

                SqlCommand procedure = this.createCallableProcedure("BETTER_CALL_JUAN.Procedure_Modificar_Rol", parametros);
                procedure.ExecuteNonQuery();

                fm.modificarFuncionalidadesDeRol(rol, funcionalidadesAsignadas);
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Error",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                this.closeDB();
            }
        }
        internal List <Funcionalidad> obtenerTodasLasFuncionalidades()
        {
            FuncionalidadManager funcManager     = new FuncionalidadManager();
            List <Funcionalidad> funcionalidades = funcManager.getTodasLasFuncionalidades();

            return(funcionalidades);
        }
        internal void crearRol(Rol rol, List <Funcionalidad> funcionalidadesAsignadas)
        {
            try
            {
                FuncionalidadManager fm         = new FuncionalidadManager();
                ParametroParaSP      parametro1 = new ParametroParaSP("nombre", SqlDbType.VarChar, rol.nombre);
                ParametroParaSP      parametro2 = new ParametroParaSP("retorno", SqlDbType.SmallInt);

                List <ParametroParaSP> parametros = new List <ParametroParaSP>();
                parametros.Add(parametro1);
                parametros.Add(parametro2);

                this.openDB();

                SqlCommand procedure = this.createCallableProcedure("BETTER_CALL_JUAN.Procedure_Crear_Rol", parametros);
                procedure.ExecuteNonQuery();

                int ok = Convert.ToInt32(procedure.Parameters["@retorno"].Value);
                if (ok == 1)
                {
                    fm.agregarFuncionalidadesAlRol(rol, funcionalidadesAsignadas);
                }
                else
                {
                    AltaRol ar = new AltaRol();
                    ar.ShowErrorDialog("Ya existe el rol ingresado en el sistema");
                }
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Error",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                this.closeDB();
            }
        }