public async Task <ITKConfirmationViewModel> ItkResponseBuilder(OutcomeViewModel model) { var itkRequestData = CreateItkDispatchRequest(model); _auditLogger.LogItkRequest(model, itkRequestData); var response = await SendItkMessage(itkRequestData); _auditLogger.LogItkResponse(model, response); var itkResponseModel = _mappingEngine.Mapper.Map <OutcomeViewModel, ITKConfirmationViewModel>(model); itkResponseModel.ItkDuplicate = IsDuplicateResponse(response); itkResponseModel.ItkSendSuccess = response.IsSuccessful; if (response.IsSuccessful || IsDuplicateResponse(response)) { itkResponseModel.PatientReference = itkRequestData.CaseDetails.ExternalReference; } else { itkResponseModel.ItkSendSuccess = false; Log4Net.Error("Error sending ITK message : Status Code -" + response.StatusCode + " Content -" + itkRequestData.CaseDetails.ExternalReference); } return(itkResponseModel); }
public async Task <OutcomeViewModel> ItkResponseBuilder(OutcomeViewModel model) { var itkRequestData = CreateItkDispatchRequest(model); await _auditLogger.LogItkRequest(model, itkRequestData); var response = await SendItkMessage(itkRequestData); await _auditLogger.LogItkResponse(model, response); model.ItkDuplicate = response.StatusCode == System.Net.HttpStatusCode.Conflict; if (response.IsSuccessStatusCode) { model.ItkSendSuccess = true; var journey = JsonConvert.DeserializeObject <Journey>(model.JourneyJson); } else { model.ItkSendSuccess = false; Log4Net.Error("Error sending ITK message : Status Code -" + response.StatusCode.ToString() + " Content -" + response.Content.ReadAsStringAsync()); } return(model); }