diff --git a/BBWYB.Server.API/Controllers/DataRepairController.cs b/BBWYB.Server.API/Controllers/DataRepairController.cs index a14d0c6..af2ca5e 100644 --- a/BBWYB.Server.API/Controllers/DataRepairController.cs +++ b/BBWYB.Server.API/Controllers/DataRepairController.cs @@ -46,5 +46,16 @@ namespace BBWYB.Server.API.Controllers { dataRepairBusiness.RepairOrderState(orderId); } + + /// + /// 修复订单状态 + /// + /// + [HttpPost] + public void BatchRepairOrderState([FromBody] IList orderIds) + { + foreach (var orderId in orderIds) + dataRepairBusiness.RepairOrderState(orderId); + } } } diff --git a/BBWYB.Server.Business/Extensions/OrderStateExtension.cs b/BBWYB.Server.Business/Extensions/OrderStateExtension.cs index f57b86f..8cf2adc 100644 --- a/BBWYB.Server.Business/Extensions/OrderStateExtension.cs +++ b/BBWYB.Server.Business/Extensions/OrderStateExtension.cs @@ -59,12 +59,19 @@ namespace BBWYB.Server.Business #region 部分发货 if (orderPurchaseInfoList.Any(opi => opi.OrderState == Enums.PurchaseOrderState.待收货 || - opi.OrderState == Enums.PurchaseOrderState.部分发货) && - orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.待收货 || - opi.OrderState == Enums.PurchaseOrderState.部分发货) < orderPurchaseInfoList.Count()) + opi.OrderState == Enums.PurchaseOrderState.部分发货)) { - order.OrderState = Enums.OrderState.部分发货; - return; + if (orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.待收货 || + opi.OrderState == Enums.PurchaseOrderState.部分发货) < orderPurchaseInfoList.Count()) + { + order.OrderState = Enums.OrderState.部分发货; + return; + } + if (orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.部分发货) == orderPurchaseInfoList.Count()) + { + order.OrderState = Enums.OrderState.部分发货; + return; + } } #endregion @@ -78,12 +85,20 @@ namespace BBWYB.Server.Business #region 部分收货 if (orderPurchaseInfoList.Any(opi => opi.OrderState == Enums.PurchaseOrderState.已签收 || - opi.OrderState == Enums.PurchaseOrderState.部分收货) && - orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.已签收 || - opi.OrderState == Enums.PurchaseOrderState.部分收货) < orderPurchaseInfoList.Count()) + opi.OrderState == Enums.PurchaseOrderState.部分收货)) { - order.OrderState = Enums.OrderState.部分收货; - return; + if (orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.已签收 || + opi.OrderState == Enums.PurchaseOrderState.部分收货) < orderPurchaseInfoList.Count()) + { + order.OrderState = Enums.OrderState.部分收货; + return; + } + + if (orderPurchaseInfoList.Count(opi => opi.OrderState == Enums.PurchaseOrderState.部分收货) == orderPurchaseInfoList.Count()) + { + order.OrderState = Enums.OrderState.部分收货; + return; + } } #endregion