Пример #1
0
 public IActionResult Update([FromBody] UsuarioUpdate model, [FromServices] IUsuarioRepository repository)
 {
     if (!ModelState.IsValid)
     {
         return(BadRequest());
     }
     repository.Update(new Guid(User.Identity.Name), model);
     return(Ok());
 }
Пример #2
0
        public void Update(Guid id, UsuarioUpdate e)
        {
            var _usuario = _context.Usuarios.Find(id);

            _usuario.Nome           = e.Nome;
            _usuario.DataNascimento = e.DataNascimento;
            _usuario.TelefoneFixo   = e.TelefoneFixo;
            _usuario.TelefoneMovel  = e.TelefoneMovel;
            if (e.Senha != null && e.Senha != "")
            {
                _usuario.Senha = e.Senha;
            }
            _context.Entry(_usuario).State = EntityState.Modified;
            _context.SaveChanges();
        }
        public async Task <IActionResult> Edit(int id, [Bind("UsuarioId,Nombre,Apellido,Email,FechaRegistro")] UsuarioUpdate usuarioUpdate, string password, int[] rol)
        {
            if (id != usuarioUpdate.UsuarioId)
            {
                return(NotFound());
            }

            var usuario = await _context.Usuarios.FindAsync(id);

            usuario.Nombre        = usuarioUpdate.Nombre;
            usuario.Apellido      = usuarioUpdate.Apellido;
            usuario.Email         = usuarioUpdate.Email;
            usuario.FechaRegistro = usuarioUpdate.FechaRegistro;
            if (!String.IsNullOrEmpty(password))
            {
                usuario.Password = password;
            }

            usuarioUpdate.UsuarioRoles = new List <UsuarioRol>();
            foreach (int r in rol)
            {
                var usuarioRol = new UsuarioRol {
                    RolId = r, UsuarioId = id
                };
                usuarioUpdate.UsuarioRoles.Add(usuarioRol);
            }

            if (ModelState.IsValid)
            {
                try
                {
                    var usuarioRoles = _context.UsuarioRoles.Where(ur => ur.UsuarioId == id);
                    foreach (var ur in usuarioRoles)
                    {
                        _context.Remove(ur);
                    }
                    await _context.SaveChangesAsync();

                    foreach (int r in rol)
                    {
                        var usuarioRol = new UsuarioRol {
                            RolId = r, UsuarioId = id
                        };
                        _context.Add(usuarioRol);
                    }

                    _context.Update(usuario);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UsuarioExists(usuario.UsuarioId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }

            ViewBag.roles = await _context.Roles.ToListAsync();

            return(View(usuarioUpdate));
        }