From c290eff56a317b8ebddc4318e0a00473d8c3bb26 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Fri, 20 Jan 2023 23:58:09 +0800 Subject: [PATCH] 1 --- BBWY.Client/BBWY.Client.csproj | 2 +- .../Order/OrderListVoewModel_DongDong.cs | 4 +- .../PlatformSDK/JDBusiness.cs | 65 ++++++++++++++++--- 3 files changed, 60 insertions(+), 11 deletions(-) diff --git a/BBWY.Client/BBWY.Client.csproj b/BBWY.Client/BBWY.Client.csproj index 139cee55..9d709acc 100644 --- a/BBWY.Client/BBWY.Client.csproj +++ b/BBWY.Client/BBWY.Client.csproj @@ -1,7 +1,7 @@  - Exe + WinExe netcoreapp3.1 true Resources\Images\bbwylogo.ico diff --git a/BBWY.Client/ViewModels/Order/OrderListVoewModel_DongDong.cs b/BBWY.Client/ViewModels/Order/OrderListVoewModel_DongDong.cs index 77141cc1..30cd153e 100644 --- a/BBWY.Client/ViewModels/Order/OrderListVoewModel_DongDong.cs +++ b/BBWY.Client/ViewModels/Order/OrderListVoewModel_DongDong.cs @@ -61,8 +61,8 @@ namespace BBWY.Client.ViewModels if (order == null) order = OrderList.FirstOrDefault(o => !string.IsNullOrEmpty(o.BuyerAccount) && o.BuyerAccount == buyerAccount - && order.Consignee != null - && !order.Consignee.IsDecode); + && o.Consignee != null + && !o.Consignee.IsDecode); if (order == null || order.Consignee == null || order.Consignee.IsDecode) return; diff --git a/BBWY.Server.Business/PlatformSDK/JDBusiness.cs b/BBWY.Server.Business/PlatformSDK/JDBusiness.cs index 24e937a9..3ebcda5d 100644 --- a/BBWY.Server.Business/PlatformSDK/JDBusiness.cs +++ b/BBWY.Server.Business/PlatformSDK/JDBusiness.cs @@ -696,6 +696,28 @@ namespace BBWY.Server.Business } } + private void RollBackWhenStartPromotionError(DeleteSkuListRequest deleteSkuRequest, StartPromotionTaskRequest2 startRequest, string brandName, bool haveGiftTemplateSku) + { + var jdClient = GetJdClient(deleteSkuRequest.AppKey, deleteSkuRequest.AppSecret); + + #region 设置完整标题 + { + var req = new WareWriteUpdateWareTitleRequest(); + req.wareId = long.Parse(startRequest.MainProductSpu); + if (!startRequest.FullTitle.StartsWith(brandName)) + req.title = $"{brandName}{startRequest.FullTitle}"; + else + req.title = startRequest.FullTitle; + var response = jdClient.Execute(req, startRequest.AppToken, DateTime.Now.ToLocalTime()); + if (response.IsError) + throw new BusinessException($"设置完整标题出错-{(string.IsNullOrEmpty(response.ErrorMsg) ? response.ErrMsg : response.ErrorMsg)}"); + } + #endregion + + if (haveGiftTemplateSku) + DeleteSkuList(deleteSkuRequest); + } + /// /// 添加JD促销活动sku /// @@ -918,7 +940,7 @@ namespace BBWY.Server.Business wareId = wareId, //skuId = long.Parse(sku.Id), jdPrice = giftSku.Price ?? 0, - stockNum = 500, + stockNum = 9999, barCode = barCode, saleAttrs = new List() { @@ -1012,6 +1034,37 @@ namespace BBWY.Server.Business } #endregion + #region 设置sku全国仓库存 + { + stepText = "设置sku全国仓库存"; + try + { + foreach (var giftSkuId in giftSkuIdList) + { + var req = new StockWriteUpdateSkuStockRequest(); + req.skuId = long.Parse(giftSkuId); + req.stockNum = 9999; + req.storeId = 0; + var res = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime()); + if (res.IsError) + throw new BusinessException($"设置全国仓库存失败-{(string.IsNullOrEmpty(res.ErrorMsg) ? res.ErrMsg : res.ErrorMsg)}"); + } + } + catch (Exception ex) + { + RollBackWhenStartPromotionError(new DeleteSkuListRequest() + { + AppKey = request.AppKey, + AppSecret = request.AppSecret, + AppToken = request.AppToken, + Platform = request.Platform, + SkuList = giftSkuIdList + }, request, brandName, haveGiftTemplateSku); + throw ex; + } + } + #endregion + #endregion #region 查询上架的赠品 @@ -1051,8 +1104,7 @@ namespace BBWY.Server.Business res.Json = JObject.Parse(res.Body); if (res.IsError) { - if (haveGiftTemplateSku) - DeleteSkuList(deleteGiftSkuRequest); + RollBackWhenStartPromotionError(deleteGiftSkuRequest, request, brandName, haveGiftTemplateSku); throw new BusinessException($"创建活动失败-{(string.IsNullOrEmpty(res.ErrorMsg) ? res.ErrMsg : res.ErrorMsg)}"); } @@ -1098,8 +1150,7 @@ namespace BBWY.Server.Business var res = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime()); if (res.IsError) { - if (haveGiftTemplateSku) - DeleteSkuList(deleteGiftSkuRequest); + RollBackWhenStartPromotionError(deleteGiftSkuRequest, request, brandName, haveGiftTemplateSku); throw new BusinessException($"创建活动失败-{(string.IsNullOrEmpty(res.ErrorMsg) ? res.ErrMsg : res.ErrorMsg)}"); } } @@ -1115,9 +1166,7 @@ namespace BBWY.Server.Business var res = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime()); if (res.IsError) { - if (haveGiftTemplateSku) - DeleteSkuList(deleteGiftSkuRequest); - + RollBackWhenStartPromotionError(deleteGiftSkuRequest, request, brandName, haveGiftTemplateSku); throw new BusinessException($"审核活动失败-{(string.IsNullOrEmpty(res.ErrorMsg) ? res.ErrMsg : res.ErrorMsg)}"); } }