Browse Source

清理取消单数据

yijia
shanji 2 years ago
parent
commit
aa9610a0ab
  1. 6
      BBWYB.Server.API/Controllers/DataRepairController.cs
  2. 31
      BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs

6
BBWYB.Server.API/Controllers/DataRepairController.cs

@ -20,6 +20,12 @@ namespace BBWYB.Server.API.Controllers
dataRepairBusiness.RepairPurchaseExpressOrder(); dataRepairBusiness.RepairPurchaseExpressOrder();
} }
[HttpPost]
public void ClearCancelOrderData()
{
dataRepairBusiness.ClearCancelOrderData();
}
/// <summary> /// <summary>
/// 手动订阅快递100 /// 手动订阅快递100
/// </summary> /// </summary>

31
BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs

@ -16,6 +16,8 @@ namespace BBWYB.Server.Business
public void RepairPurchaseExpressOrder() public void RepairPurchaseExpressOrder()
{ {
#region 修复快递单
var purchaseExpressOrderList = fsql.Select<PurchaseExpressOrder>().Where(peo => !string.IsNullOrEmpty(peo.PurchaseOrderId)).ToList(); var purchaseExpressOrderList = fsql.Select<PurchaseExpressOrder>().Where(peo => !string.IsNullOrEmpty(peo.PurchaseOrderId)).ToList();
var wayBillNos = purchaseExpressOrderList.Select(peo => peo.WaybillNo).ToList(); var wayBillNos = purchaseExpressOrderList.Select(peo => peo.WaybillNo).ToList();
var relationList = fsql.Select<ExpressOrderRelationInfo>().Where(eori => wayBillNos.Contains(eori.WayBillNo)).ToList(); var relationList = fsql.Select<ExpressOrderRelationInfo>().Where(eori => wayBillNos.Contains(eori.WayBillNo)).ToList();
@ -40,6 +42,35 @@ namespace BBWYB.Server.Business
{ {
fsql.Insert(insertExpressOrderRelationInfoList).ExecuteAffrows(); fsql.Insert(insertExpressOrderRelationInfoList).ExecuteAffrows();
}); });
#endregion
}
/// <summary>
/// 批量清理取消单数据
/// </summary>
public void ClearCancelOrderData()
{
var cancelOrderList = fsql.Select<Order>().Where(o => o.OrderState == Model.Enums.OrderState.).ToList();
var cancelOrderIds = cancelOrderList.Select(o => o.Id);
//var noUsingExpressOrderList = fsql.Select<PurchaseExpressOrder>().Where(peo => !fsql.Select<ExpressOrderRelationInfo>()
// .As("b")
// .ToList(b => b.WayBillNo)
// .Contains(peo.WaybillNo))
// .ToList();
/*
select * from purchaseexpressorder peo where not exists (select r.waybillno from expressorderrelationinfo r where peo.WaybillNo=r.WaybillNo);
*/
fsql.Transaction(() =>
{
fsql.Delete<OrderPurchaseInfo>().Where(opi => cancelOrderIds.Contains(opi.OrderId)).ExecuteAffrows();
fsql.Delete<OrderPurchaseSkuInfo>().Where(posku => cancelOrderIds.Contains(posku.OrderId)).ExecuteAffrows();
fsql.Delete<OrderPurchaseRelationInfo>().Where(opri => cancelOrderIds.Contains(opri.OrderId)).ExecuteAffrows();
fsql.Delete<OrderCost>().Where(oc => cancelOrderIds.Contains(oc.OrderId)).ExecuteAffrows();
fsql.Delete<OrderCostDetail>().Where(ocd => cancelOrderIds.Contains(ocd.OrderId)).ExecuteAffrows();
});
} }
public void SubscribeKD100(string waybillNo, string targetCompanyCode) public void SubscribeKD100(string waybillNo, string targetCompanyCode)

Loading…
Cancel
Save