Browse Source

C端订单同步支持sku更新spu

AddValidOverTime
shanji 2 years ago
parent
commit
21fd0f27e9
  1. 26
      BBWY.Server.Business/Sync/OrderSyncBusiness.cs

26
BBWY.Server.Business/Sync/OrderSyncBusiness.cs

@ -221,7 +221,9 @@ namespace BBWY.Server.Business
List<OrderSku> insertOrderSkuList = new List<OrderSku>(); List<OrderSku> insertOrderSkuList = new List<OrderSku>();
List<OrderCoupon> insertOrderCouponList = new List<OrderCoupon>(); List<OrderCoupon> insertOrderCouponList = new List<OrderCoupon>();
IList<IUpdate<Order>> updateOrderList = new List<IUpdate<Order>>(); IList<IUpdate<Order>> updateOrderList = new List<IUpdate<Order>>();
IList<IUpdate<OrderSku>> updateOrderSkuList = new List<IUpdate<OrderSku>>();
IList<IUpdate<PurchaseOrder>> updatePurchaseOrderList = new List<IUpdate<PurchaseOrder>>(); IList<IUpdate<PurchaseOrder>> updatePurchaseOrderList = new List<IUpdate<PurchaseOrder>>();
#endregion #endregion
@ -254,6 +256,7 @@ namespace BBWY.Server.Business
var dbOrderConsigneeList = fsql.Select<OrderConsignee>().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单收货信息 var dbOrderConsigneeList = fsql.Select<OrderConsignee>().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单收货信息
var dbOrderCostList = fsql.Select<OrderCost>().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单成本信息 var dbOrderCostList = fsql.Select<OrderCost>().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单成本信息
var dbOrderCouponList = fsql.Select<OrderCoupon>().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单优惠信息 var dbOrderCouponList = fsql.Select<OrderCoupon>().Where(oc => interfaceOrderIdList.Contains(oc.OrderId)).ToList(); //数据库订单优惠信息
var dbOrderSkuList = fsql.Select<OrderSku>().Where(osku => interfaceOrderIdList.Contains(osku.OrderId)).ToList(); //数据库sku信息
List<OrderCostDetail> dbOrderCostDetailList = null; //数据库成本明细 List<OrderCostDetail> dbOrderCostDetailList = null; //数据库成本明细
if (interfaceCanceledOrderIdList.Count() > 0 && if (interfaceCanceledOrderIdList.Count() > 0 &&
@ -379,6 +382,23 @@ namespace BBWY.Server.Business
{ {
if (storageType != null && dbOrder.StorageType != storageType) if (storageType != null && dbOrder.StorageType != storageType)
dbOrder.StorageType = storageType; dbOrder.StorageType = storageType;
var currentDbOrderSkuList = dbOrderSkuList.Where(osku => osku.OrderId == orderId).ToList();
#region OrderSku
var itemInfoList = orderJToken["itemInfoList"] as JArray;
foreach (var orderSkuJToken in itemInfoList)
{
//var itemTotal = orderSkuJToken.Value<int>("itemTotal");
//var jdPrice = orderSkuJToken.Value<decimal>("jdPrice");
var wareId = orderSkuJToken.Value<string>("wareId");
var skuId = orderSkuJToken.Value<string>("skuId");
var dbOsku = currentDbOrderSkuList.FirstOrDefault(osku => osku.SkuId == skuId);
if (dbOsku != null && dbOsku.ProductId != wareId)
{
updateOrderSkuList.Add(fsql.Update<OrderSku>(dbOsku.Id).Set(osku => osku.ProductId, wareId));
}
}
} }
#endregion #endregion
@ -693,6 +713,12 @@ namespace BBWY.Server.Business
foreach (var update in updateOrderList) foreach (var update in updateOrderList)
update.ExecuteAffrows(); update.ExecuteAffrows();
} }
if (updateOrderSkuList.Count() > 0)
{
foreach (var update in updateOrderSkuList)
update.ExecuteAffrows();
}
}); });
} }

Loading…
Cancel
Save