コード例 #1
0
        public ActionResult Editar(int id)
        {
            Usuario usuario = Uow.Usuarios.Obtener(u => u.UsuarioId == id, u => u.Roles,
                                                   u => u.UsuarioProveedores, u => u.UsuarioProveedores.Select(m => m.Proveedor));
            var model = new UsuarioConPasswordOpcionalModel()
            {
                Usuario = usuario,
                RoleId  = usuario.Roles.FirstOrDefault().RoleId
            };

            LlenarControles(model);
            return(PartialView(model));
        }
コード例 #2
0
        public ActionResult Editar(UsuarioConPasswordOpcionalModel model)
        {
            if (!ModelState.IsValid)
            {
                LlenarControles(model);
                return(PartialView(model));
            }

            if (!string.IsNullOrEmpty(model.Password))
            {
                var encondedPassword = Crypto.HashPassword(model.Password);
                Uow.Usuarios.CambiarPassword(model.Usuario.UsuarioId, encondedPassword, DateTime.Now);
            }

            model.Usuario.Desincronizado = true;
            Uow.Usuarios.Modificar(model.Usuario);
            Uow.Commit();

            if (model.ProveedoresIds != null)
            {
                model.Usuario.UsuarioProveedores = model.ProveedoresIds.Select(p =>
                                                                               new UsuarioProveedor
                {
                    ProveedorId = p,
                    UsuarioId   = model.Usuario.UsuarioId
                }).ToList();
            }

            Uow.Usuarios.InsertarDependencias(model.Usuario, model.RoleId);



            return(new JsonResult()
            {
                Data = new { exito = true }, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }