public List<Order> ListCreatedOrders(GetUpdatedOrdersRequest updatedOrdersRequest) { var request = new ListOrdersRequest { SellerId = _amazonSellerSettings.SellerId, MarketplaceId = new MarketplaceIdList().WithId(_amazonSellerSettings.MarketplaceId), CreatedAfter = updatedOrdersRequest.LastUpdatedAfter, CreatedBefore = updatedOrdersRequest.LastUpdatedBefore, }; return ListOrders(request); }
public void Sync() { var amazonSyncSettings = _configurationProvider.GetSiteSettings<AmazonSyncSettings>(); var lastRun = amazonSyncSettings.LastRun; DateTime @from; var now = CurrentRequestData.Now; var to = now.AddMinutes(-30); if (lastRun.HasValue) { if (lastRun > to) return; @from = lastRun.Value; } else @from = now.AddMonths(-2); var updatedOrdersRequest = new GetUpdatedOrdersRequest { LastUpdatedAfter = @from, LastUpdatedBefore = to }; amazonSyncSettings.LastRun = to; _configurationProvider.SaveSettings(amazonSyncSettings); _amazonOrderSyncManager.GetUpdatedInfoFromAmazon(updatedOrdersRequest); }
public IEnumerable<Order> ListUpdatedOrders(GetUpdatedOrdersRequest newOrdersRequest) { var request = new ListOrdersRequest { SellerId = _amazonSellerSettings.SellerId, MarketplaceId = new MarketplaceIdList().WithId(_amazonSellerSettings.MarketplaceId), LastUpdatedAfter = newOrdersRequest.LastUpdatedAfter, LastUpdatedBefore = newOrdersRequest.LastUpdatedBefore, }; return ListOrders(request); }
public GetUpdatedOrdersResult GetUpdatedInfoFromAmazon(GetUpdatedOrdersRequest updatedOrdersRequest) { if (_amazonApiService.IsLive(AmazonApiSection.Orders)) { var orders = _amazonOrdersApiService.ListUpdatedOrders(updatedOrdersRequest) .Distinct(new StrictKeyEqualityComparer<Order, string>(order => order.AmazonOrderId)); orders.Select(order => _scheduleAmazonOrderSync.ScheduleSync(order)) .Where(amazonOrder => amazonOrder != null) .ToList(); var ordersShipped = _shipAmazonOrderService.MarkOrdersAsShipped(); return new GetUpdatedOrdersResult { OrdersShipped = ordersShipped }; } return new GetUpdatedOrdersResult { ErrorMessage = "The service is not currently live" }; }
public GetUpdatedOrdersResult GetUpdatedInfoFromAmazon(GetUpdatedOrdersRequest updatedOrdersRequest) { if (_amazonApiService.IsLive(AmazonApiSection.Orders)) { var orders = _amazonOrdersApiService.ListUpdatedOrders(updatedOrdersRequest) .Distinct(new StrictKeyEqualityComparer <Order, string>(order => order.AmazonOrderId)); orders.Select(order => _scheduleAmazonOrderSync.ScheduleSync(order)) .Where(amazonOrder => amazonOrder != null) .ToList(); var ordersShipped = _shipAmazonOrderService.MarkOrdersAsShipped(); return(new GetUpdatedOrdersResult { OrdersShipped = ordersShipped }); } return(new GetUpdatedOrdersResult { ErrorMessage = "The service is not currently live" }); }