public ActionResult AlterarRestaurante([FromBody] RestauranteAlteracaoCompleta restauranteAlteracaoCompleta) { var restaurante = _restauranteRepository.ObterPorId(restauranteAlteracaoCompleta.Id); if (restaurante == null) { return(NotFound()); } var cozinha = ECozinhaHelper.ConverterDeInteiro(restauranteAlteracaoCompleta.Cozinha); restaurante = new Restaurante(restauranteAlteracaoCompleta.Id, restauranteAlteracaoCompleta.Nome, cozinha); var endereco = new Endereco( restauranteAlteracaoCompleta.Logradouro, restauranteAlteracaoCompleta.Numero, restauranteAlteracaoCompleta.Cidade, restauranteAlteracaoCompleta.UF, restauranteAlteracaoCompleta.Cep); restaurante.AtribuirEndereco(endereco); if (!restaurante.Validar()) { return(BadRequest( new { errors = restaurante.ValidationResult.Errors.Select(_ => _.ErrorMessage) })); } if (!_restauranteRepository.AlterarCompleto(restaurante)) { return(BadRequest(new { errors = "Nenhum documento foi alterado" })); } return(Ok( new { data = "Restaurante alterado com sucesso" } )); }