protected void GridView1_RowUpdating(Object sender, GridViewUpdateEventArgs e) { //ver desde aca BE.PermisoFiltro pFiltro = new BE.PermisoFiltro(); pFiltro.Nombre = (e.Keys[0].ToString()); BE.PermisoBase miPermiso = _gestorPermiso.leer_UnPermiso(pFiltro); if (e.NewValues[0] == null || e.NewValues[1] == null) { lblInfo.Text = Traductor.Mensaje("ERR141", SesionActualWindows.SesionActual().ObtenerUsuarioActual().Cultura.ToString()); } else { //DMS if (!miPermiso.esAccion) { BE.PermisoCompuesto nuevoPermiso = miPermiso as BE.PermisoCompuesto; nuevoPermiso.listaHijos.Clear(); for (int i = 0; i <= (GridView2.Rows.Count - 1); i++) { CheckBox chkSeleccionar = GridView2.Rows[i].FindControl("chkSeleccionar") as CheckBox; if (chkSeleccionar.Checked) { BE.PermisoBase pBase = new BE.PermisoSimple(); pBase.Nombre = GridView2.Rows[i].Cells[1].Text.ToString(); pBase.Descripcion = GridView2.Rows[i].Cells[2].Text.ToString(); CheckBox accion = GridView2.Rows[i].Cells[3].Controls[0] as CheckBox; pBase.esAccion = accion.Checked; nuevoPermiso.listaHijos.Add(pBase); } } miPermiso = nuevoPermiso; } miPermiso.Descripcion = e.NewValues[0].ToString(); CheckBox accionPermiso = GridView1.Rows[e.RowIndex].Cells[4].Controls[0] as CheckBox; miPermiso.esAccion = accionPermiso.Checked; _gestorPermiso.escribir_permiso(miPermiso); GridView1.EditIndex = -1; LimpiarCampos(); lblMensaje.Text = Traductor.Mensaje("ERR156", SesionActualWindows.SesionActual().ObtenerUsuarioActual().Cultura.ToString()); LlenarTabla(); phListaHijos.Visible = false; } }
protected void LlenarListas(BE.PermisoBase excluirPermiso) { if (excluirPermiso == null) { lblInfo.Text = "ERROR"; } else { foreach (GridViewRow fila in GridView2.Rows) { ((CheckBox)fila.FindControl("chkSeleccionar")).Checked = false; } GestorPermisoCompuesto _gestorPermisoCompuesto = new GestorPermisoCompuesto(); List <BE.PermisoBase> listaPermisos = _gestorPermiso.leer_permiso(); foreach (BE.PermisoBase permi in listaPermisos) { if (permi.Nombre != excluirPermiso.Nombre) { if (!excluirPermiso.esAccion) { BE.PermisoFiltro _permisoFiltro = new BE.PermisoFiltro(); _permisoFiltro.Nombre = excluirPermiso.Nombre; BE.PermisoBase UnPermiso = _gestorPermiso.leer_UnPermiso(_permisoFiltro); BE.PermisoCompuesto PermisoHijo = UnPermiso as BE.PermisoCompuesto; foreach (BE.PermisoBase pH in PermisoHijo.listaHijos) { foreach (GridViewRow fila in GridView2.Rows) { if (fila.Cells[1].Text == pH.Nombre) { CheckBox chkPrueba = fila.FindControl("chkSeleccionar") as CheckBox; ((CheckBox)fila.FindControl("chkSeleccionar")).Checked = true; CheckBox chkElim = fila.FindControl("chkSeleccionar") as CheckBox; } } } } } } } }
protected void GridView1_RowEditing(Object sender, GridViewEditEventArgs e) { GridView1.EditIndex = e.NewEditIndex; string nombre = GridView1.Rows[e.NewEditIndex].Cells[2].Text.ToString(); BE.PermisoFiltro filtro = new BE.PermisoFiltro(); filtro.Nombre = nombre; BE.PermisoBase entidad = _gestorPermiso.leer_UnPermiso(filtro); if (entidad.esAccion) { phListaHijos.Visible = false; } else { phListaHijos.Visible = true; LlenarListas(entidad); } LlenarTablaPermisos(); lblInfo.Text = ""; }
protected void MostrarPermisos(string pFiltro) { BE.PermisoFiltro filtro = new BE.PermisoFiltro(); filtro.Nombre = pFiltro; BE.PermisoBase entidad = _gestorPermiso.leer_UnPermiso(filtro); phListaPermisos.Visible = true; if (entidad.esAccion) { GridView2.DataSource = null; GridView2.AutoGenerateColumns = false; GridView2.DataSource = _gestorPermiso.leer_permiso(filtro); GridView2.DataBind(); } else { GridView2.DataSource = null; GridView2.AutoGenerateColumns = false; GridView2.DataSource = _gestorPermiso.leer_permiso(); GridView2.DataBind(); LlenarListaPermiso(entidad); } }