public async Task <IActionResult> PatchUsuario(int id, [FromBody] JsonPatchDocument <UsuarioInsertModel> pathUsuarioModelo) { try { NewLog(nameof(PatchUsuario), 0, $"Id: {id}"); var usuario = await _repositorio.GetUsuarioByIdAsync(id); if (usuario != null) { NewLog(nameof(PatchUsuario), 4, $"Id: {id}"); var usuarioModelo = _mapper.Map <UsuarioInsertModel>(usuario); pathUsuarioModelo.ApplyTo(usuarioModelo); usuario = _mapper.Map(usuarioModelo, usuario); NewLog(nameof(PatchUsuario), 3, $"Id: {id} iniciando atualizar repositorio"); if (await _repositorio.AtualizarAsync(usuario)) { NewLog(nameof(PatchUsuario), 1, $"Id: {id}"); return(NoContent()); } NewLog(nameof(PatchUsuario), 2, $"Id: {id} metodo atualizar repositorio retornou false"); return(BadRequest()); } NewLog(nameof(PatchUsuario), 2, $"Id: {id} nao identificado"); return(NotFound()); } catch (Exception ex) { return(ErrorException(ex, nameof(PatchUsuario), id)); } }
public async Task <Usuario> AdicionarEnderecoAsync(Endereco endereco, string email) { var usuario = await ObterPorEmailAsync(email); usuario.Endereco = endereco; return(await Repositorio.AtualizarAsync(usuario)); }