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<OrderCoupon> insertOrderCouponList = new List<OrderCoupon>();
IList<IUpdate<Order>> updateOrderList = new List<IUpdate<Order>>();
IList<IUpdate<OrderSku>> updateOrderSkuList = new List<IUpdate<OrderSku>>();
IList<IUpdate<PurchaseOrder>> updatePurchaseOrderList = new List<IUpdate<PurchaseOrder>>();
#endregion
@ -254,6 +256,7 @@ namespace BBWY.Server.Business
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 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; //数据库成本明细
if (interfaceCanceledOrderIdList.Count() > 0 &&
@ -379,6 +382,23 @@ namespace BBWY.Server.Business
{
if (storageType != null && 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
@ -693,6 +713,12 @@ namespace BBWY.Server.Business
foreach (var update in updateOrderList)
update.ExecuteAffrows();
}
if (updateOrderSkuList.Count() > 0)
{
foreach (var update in updateOrderSkuList)
update.ExecuteAffrows();
}
});
}

Loading…
Cancel
Save