public static void UpdatePricesMultiple(List<HotItem> items)
{
const int endPointLimit = 200;
const int maxEntries = 1000;
//TradingPostApiOfficial.PriceService.Discover();
var ids = new List<int>();
var idGroups = new List<List<int>>();
for (int i = 1; i <= items.Count && i <= maxEntries; i++)
{
var item = items[i - 1];
if (item != null)
{
ids.Add(items[i - 1].DataId);
if (i % endPointLimit == 0 || i == items.Count)
{
idGroups.Add(ids);
ids = new List<int>();
}
}
}
foreach (var idGroup in idGroups)
{
var result = TradingPostApiOfficial.PriceService.FindAll(idGroup);
foreach (var aggregateListing in result)
{
var item = items.FirstOrDefault(x => x.DataId == aggregateListing.Value.ItemId);
if (item != null)
{
UpdatePrice(aggregateListing.Value, item);
}
}
}
}