public async Task <AlterarStatusParceiroResponse> AlterarStatusParceiro(AlterarStatusParceiroRequest request) { var handler = new HttpClientHandler(); //handler.ClientCertificates.Add(CertificadoRequisicao.Obter(this._dadosBhn.Certificado)); using (var httpClient = new HttpClient(handler)) { var alterarStatusParceiroUrl = this._dadosLoja.RotaAlterarStatusParceiro; httpClient.BaseAddress = new Uri(this._dadosLoja.ApiLojaAddressHost); httpClient.DefaultRequestHeaders.Accept.Clear(); var alterarStatusParceiroRequest = new HttpRequestMessage(HttpMethod.Put, httpClient.BaseAddress + alterarStatusParceiroUrl); using (var content = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json")) { alterarStatusParceiroRequest.Content = content; var alterarStatusParceiroResponse = await httpClient.SendAsync(alterarStatusParceiroRequest); var responseString = await alterarStatusParceiroResponse.Content.ReadAsStringAsync(); var responseObject = JsonConvert.DeserializeObject <AlterarStatusParceiroResponse>(responseString); return(responseObject); } } }
public async Task <AlterarStatusParceiroResponse> AlterarStatusParceiro(AlterarStatusParceiroRequest request) { var response = new AlterarStatusParceiroResponse(); var validationResult = request.Validate(); if (!validationResult.IsValid) { response.Valido = false; foreach (var failure in validationResult.Errors) { response.AdicionarMensagemErro(TipoMensagem.Validacao, failure.ErrorMessage); } return(response); } try { var compraParceiro = request.CompraParceiro.MapStatus(); string correlationId = System.Guid.NewGuid().ToString(); var result = await compraParceiro.AlterarStatusParceiro(correlationId); if (!result.Valido) { response.Valido = false; response.AdicionarMensagemErro(TipoMensagem.ErroNegocio, "Alterar Status Parceiro não foi realizado."); } else { response.Valido = true; } } catch (ApplicationException appEx) { response.Valido = false; response.AdicionarMensagemErro(TipoMensagem.ErroNegocio, appEx.Message); } catch (Exception ex) { response.Valido = false; response.AdicionarMensagemErro(TipoMensagem.ErroAplicacao, ex.StackTrace); } return(response); }
public async Task <ActionResult> Put([FromBody] AlterarStatusParceiroRequest request) { var response = await _service.AlterarStatusParceiro(request); return(this.GetHttpResponse(response)); }