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 btnGuardar_Click(object sender, EventArgs e) { if (!String.IsNullOrEmpty(txtNombre.Text) && !String.IsNullOrEmpty(txtDescripcion.Text)) { try { BE.PermisoBase entidad; if (chkesAccion.Checked) { entidad = new BE.PermisoSimple(); } else { entidad = new BE.PermisoCompuesto(); } entidad.Nombre = txtNombre.Text; entidad.Descripcion = txtDescripcion.Text; entidad.esAccion = chkesAccion.Checked; if (!entidad.esAccion) { BE.PermisoCompuesto nuevoPermiso = entidad as BE.PermisoCompuesto; for (int i = 0; i <= (GridView2.Rows.Count - 1); i++) { CheckBox chkElim = GridView2.Rows[i].FindControl("chkSeleccionar") as CheckBox; if (chkElim.Checked) { BE.PermisoBase pBase = new BE.PermisoSimple(); pBase.Nombre = GridView2.Rows[i].Cells[1].ToString(); pBase.Nombre = GridView2.Rows[i].Cells[1].Text.ToString(); pBase.Descripcion = GridView2.Rows[i].Cells[2].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); } } entidad = nuevoPermiso; } if (_gestorPermiso.escribir_permiso(entidad)) { LimpiarCampos(); LlenarTabla(); lblMensaje.Text = Traductor.Mensaje("ERR152", SesionActualWindows.SesionActual().ObtenerUsuarioActual().Cultura.ToString()); //_gestorIntegridad.recalcular_t_Permisos("corregir"); //_gestorIntegridad.recalcular_t_PermisoPermiso("corregir"); //_gestorIntegridad.recalcularDVV(); } else { lblMensaje.Text = Traductor.Mensaje("ERR153", SesionActualWindows.SesionActual().ObtenerUsuarioActual().Cultura.ToString()); } } catch (SeguridadException ex) { lblMensaje.Text = Traductor.TraducirMensage(ex.CodigError, ex.Message); } catch (Exception ex) { lblMensaje.Text = ex.Message; } } else { lblInfo.Text = Traductor.Mensaje("ERR141", SesionActualWindows.SesionActual().ObtenerUsuarioActual().Cultura.ToString()); } }