public async Task <List <ShiftJob> > GetUserShiftJobsByFilter(GetUserShiftJobsByFilterRequest request)
        {
            string path = $"/api/GetUserShiftJobsByFilter";

            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 <GetUserShiftJobsByFilterResponse, RequestServiceErrorCode> >(jsonResponse);
                if (getJobsResponse.HasContent && getJobsResponse.IsSuccessful)
                {
                    return(getJobsResponse.Content.ShiftJobs);
                }
                else
                {
                    if (response.StatusCode == System.Net.HttpStatusCode.BadRequest)
                    {
                        throw new BadRequestException($"GetUserShiftJobsByFilterResponse Returned a bad request");
                    }
                    else
                    {
                        throw new InternalServerException($"GetUserShiftJobsByFilterResponse Returned {jsonResponse}");
                    }
                }
            }
        }
Exemplo n.º 2
0
        public async Task <IEnumerable <ShiftJob> > GetUserShiftJobsByFilter(GetUserShiftJobsByFilterRequest request)
        {
            var response = await PostAsync <BaseRequestHelpResponse <GetUserShiftJobsByFilterResponse> >($"/api/GetUserShiftJobsByFilter", request);

            if (response.HasContent && response.IsSuccessful)
            {
                return(response.Content.ShiftJobs);
            }
            return(null);
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Run(
            [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)]
            [RequestBodyType(typeof(GetUserShiftJobsByFilterRequest), "Get User Shift Jobs By Filter request")] GetUserShiftJobsByFilterRequest req,
            CancellationToken cancellationToken)
        {
            try
            {
                _logger.LogInformation("GetUserShiftJobsByFilter started");
                GetUserShiftJobsByFilterResponse response = await _mediator.Send(req, cancellationToken);

                return(new OkObjectResult(ResponseWrapper <GetUserShiftJobsByFilterResponse, RequestServiceErrorCode> .CreateSuccessfulResponse(response)));
            }
            catch (Exception exc)
            {
                _logger.LogErrorAndNotifyNewRelic("Exception occured in GetUserShiftJobsByFilter", exc);
                return(new ObjectResult(ResponseWrapper <GetUserShiftJobsByFilterResponse, RequestServiceErrorCode> .CreateUnsuccessfulResponse(RequestServiceErrorCode.InternalServerError, "Internal Error"))
                {
                    StatusCode = StatusCodes.Status500InternalServerError
                });
            }
        }
Exemplo n.º 4
0
        private async Task <List <ShiftJob> > GetShiftsForUser(int userId)
        {
            GetUserShiftJobsByFilterRequest getUserShiftJobsByFilterRequest = new GetUserShiftJobsByFilterRequest()
            {
                VolunteerUserId  = userId,
                JobStatusRequest = new JobStatusRequest()
                {
                    JobStatuses = new List <JobStatuses>()
                    {
                        JobStatuses.Accepted, JobStatuses.InProgress, JobStatuses.Done
                    }
                }
            };
            var response = await _connectRequestService.GetUserShiftJobsByFilter(getUserShiftJobsByFilterRequest);

            if (response != null)
            {
                return(response);
            }
            else
            {
                return(new List <ShiftJob>());
            }
        }