From 75014f612e1866f71e7805ceede230637ef7adcb Mon Sep 17 00:00:00 2001 From: shanji <18996038927@163.com> Date: Fri, 8 Jul 2022 18:40:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=80=80=E6=AC=BE=E5=90=8C?= =?UTF-8?q?=E6=AD=A5=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BBWY.Server.Business/Order/OrderBusiness.cs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/BBWY.Server.Business/Order/OrderBusiness.cs b/BBWY.Server.Business/Order/OrderBusiness.cs index e2b5f5bf..fa81b874 100644 --- a/BBWY.Server.Business/Order/OrderBusiness.cs +++ b/BBWY.Server.Business/Order/OrderBusiness.cs @@ -1542,7 +1542,23 @@ namespace BBWY.Server.Business private void SyncJDRefundOrder(JArray refundOrderTokenJArray, ShopResponse shopResponse) { var validRefundOrderTokenJArray = refundOrderTokenJArray.Where(j => j.Value("status") == 13 && j.Value("refoundAmount") != 0M).ToList(); - //var orderIds + var orderIds = validRefundOrderTokenJArray.Select(j => j["sameOrderServiceBill"]["orderId"].ToString()).Distinct().ToList(); + var orderSkuIds = validRefundOrderTokenJArray.Select(j => j["sameOrderServiceBill"]["wareId"].ToString()).Distinct().ToList(); + + var dbOrders = fsql.Select().Where(o => orderIds.Contains(o.Id) && o.IsAfterSaleOrder == false).ToList(); + var dbOrderSkus = fsql.Select().Where(osku => orderIds.Contains(osku.OrderId) && + orderSkuIds.Contains(osku.SkuId) && + osku.IsRefund == false).ToList(); + + fsql.Transaction(() => + { + if (dbOrders.Count() > 0) + foreach (var dbOrder in dbOrders) + fsql.Update(dbOrder.Id).Set(o => o.IsAfterSaleOrder, true).ExecuteAffrows(); + if (dbOrderSkus.Count() > 0) + foreach (var dbOrderSku in dbOrderSkus) + fsql.Update(dbOrderSku.Id).Set(osku => osku.IsRefund, true).ExecuteAffrows(); + }); } public void SyncRefundOrder(ShopResponse shop, string orderId, DateTime? startTime = null, DateTime? endTime = null, bool isAuto = false)