From 36ea8660f1854ec2d71c5905b593fb14ec096760 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Thu, 24 Aug 2023 23:10:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=AE=A2=E5=8D=95=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/OrderSyncController.cs | 14 +++++++++++++- BBWYB.Server.Business/Sync/OrderSyncBusiness.cs | 16 ++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) 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,