public async Task <IEnumerable <RequestSummary> > GetShiftRequestsByFilter(GetShiftRequestsByFilterRequest request) { var response = await PostAsync <BaseRequestHelpResponse <GetShiftRequestsByFilterResponse> >($"/api/GetShiftRequestsByFilter", request); if (response.HasContent && response.IsSuccessful) { return(response.Content.RequestSummaries); } return(null); }
private async Task GetRecipients(DateTime dateFilter) { GetShiftRequestsByFilterRequest request = new GetShiftRequestsByFilterRequest() { DateFrom = dateFilter.Date, DateTo = dateFilter.AddDays(1).Date }; var shifts = await _connectRequestService.GetShiftRequestsByFilter(request); if (shifts != null && shifts?.RequestSummaries.Count > 0) { shifts.RequestSummaries .SelectMany(shiftjobs => shiftjobs.JobBasics)? .Where(w => w.JobStatus == JobStatuses.Accepted) .ToList() .ForEach(job => AddRecipientAndTemplate(TemplateName.ShiftReminder, job.VolunteerUserID.Value, job.JobID, job.ReferringGroupID, job.RequestID)); } }
public async Task <IActionResult> Run( [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] [RequestBodyType(typeof(GetShiftRequestsByFilterRequest), "Get Shift Requests By Filter request")] GetShiftRequestsByFilterRequest req, CancellationToken cancellationToken) { try { _logger.LogInformation("GetShiftRequestsByFilter started"); GetShiftRequestsByFilterResponse response = await _mediator.Send(req, cancellationToken); return(new OkObjectResult(ResponseWrapper <GetShiftRequestsByFilterResponse, RequestServiceErrorCode> .CreateSuccessfulResponse(response))); } catch (Exception exc) { _logger.LogError("Exception occured in GetShiftRequestsByFilter", exc); _logger.LogError(exc.ToString(), exc); _logger.LogErrorAndNotifyNewRelic("Exception occured in GetShiftRequestsByFilter", exc); return(new ObjectResult(ResponseWrapper <GetShiftRequestsByFilterResponse, RequestServiceErrorCode> .CreateUnsuccessfulResponse(RequestServiceErrorCode.InternalServerError, "Internal Error")) { StatusCode = StatusCodes.Status500InternalServerError }); } }
public async Task <GetShiftRequestsByFilterResponse> GetShiftRequestsByFilter(GetShiftRequestsByFilterRequest request) { string path = $"/api/GetShiftRequestsByFilter"; using (HttpResponseMessage response = await _httpClientWrapper.GetAsync(HttpClientConfigName.RequestService, path, request, CancellationToken.None).ConfigureAwait(false)) { string jsonResponse = await response.Content.ReadAsStringAsync(); var getJobsResponse = JsonConvert.DeserializeObject <ResponseWrapper <GetShiftRequestsByFilterResponse, RequestServiceErrorCode> >(jsonResponse); if (getJobsResponse.HasContent && getJobsResponse.IsSuccessful) { return(getJobsResponse.Content); } else { if (response.StatusCode == System.Net.HttpStatusCode.BadRequest) { throw new BadRequestException($"GetShiftRequestsByFilterResponse Returned a bad request"); } else { throw new InternalServerException($"GetShiftRequestsByFilterResponse Returned {jsonResponse}"); } } } }