Beispiel #1
0
        public IEnumerable <List <BidEntry> > GetTotalOrders(bool enableAudit)
        {
            var totalOrders = new List <List <BidEntry> >();

            foreach (var location in _locations)
            {
                int page      = 0;
                var pagedList = new List <BidEntry>();
                do
                {
                    var client   = new RestClient(_url);
                    var request  = new RestRequest(_request.Replace("{location}", location.ToString()).Replace("{page}", page.ToString()), Method.GET);
                    var response = client.Execute(request);

                    // Bad response body
                    if (string.IsNullOrEmpty(response?.Content))
                    {
                        _logger.LogWarning("GetTotalOrders empty response body");
                        continue;
                    }

                    var data = JsonConvert.DeserializeObject <ResultDTO>(response.Content);
                    if (data?.Orders?.Any() == false)
                    {
                        break;
                    }

                    page++;
                    List <BidEntry> orders = data?.Orders?.Select(o => CreateDTO(o, location)).ToList() ?? new List <BidEntry>();
                    pagedList.AddRange(orders);
                }while (true);

                totalOrders.Add(pagedList);
                if (enableAudit)
                {
                    var auditOrders = pagedList?.Where(o => o.Alive && o.AcceptedSpeed > 0).ToList();
                    _audit.CreateAudit(auditOrders);
                }
            }

            return(totalOrders);
        }
Beispiel #2
0
        private IEnumerable <List <BidEntry> > GetTotalOrders(bool enableAudit)
        {
            var totalOrders = new List <List <BidEntry> >();

            foreach (var location in _locations)
            {
                var client   = new RestClient(_url);
                var request  = new RestRequest(_request.Replace("{location}", location.ToString()), Method.GET);
                var response = client.Execute(request);
                var data     = JsonConvert.DeserializeObject <ResultDTO>(response.Content);
                var orders   = data.Result?.Orders?.Select(o => CreateDTO(o, location)).ToList();
                totalOrders.Add(orders);

                if (enableAudit)
                {
                    var auditOrders = orders?.Where(o => o.Alive && o.AcceptedSpeed > 0).ToList();
                    _audit.CreateAudit(auditOrders);
                }
            }

            return(totalOrders);
        }