|
|
@ -866,6 +866,37 @@ namespace BBWY.Server.Business |
|
|
|
var deleteTime = DateTime.Now.AddHours(-24); |
|
|
|
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
|
|
|
|
} |
|
|
|
} |
|
|
|