From aa9610a0ab77fa2c3f496d9452f118c8cea9e321 Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Thu, 29 Jun 2023 01:21:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=85=E7=90=86=E5=8F=96=E6=B6=88=E5=8D=95?= =?UTF-8?q?=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/DataRepairController.cs | 6 ++++ .../DataRepair/DataRepairBusiness.cs | 31 +++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/BBWYB.Server.API/Controllers/DataRepairController.cs b/BBWYB.Server.API/Controllers/DataRepairController.cs index 4581b91..47ab484 100644 --- a/BBWYB.Server.API/Controllers/DataRepairController.cs +++ b/BBWYB.Server.API/Controllers/DataRepairController.cs @@ -20,6 +20,12 @@ namespace BBWYB.Server.API.Controllers dataRepairBusiness.RepairPurchaseExpressOrder(); } + [HttpPost] + public void ClearCancelOrderData() + { + dataRepairBusiness.ClearCancelOrderData(); + } + /// /// 手动订阅快递100 /// diff --git a/BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs b/BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs index 205657e..8931e91 100644 --- a/BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs +++ b/BBWYB.Server.Business/DataRepair/DataRepairBusiness.cs @@ -16,6 +16,8 @@ namespace BBWYB.Server.Business public void RepairPurchaseExpressOrder() { + + #region 修复快递单 var purchaseExpressOrderList = fsql.Select().Where(peo => !string.IsNullOrEmpty(peo.PurchaseOrderId)).ToList(); var wayBillNos = purchaseExpressOrderList.Select(peo => peo.WaybillNo).ToList(); var relationList = fsql.Select().Where(eori => wayBillNos.Contains(eori.WayBillNo)).ToList(); @@ -40,6 +42,35 @@ namespace BBWYB.Server.Business { fsql.Insert(insertExpressOrderRelationInfoList).ExecuteAffrows(); }); + #endregion + } + + /// + /// 批量清理取消单数据 + /// + public void ClearCancelOrderData() + { + var cancelOrderList = fsql.Select().Where(o => o.OrderState == Model.Enums.OrderState.已取消).ToList(); + var cancelOrderIds = cancelOrderList.Select(o => o.Id); + + //var noUsingExpressOrderList = fsql.Select().Where(peo => !fsql.Select() + // .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().Where(opi => cancelOrderIds.Contains(opi.OrderId)).ExecuteAffrows(); + fsql.Delete().Where(posku => cancelOrderIds.Contains(posku.OrderId)).ExecuteAffrows(); + fsql.Delete().Where(opri => cancelOrderIds.Contains(opri.OrderId)).ExecuteAffrows(); + fsql.Delete().Where(oc => cancelOrderIds.Contains(oc.OrderId)).ExecuteAffrows(); + fsql.Delete().Where(ocd => cancelOrderIds.Contains(ocd.OrderId)).ExecuteAffrows(); + }); } public void SubscribeKD100(string waybillNo, string targetCompanyCode)