Esempio n. 1
0
        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));
            }
        }
Esempio n. 2
0
        public async Task <Usuario> AdicionarEnderecoAsync(Endereco endereco, string email)
        {
            var usuario = await ObterPorEmailAsync(email);

            usuario.Endereco = endereco;
            return(await Repositorio.AtualizarAsync(usuario));
        }