protected void BtnUpdateFunxRol_Click(object sender, EventArgs e) { int id_rol = Convert.ToInt32(ddlRoles.SelectedValue.ToString()); List <Rol> listaRoles = RolLN.getInstance().listaRoles(Session["schema"].ToString()); List <Rol> listRolSeleccionado = listaRoles.Where(item => item.id == id_rol).ToList(); Rol rolSeleccionado = new Rol(); rolSeleccionado = listRolSeleccionado[0]; //recorro todos los items buscando si es igual a alguna de las funcionalidades entonces lo pongo true foreach (ListItem item in chListFuncionalidades.Items) { bool existeRelacion = false; foreach (Funcionalidad funcionalidad in rolSeleccionado.funcionalidades) { if ((funcionalidad.id.ToString() == item.Value.ToString()) && (!item.Selected)) { AdminLN.getInstance().deletefuncxrol(id_rol, funcionalidad.id, Session["schema"].ToString()); existeRelacion = true; } } if (!existeRelacion && item.Selected) { int id_funcionalidad = Convert.ToInt32(item.Value.ToString()); AdminLN.getInstance().updatefuncxrol(id_rol, id_funcionalidad, Session["schema"].ToString()); } } //recorro todos los items para saber cual esta seleccionado y lo guardo en una lista }
//funcion para setear los checkbox por rol según las funcionalidades que tenga protected void setFuncxRol() { //desselecciono todos los items foreach (ListItem item in chListFuncionalidades.Items) { item.Selected = false; } //busco las funcionalidades x rol int id_rol = Convert.ToInt32(ddlRoles.SelectedValue.ToString()); List <Rol> listaRoles = RolLN.getInstance().listaRoles(Session["schema"].ToString()); List <Rol> listRolSeleccionado = listaRoles.Where(item => item.id == id_rol).ToList(); Rol rolSeleccionado = new Rol(); rolSeleccionado = listRolSeleccionado[0]; //recorro todos los items buscando si es igual a alguna de las funcionalidades entonces lo pongo true foreach (ListItem item in chListFuncionalidades.Items) { foreach (Funcionalidad funcionalidad in rolSeleccionado.funcionalidades) { if (funcionalidad.id.ToString() == item.Value.ToString()) { item.Selected = true; break; } else { item.Selected = false; } } } }
protected void BindData() { List <Rol> listaUsuarios = RolLN.getInstance().listaRoles(Session["schema"].ToString()); gridRoles.DataSource = listaUsuarios; gridRoles.DataBind(); }
protected void BtnDeleteRol_Click(object sender, EventArgs e) { int count = 0; foreach (GridViewRow row in gridRoles.Rows) { CheckBox chk = (CheckBox)row.FindControl("chkDelete"); if (chk.Checked) { TextBox txtIdRol = (TextBox)row.FindControl("txtIdRol"); TextBox txtNombreRol = (TextBox)row.FindControl("txtNombre"); int idRol = Convert.ToInt32(txtIdRol.Text.Trim()); bool eliminados = RolLN.getInstance().eliminarRol(idRol, Session["schema"].ToString()); if (!eliminados) { Response.Write(@"<script language='javascript'>alert('Error al eliminar el rol ');</script>"); } else { count = count + 1; } } } Response.Write(@"<script language='javascript'>alert('Eliminados: " + count + " .');</script>"); Response.Redirect(Request.Url.AbsoluteUri); }
protected void BtnAddRol_Click(object sender, EventArgs e) { string retorno = RolLN.getInstance().nuevoRol(txtNombreRol.Text.Trim(), Session["schema"].ToString()); txtNombreRol.Text = ""; Response.Write(@"<script language='javascript'>alert('" + retorno + " .');</script>"); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { TienePermiso(); List <Rol> listaRoles = RolLN.getInstance().listaRoles(Session["schema"].ToString()); foreach (Rol rol in listaRoles) { ListItem newItem = new ListItem(rol.nombre, rol.id.ToString(), true); ddlRoles.Items.Add(newItem); } } }
//Cargar el DropDownList de Roles en modo edición protected void gridUsuarios_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow && gridUsuarios.EditIndex == e.Row.RowIndex) { DropDownList ddlRoles = (DropDownList)e.Row.FindControl("ddlEditRol"); List <Rol> listaRoles = RolLN.getInstance().listaRoles(Session["schema"].ToString()); foreach (Rol rol in listaRoles) { ListItem newItem = new ListItem(rol.nombre, rol.id.ToString(), true); ddlRoles.Items.Add(newItem); } ddlRoles.DataBind(); ddlRoles.Items.FindByValue((e.Row.FindControl("lblRol") as Label).Text).Selected = true; } }
//Aceptar actualizar datos protected void gridRoles_RowUpdating(object sender, GridViewUpdateEventArgs e) { GridViewRow row = gridRoles.Rows[e.RowIndex]; TextBox txtIdRol = (TextBox)row.FindControl("txtEditIdRol"); TextBox txtNombreRol = (TextBox)row.FindControl("txtEditNombre"); int idRol = Convert.ToInt32(txtIdRol.Text.Trim()); string nombreRol = txtNombreRol.Text.Trim(); bool retorno = RolLN.getInstance().updateRol(idRol, nombreRol, Session["schema"].ToString()); if (retorno) { Response.Write(@"<script language='javascript'>alert('Rol actualizado correctamente.');</script>"); Response.Redirect(Request.Url.AbsoluteUri); } else { Response.Write(@"<script language='javascript'>alert('El Rol ya existe.');</script>"); Response.Redirect(Request.Url.AbsoluteUri); } }