public Boolean TienePermisos(int ValidarPermiso) { Boolean tiene = false; if (isValid) { try { var ctx = new DataModel(); //permisonegado pNegado = usuario.niveles.permisosnegados.Where(r => r.permisos.idpermiso == ValidarPermiso).FirstOrDefault(); permisonegado pNegados = ctx.permisosnegados.Where(r => r.permisos.idpermiso == ValidarPermiso && r.niveles.idnivel == this.usuario.niveles.idnivel && r.status == true).FirstOrDefault(); if (pNegados == null) { tiene = true; } return(tiene); } catch (Exception) { throw; } } else { return(tiene); } }
public static void savePermisos(permisonegado datos, int idnivel, int idpermiso) { try { var ctx = new DataModel(); nivel nvl = ctx.niveles.Where(r => r.idnivel == idnivel).FirstOrDefault(); ctx.niveles.Attach(nvl); datos.niveles = nvl; permiso perm = ctx.permisos.Where(r => r.idpermiso == idpermiso).FirstOrDefault(); ctx.permisos.Attach(perm); datos.permisos = perm; if (datos.idpermisonegadonivel > 0) //Realiza una actualizacion { ctx.Entry(datos).State = EntityState.Modified; } else { // Agregar ctx.Entry(datos).State = EntityState.Added; } ctx.SaveChanges(); } catch (Exception) { throw; } }
private void btnBloquear_Click(object sender, EventArgs e) { int permiso = int.Parse(cboPermisos.SelectedValue.ToString()); if (idniveles > 0) { var permisosnegados = new permisonegado(); clsPermisosnegados.savePermisos(permisosnegados, idniveles, permiso); this.Close(); } else { errorProvider1.Clear(); errorProvider1.SetError(dgvNiveles, "seleccione un nivel de la lista"); } }