protected void btnguardar_Click(object sender, EventArgs e) { ScriptManager.RegisterStartupScript(this, GetType(), "ob1", "bloq();", true); Model.Usuarios usuario = new Model.Usuarios(); try { usuario.Nombres = texbNombre.Text.ToUpper(); usuario.ApPaterno = texbPaterno.Text.ToUpper(); usuario.ApMaterno = texbMaterno.Text.ToUpper(); usuario.NombreUsuario = texbClaveUsuario.Text; string pwd = texbCorreo.Text; //byte[] array = Encoding.ASCII.GetBytes(pwd); //usuario.Contraseña = array; usuario.Contraseña = pwd; usuario.RolId = int.Parse(ddlRol.SelectedValue.ToString()); usuario.Activo = chebActivo.Checked; uw.UsuariosRepository.AddSingle(usuario); uw.Save(); hfidusuario.Value = usuario.ID.ToString(); Model.MenuUsuario Area_Usuario = new Model.MenuUsuario(); Area_Usuario.IdUsuario = int.Parse(hfidusuario.Value); int iduser = Area_Usuario.IdUsuario != null?Convert.ToInt32(Area_Usuario.IdUsuario) : 0; bool respuesta = agregandopermisos(iduser); if (respuesta == true) { ScriptManager.RegisterStartupScript(this, GetType(), "ob1", "desbloquear();", true); LlenarUsuarios(); } else { ScriptManager.RegisterStartupScript(this, GetType(), "ob1", "desbloquear();", true); Model.Usuarios delUser = uw.UsuariosRepository.GetBy(x => x.ID == iduser).SingleOrDefault(); uw.UsuariosRepository.Delete(delUser); LlenarUsuarios(); ScriptManager.RegisterStartupScript(this, GetType(), "ob1", "alert('Agregue permisos a las áreas.');", true); } } catch (Exception ex) { //ind.Delete(usuario); pendiente ScriptManager.RegisterStartupScript(this, GetType(), "ob1", "alertify.error('¡No se pudo guardar la información!');", true); _Log.Error("[ System ] " + " [ Page ] " + "[ Areas ] [ btnguardar_Click ] [ Fin ]", ex); } }
public bool agregandopermisos(int usuarioid) { try { var listmenus = uw.MenuUsuarioRepository.GetBy(x => x.IdUsuario == usuarioid); uw.MenuUsuarioRepository.RemoveAll(listmenus); uw.Save(); var areastotales = uw.MenuUsuarioRepository.Get(); JavaScriptSerializer jss = new JavaScriptSerializer(); List <Regreso> nueva = jss.Deserialize <List <Regreso> >(hfnodosseleccionados.Value); Model.MenuUsuario areasusuarios = new Model.MenuUsuario(); foreach (Regreso re in nueva) { if (re.state.selected == "True") { int reid = int.Parse(re.id); var areasuser = uw.MenuUsuarioRepository.GetBy(x => x.IdUsuario == usuarioid && x.IdMenu == reid); if (areasuser.Count == 0) { areasusuarios.IdUsuario = usuarioid; areasusuarios.IdMenu = int.Parse(re.id); uw.MenuUsuarioRepository.AddSingle(areasusuarios); uw.Save(); } for (var i = 0; i < re.parents.Length; i++) { string valor = re.parents[i]; if (valor != "#") { int vid = int.Parse(valor); var areasuser2 = uw.MenuUsuarioRepository.GetBy(x => x.IdUsuario == usuarioid && x.IdMenu == vid); if (areasuser2.Count == 0) { areasusuarios.IdUsuario = usuarioid; areasusuarios.IdMenu = int.Parse(valor); uw.MenuUsuarioRepository.AddSingle(areasusuarios); uw.Save(); } } } } } if (nueva.Count != 0) { return(true); } else { return(false); } } catch (Exception e) { return(false); _Log.Error("[ System ] " + " [ Page ] " + "[ AgregarUusarios ] [ agregandopermisos ] [ Fin ]", e); } }