public void CambiarHabilitacionRol(Rol Rol)
        {
            var query = String.Format(@"UPDATE NINIRODIE.ROL SET ROL_HABILITADO = '{0}' " +
                "WHERE ROL_CODIGO = '{1}'", Rol.Habilitado, Rol.Id);

            SQLUtils.EjecutarConsultaConEfectoDeLado(query);
        }
        public virtual void AgregarRol(Rol NuevoRol)
        {
            var query = String.Format(@"INSERT INTO NINIRODIE.ROL (ROL_DESCRIPCION, ROL_HABILITADO) " +
                "VALUES ('{0}', '{1}')", NuevoRol.NombreRol, NuevoRol.Habilitado ? 1 : 0);

            SQLUtils.EjecutarConsultaConEfectoDeLado(query);
        }
        public virtual void ModificarRol(Rol RolModificado)
        {
            var query = String.Format(@"UPDATE NINIRODIE.ROL SET ROL_HABILITADO = '{0}', " +
                "ROL_DESCRIPCION = '{1}' WHERE ROL_CODIGO = '{2}'",
                RolModificado.Habilitado, RolModificado.NombreRol, RolModificado.Id);

            SQLUtils.EjecutarConsultaConEfectoDeLado(query);
        }
        public virtual bool EstaElRol(Rol RolId)
        {
            var query = String.Format(@"SELECT * FROM NINIRODIE.ROL WHERE ROL_CODIGO = '{0}'",RolId.Id);

            DataRowCollection dataRows = SQLUtils.EjecutarConsultaSimple(query, "NINIRODIE.ROL");

            return dataRows.Count != 0;
        }
        public List<Funcionalidad> FuncionalidadesDeRol(Rol rol)
        {
            var query = String.Format(@"SELECT FUN_CODIGO, FUN_DESCRIPCION FROM NINIRODIE.FUNCION, " +
                "NINIRODIE.FUNCION_ROL WHERE FUNROL_ROL = '{0}' AND FUNROL_FUNCION = FUN_CODIGO", rol.Id);

            DataRowCollection dataRows = SQLUtils.EjecutarConsultaSimple(query, "NINIRODIE.FUNCION");

            return ConvertirAFuncionalidades(dataRows);
        }
        public List<Funcionalidad> FuncionalidadesDisponiblesPara(Rol rol)
        {
            var query = String.Format(@"SELECT * FROM NINIRODIE.FUNCION WHERE " +
                "FUN_CODIGO NOT IN (SELECT FUNROL_FUNCION FROM NINIRODIE.FUNCION_ROL " +
                "WHERE FUNROL_ROL = '{0}' GROUP BY FUNROL_FUNCION)", rol.Id);

            DataRowCollection dataRows = SQLUtils.EjecutarConsultaSimple(query,"NINIRODIE.FUNCION");

            return ConvertirAFuncionalidades(dataRows);
        }
        public virtual Rol BuscarRol(Rol RolBuscado)
        {
            var query = String.Format(@"SELECT * FROM NINIRODIE.ROL WHERE ROL_CODIGO = '{0}'", RolBuscado.Id);

            DataRowCollection dataRows = SQLUtils.EjecutarConsultaSimple(query, "NINIRODIE.ROL");

            if (dataRows.Count == 0) return null;

            return this.NuevoRol(dataRows[0]);
        }
 public RolWindow(Rol rol, ModoApertura modo)
     : this()
 {
     this.Rol = rol;
     this.ObtenerFuncionalidadesDelRol();
     this.PopularListas();
     this.textNombre.Text = this.Rol.NombreRol;
     this.checkHabilitar.Checked = this.Rol.Habilitado;
     this.ModoApertura = modo;
     ControlarControlesAHabilitar();
 }
        public virtual void AgregarFuncionalidades(Rol rol)
        {
            foreach(Funcionalidad funcion in rol.Funcionalidades)
            {
                var query = String.Format(@"IF NOT EXISTS (SELECT FUNROL_ROL, FUNROL_FUNCION " +
                    "FROM NINIRODIE.FUNCION_ROL WHERE FUNROL_ROL = '{0}' AND " +
                    "FUNROL_FUNCION = '{1}') INSERT INTO NINIRODIE.FUNCION_ROL (FUNROL_ROL, FUNROL_FUNCION) " +
                    "VALUES ('{0}', '{1}')", rol.Id, funcion.ToString("D"));

                SQLUtils.EjecutarConsultaConEfectoDeLado(query);
            }
        }
        public virtual void RemoverFuncionalidades(Rol rol, List<Funcionalidad> funcionesAEliminar)
        {
            foreach (Funcionalidad funcion in funcionesAEliminar)
            {
                var query = String.Format(@"DELETE FROM NINIRODIE.FUNCION_ROL " +
                    "WHERE FUNROL_ROL = '{0}' AND FUNROL_FUNCION = '{1}'", rol.Id, funcion.ToString("D"));

                SQLUtils.EjecutarConsultaConEfectoDeLado(query);
            }
        }
 public virtual void ModificarFuncionalidades(Rol rol, List<Funcionalidad> funcionalidadesAEliminar)
 {
     this.AgregarFuncionalidades(rol);
     this.RemoverFuncionalidades(rol, funcionalidadesAEliminar);
 }
 void botonEditar_Click(object sender, EventArgs e)
 {
     this.RolSeleccionado = (Rol)this.grillaRoles.CurrentRow.DataBoundItem;
     new RolWindow(this.RolSeleccionado, ModoApertura.MODIFICACION).ShowDialog(this);
     this.PopularGrilla();
 }
 private void botonBaja_Click(object sender, EventArgs e)
 {
     this.RolSeleccionado = (Rol)this.grillaRoles.CurrentRow.DataBoundItem;
     new RolWindow(this.RolSeleccionado, ModoApertura.BAJA).ShowDialog(this);
     this.PopularGrilla();
 }