/// <summary> /// Atualiza uma marca /// </summary> /// <param name="token">token</param> /// <param name="brand">objeto do tipo marca</param> /// <param name="id">id da marca</param> /// <returns></returns> public BrandDetail UpdateBrand(string token, BrandUpdate brand, string id) { try { _logger.LogInformation("Altera uma marca: Enviando requisição para a API"); var response = _brandApi.UpdateBrand(token, brand, id).Result; if (!response.IsSuccessStatusCode) { var contentResult = response.Content.ReadAsStringAsync(); _logger.LogError($"Altera uma marca: API retornou erro :( - {response.StatusCode}-{response.ReasonPhrase} -> {contentResult}"); if (((int)response.StatusCode) >= 400 && ((int)response.StatusCode) < 500) { return(null); } } _logger.LogInformation("Altera uma marca: API retornou sucesso :)"); var json = response.Content.ReadAsStringAsync().Result; return(Task.Factory.StartNew(() => JsonConvert.DeserializeObject <BrandDetail>(json)).Result); } catch (Exception) { _logger.LogError($"Altera uma marca: API retornou erro :("); return(null); } }
/// <summary> /// Atualiza uma marca /// </summary> /// <param name="token">token</param> /// <param name="brand">objeto do tipo marca</param> /// <param name="id">id da marca</param> /// <returns></returns>ret public async Task <HttpResponseMessage> UpdateBrand(string token, BrandUpdate brand, string id) { _client = new HttpClient(); _client.BaseAddress = AppSettings.Apis.BrandApi; _client.DefaultRequestHeaders.Accept.Clear(); _client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); return(await new HttpClientHelper(_client) .SetEndpoint($"brands/{id}") .AddHeader("Authorization", $"Bearer {token}") .WithContentSerialized(brand) .PutAsync()); }