Browse Source

修复osku的商品Id

qianyi
shanji 2 years ago
parent
commit
1719d97cba
  1. 28
      BBWY.Server.API/Controllers/OrderSyncController.cs
  2. 31
      BBWY.Server.Business/Sync/OrderSyncBusiness.cs

28
BBWY.Server.API/Controllers/OrderSyncController.cs

@ -47,16 +47,16 @@ namespace BBWY.Server.API.Controllers
orderSyncBusiness.ManualSyncOrder(shopId, orderIds, null, null); orderSyncBusiness.ManualSyncOrder(shopId, orderIds, null, null);
} }
/// <summary> ///// <summary>
/// 订单批量删除 ///// 订单批量删除
/// </summary> ///// </summary>
/// <param name="shopId"></param> ///// <param name="shopId"></param>
/// <param name="orderIds"></param> ///// <param name="orderIds"></param>
[HttpPost("{shopId}")] //[HttpPost("{shopId}")]
public void OrderDelete([FromRoute]long shopId, [FromBody]IList<string> orderIds) //public void OrderDelete([FromRoute]long shopId, [FromBody]IList<string> orderIds)
{ //{
orderSyncBusiness.OrderDelete(shopId, orderIds); // orderSyncBusiness.OrderDelete(shopId, orderIds);
} //}
/// <summary> /// <summary>
/// 根据日期同步 /// 根据日期同步
@ -105,5 +105,13 @@ namespace BBWY.Server.API.Controllers
orderSyncBusiness.DeleteTimeOutWaitPayOrder(); orderSyncBusiness.DeleteTimeOutWaitPayOrder();
} }
/// <summary>
/// 修复订单Sku缺少的spu
/// </summary>
[HttpPost]
public void RepairOrderSkuProductId()
{
orderSyncBusiness.RepairOrderSkuProductId();
}
} }
} }

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

@ -866,6 +866,37 @@ namespace BBWY.Server.Business
var deleteTime = DateTime.Now.AddHours(-24); var deleteTime = DateTime.Now.AddHours(-24);
fsql.Delete<WaitPayOrder>().Where(w => w.CreateTime <= deleteTime).ExecuteAffrows(); fsql.Delete<WaitPayOrder>().Where(w => w.CreateTime <= deleteTime).ExecuteAffrows();
} }
/// <summary>
/// 修复订单Sku缺少的spu
/// </summary>
public void RepairOrderSkuProductId()
{
var date = DateTime.Now.AddHours(-2);
var waitRepairOrderSkuList = fsql.Select<OrderSku, ProductSku>()
.InnerJoin((osku, psku) => osku.SkuId == psku.Id)
.Where((osku, psku) => osku.CreateTime >= date && string.IsNullOrEmpty(osku.ProductId) && osku.Price > 0)
.ToList((osku, psku) => new
{
Id = osku.Id,
SkuId = osku.SkuId,
ProductId = psku.ProductId
});
if (waitRepairOrderSkuList.Count() == 0)
return;
var waitRepairOrderSkuGroupList = waitRepairOrderSkuList.GroupBy(s => s.ProductId);
fsql.Transaction(() =>
{
foreach (var group in waitRepairOrderSkuGroupList)
{
var orderSkuIds = group.Select(g => g.Id).ToList();
var productId = group.Key;
fsql.Update<OrderSku>(orderSkuIds).Set(osku => osku.ProductId, productId).ExecuteAffrows();
}
});
}
#endregion #endregion
} }
} }

Loading…
Cancel
Save