From 178e9c79c3a9bcb686b3018db063877fff267a9d Mon Sep 17 00:00:00 2001 From: shanj <18996038927@163.com> Date: Tue, 1 Aug 2023 12:32:00 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E6=A0=B8=E7=AE=97=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6=E5=8F=98=E6=9B=B4=E4=B8=BAsku=E5=88=A9=E6=B6=A6?= =?UTF-8?q?=E7=BB=9D=E5=AF=B9=E5=80=BC=E4=B8=8D=E8=B6=85=E8=BF=871?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBWYB.Server.Business/Order/OrderBusiness.cs | 32 ++++++++++++-------- 1 file changed, 19 insertions(+), 13 deletions(-) diff --git a/BBWYB.Server.Business/Order/OrderBusiness.cs b/BBWYB.Server.Business/Order/OrderBusiness.cs index e889a35..f3a3ff8 100644 --- a/BBWYB.Server.Business/Order/OrderBusiness.cs +++ b/BBWYB.Server.Business/Order/OrderBusiness.cs @@ -744,21 +744,27 @@ namespace BBWYB.Server.Business throw new BusinessException("未查询到订单"); if (order.OrderState != Enums.OrderState.待核算) throw new BusinessException("订单状态不正确,只有待核算的订单才允许核算"); - var orderCost = fsql.Select(orderId).ToOne(); - if (orderCost == null) - throw new BusinessException("未查询到订单成本"); - if (Math.Abs(orderCost.Profit ?? 0) > 1M) - throw new BusinessException("订单利润绝对值不能大于1"); + //var orderCost = fsql.Select(orderId).ToOne(); + //if (orderCost == null) + // throw new BusinessException("未查询到订单成本"); + //if (Math.Abs(orderCost.Profit ?? 0) > 1M) + // throw new BusinessException("订单利润绝对值不能大于1"); + + var orderSkuCostList = fsql.Select().Where(o => o.OrderId == orderId).ToList(); + if (orderSkuCostList.Count() == 0) + throw new BusinessException("未查询到订单sku成本"); + if (orderSkuCostList.Any(osc => Math.Abs(osc.Profit ?? 0) > 1)) + throw new BusinessException("订单sku利润绝对值不能大于1"); fsql.Transaction(() => - { - fsql.Update(orderId).Set(o => o.OrderState, Enums.OrderState.已完成).ExecuteAffrows(); - fsql.Update().Set(t => t.CompletionTime, DateTime.Now) - .Set(t => t.IsTimely == (DateTime.Now < t.ExpirationTime ? true : false)) - .Where(t => t.OrderId == orderId) - .Where(t => t.CompletionTime == null) - .Where(t => t.TaskType == Enums.TimeLimitTaskType.待核算任务).ExecuteAffrows(); - }); + { + fsql.Update(orderId).Set(o => o.OrderState, Enums.OrderState.已完成).ExecuteAffrows(); + fsql.Update().Set(t => t.CompletionTime, DateTime.Now) + .Set(t => t.IsTimely == (DateTime.Now < t.ExpirationTime ? true : false)) + .Where(t => t.OrderId == orderId) + .Where(t => t.CompletionTime == null) + .Where(t => t.TaskType == Enums.TimeLimitTaskType.待核算任务).ExecuteAffrows(); + }); SendPurchaseOrderStateToC(orderId, Enums.OrderState.已完成); }