/// <summary> /// Insere cliente no ERP /// </summary> /// <param name="token"></param> /// <param name="customer"></param> /// <returns></returns> public CustomerReturnAicBrasil InsertCustomerAsync(string token, CustomerInsertAicBrasil customer) { try { _logger.LogInformation("Insere cliente na base AicBrasil: Enviando requisição para a API"); var response = _aicBrasilApi.InsertCustomerAsync(token, customer).Result; if (!response.IsSuccessStatusCode) { var contentResult = response.Content.ReadAsStringAsync().Result; _logger.LogError($"Insere cliente na base AicBrasil: API retornou erro :( - {response.StatusCode}-{response.ReasonPhrase} -> {contentResult}"); if (((int)response.StatusCode) >= 400 && ((int)response.StatusCode) < 500) return null; } _logger.LogInformation("Insere cliente na base AicBrasil: API retornou sucesso :)"); var json = response.Content.ReadAsStringAsync().Result; return Task.Factory.StartNew(() => JsonConvert.DeserializeObject<CustomerReturnAicBrasil>(json)).Result; } catch (Exception) { _logger.LogError($"Insere cliente na base AicBrasil: API retornou erro :("); return null; } }
public async Task <HttpResponseMessage> InsertCustomerAsync(string token, CustomerInsertAicBrasil customer) { HttpClient _client = new HttpClient(); _client.BaseAddress = AppSettings.Apis.AicBrasilApi; _client.DefaultRequestHeaders.Accept.Clear(); _client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); return(await new HttpClientHelper(_client) .SetEndpoint($"api/customers") .AddHeader("Authorization", $"Bearer {token}") .WithContentSerialized(customer) .PostAsync()); }