diff --git a/BBWYB.Server.API/Controllers/OrderSyncController.cs b/BBWYB.Server.API/Controllers/OrderSyncController.cs
index be68e77..c461613 100644
--- a/BBWYB.Server.API/Controllers/OrderSyncController.cs
+++ b/BBWYB.Server.API/Controllers/OrderSyncController.cs
@@ -31,5 +31,17 @@ namespace BBWYB.Server.API.Controllers
{
orderSyncBusiness.ManualOrderSync(shopId, orderId, null, null);
}
- }
+
+ ///
+ /// 根据时间同步订单
+ ///
+ ///
+ ///
+ ///
+ [HttpPost]
+ public void ManualOrderSyncByTime([FromQuery] long shopId, [FromQuery] DateTime startTime, [FromQuery] DateTime endTime)
+ {
+ orderSyncBusiness.ManualOrderSync(shopId, startTime, endTime);
+ }
+ }
}
diff --git a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
index 711c33e..9cf75d4 100644
--- a/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
+++ b/BBWYB.Server.Business/Sync/OrderSyncBusiness.cs
@@ -43,6 +43,22 @@ namespace BBWYB.Server.Business.Sync
Task.Factory.StartNew(() => Sync(shop, orderId, startTime, endTime, AdapterEnums.SortTimeField.Modify, AdapterEnums.SortType.Desc), CancellationToken.None, TaskCreationOptions.LongRunning, taskSchedulerManager.SyncOrderTaskScheduler);
}
+ public void ManualOrderSync(long shopId, DateTime startTime, DateTime endTime)
+ {
+ var shop = venderBusiness.GetShopList(shopId, platform: Enums.Platform.拳探).FirstOrDefault();
+ if (shop == null)
+ throw new BusinessException($"未找到店铺Id {shopId}");
+ while (true)
+ {
+ var s = startTime;
+ var e = s.AddHours(3);
+ Sync(shop, string.Empty, s, e, AdapterEnums.SortTimeField.Modify, AdapterEnums.SortType.Desc);
+ if (e >= endTime)
+ break;
+ startTime = startTime.AddHours(3);
+ }
+ }
+
private void Sync(ShopResponse shop,
string orderId,
DateTime? startTime,