public async Task GetCustomer(GetCustomerDetailByEmailQuery query) { try { _httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", await _authHandler.GetAuthAccessToken()); var response = await _httpClient.GetFromJsonAsync <GetCustomerDetailByEmailQueryResult>($"api/Customers?email={query.Email}"); if (response.Payload != null) { _apiCallResultSubject.OnNext(new ApiCallResult <string>() { IsSucceed = true, Operation = "GetStripeCustomerByEmail", Payload = response.Payload }); } else { _apiCallResultSubject.OnNext(new ApiCallResult <string>() { IsSucceed = false, Operation = "GetStripeCustomerByEmail" }); } } catch (Exception ex) { _apiCallResultSubject.OnNext(new ApiCallResult <string>() { IsSucceed = false, Operation = "GetStripeCustomerByEmail", ErrorMessage = ex.Message }); } }
public async Task <IActionResult> GetByEmail([FromQuery] GetCustomerDetailByEmailQuery query) { try { if (!ModelState.IsValid) { return(base.BadRequest(ModelState)); } var result = await _mediator.Send(query); return(base.Ok(result)); } catch (NotFoundException) { return(base.NotFound()); } catch (InvalidOperationException ex) { return(base.Conflict(ex.Message)); } }