From 7d2fc29310cfe1331440aa19440f2ad36742c70a Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Thu, 12 Oct 2023 21:35:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=AE=A2=E5=8D=95=E4=BC=98?= =?UTF-8?q?=E6=83=A0=E5=88=B8=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Sync/OrderSyncBusiness.cs | 61 +++++++++---------- 1 file changed, 30 insertions(+), 31 deletions(-) diff --git a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs index f2b484d6..a389ba47 100644 --- a/BBWY.Server.Business/Sync/OrderSyncBusiness.cs +++ b/BBWY.Server.Business/Sync/OrderSyncBusiness.cs @@ -302,9 +302,9 @@ namespace BBWY.Server.Business var storeOrder = orderJToken.Value("storeOrder") ?? string.Empty; var storeId = orderJToken.Value("storeId"); var storageType = ConvertStoreOrder(storeOrder); - var preferentialAmount = 0M; if (dbOrder == null) { + var preferentialAmount = 0M; dbOrder = new Order() { Id = orderId, @@ -377,6 +377,34 @@ namespace BBWY.Server.Business } #endregion + + #region 订单优惠 + if (!dbOrderCouponList.Any(oc => oc.OrderId == orderId)) + { + var orderCouponJArray = (JArray)orderJToken["couponDetailList"]; + if (orderCouponJArray.HasValues) + { + foreach (var orderCouponJToken in orderCouponJArray) + { + var couponType = orderCouponJToken.Value("couponType"); + if (string.IsNullOrEmpty(couponType)) + continue; + //dbOrder.PreferentialAmount += orderCouponJToken.Value("couponPrice"); + preferentialAmount += orderCouponJToken.Value("couponPrice"); + insertOrderCouponList.Add(new OrderCoupon() + { + Id = idGenerator.NewLong(), + SkuId = orderCouponJToken.Value("skuId"), + OrderId = orderId, + CreateTime = DateTime.Now, + CouponType = couponType, + CouponPrice = orderCouponJToken.Value("couponPrice") + }); + } + dbOrder.PreferentialAmount = preferentialAmount; + } + } + #endregion } else { @@ -419,33 +447,6 @@ namespace BBWY.Server.Business } #endregion - #region 订单优惠 - if (!dbOrderCouponList.Any(oc => oc.OrderId == orderId)) - { - var orderCouponJArray = (JArray)orderJToken["couponDetailList"]; - if (orderCouponJArray.HasValues) - { - foreach (var orderCouponJToken in orderCouponJArray) - { - var couponType = orderCouponJToken.Value("couponType"); - if (string.IsNullOrEmpty(couponType)) - continue; - //dbOrder.PreferentialAmount += orderCouponJToken.Value("couponPrice"); - preferentialAmount += orderCouponJToken.Value("couponPrice"); - insertOrderCouponList.Add(new OrderCoupon() - { - Id = idGenerator.NewLong(), - SkuId = orderCouponJToken.Value("skuId"), - OrderId = orderId, - CreateTime = DateTime.Now, - CouponType = couponType, - CouponPrice = orderCouponJToken.Value("couponPrice") - }); - } - } - } - #endregion - #region 订单状态转换 var orderState = ConvertOrderState(orderJToken, dbOrder.StorageType); #endregion @@ -604,7 +605,6 @@ namespace BBWY.Server.Business if (isNewOrder) { dbOrder.OrderState = orderState; - dbOrder.PreferentialAmount = preferentialAmount; } else if ((orderState != null && orderState != dbOrder.OrderState) || buyerRemark != dbOrder.BuyerRemark || @@ -619,7 +619,6 @@ namespace BBWY.Server.Business (orderSellerPrice > 0M && dbOrder.IsGift) || orderTotalPrice != dbOrder.OrderTotalPrice || storeOrder != dbOrder.StoreOrder || - preferentialAmount != dbOrder.PreferentialAmount || storeId != dbOrder.StoreId) { var updateSql = fsql.Update(orderId).SetIf(orderState != null && orderState != dbOrder.OrderState, o => o.OrderState, orderState) @@ -636,7 +635,7 @@ namespace BBWY.Server.Business .SetIf(orderSellerPrice > 0M && dbOrder.IsGift == true, o => o.IsGift, false) .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StoreOrder, storeOrder) .SetIf(storeOrder != dbOrder.StoreOrder, o => o.StorageType, storageType) - .SetIf(preferentialAmount != dbOrder.PreferentialAmount, o => o.PreferentialAmount, preferentialAmount) + //.SetIf(preferentialAmount != dbOrder.PreferentialAmount, o => o.PreferentialAmount, preferentialAmount) .SetIf(storeId != dbOrder.StoreId, o => o.StoreId, storeId); updateOrderList.Add(updateSql); }