示例#1
0
        public async Task <IActionResult> GetChangesForUser([FromBody] ChangesForUserRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            CultureInfo cultureInfo = new CultureInfo(request.CultureInfo);

            Resource.Culture = cultureInfo;

            UserEntity userEntity = await _context.Users
                                    .FirstOrDefaultAsync(u => u.Id == request.UserId.ToString());

            if (userEntity == null)
            {
                return(BadRequest(Resource.UserDoesntExists));
            }

            List <ChangeEntity> changeEntitys = await _context.Changes
                                                .Include(c => c.FirstDriver)
                                                .Include(c => c.FirstDriverService)
                                                .ThenInclude(c => c.Service)
                                                .ThenInclude(s => s.ServiceDetail)
                                                .Include(c => c.SecondDriver)
                                                .Include(c => c.SecondDriverService)
                                                .ThenInclude(s => s.Service)
                                                .ThenInclude(s => s.ServiceDetail)
                                                .Where(c => c.SecondDriver.Id == request.UserId.ToString() && c.State == "Pending")
                                                .ToListAsync();

            List <ChangeResponse> changeResponses = new List <ChangeResponse>();

            foreach (ChangeEntity changeEntity in changeEntitys)
            {
                changeResponses.Add(_converterHelper.ToChangeResponse(changeEntity));
            }

            return(Ok(changeResponses.OrderBy(c => c.DateLocal)));
        }
示例#2
0
        public async Task <Response> GetChangesForUserAsync(string urlBase, string servicePrefix, string controller, ChangesForUserRequest changesForUserRequest, string tokenType, string accessToken)
        {
            try
            {
                string        request = JsonConvert.SerializeObject(changesForUserRequest);
                StringContent content = new StringContent(request, Encoding.UTF8, "application/json");
                HttpClient    client  = new HttpClient
                {
                    BaseAddress = new Uri(urlBase)
                };

                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(tokenType, accessToken);
                string url = $"{servicePrefix}{controller}";
                HttpResponseMessage response = await client.PostAsync(url, content);

                string result = await response.Content.ReadAsStringAsync();

                if (!response.IsSuccessStatusCode)
                {
                    return(new Response
                    {
                        IsSuccess = false,
                        Message = result,
                    });
                }

                List <ChangeResponse> list = JsonConvert.DeserializeObject <List <ChangeResponse> >(result);
                return(new Response
                {
                    IsSuccess = true,
                    Result = list
                });
            }
            catch (Exception ex)
            {
                return(new Response
                {
                    IsSuccess = false,
                    Message = ex.Message
                });
            }
        }