Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        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);
            }
        }