From 2b6e63ae8a4af6f612e431c57d2f2f08fb9b9135 Mon Sep 17 00:00:00 2001 From: zhengyuxuan <zhengyuxuan1995> Date: 星期三, 02 四月 2025 11:30:51 +0800 Subject: [PATCH] fix:加入CreateACOOLYElectricOrder报错日志 --- LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs | 127 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 115 insertions(+), 12 deletions(-) diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs index 8bdc9a9..cce4b86 100644 --- a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs +++ b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs @@ -16,6 +16,7 @@ using Newtonsoft.Json; using LifePayment.Domain.Common; using Spire.Pdf.Exporting.XPS.Schema; +using Nest; namespace LifePayment.Application.LifePay { @@ -309,6 +310,7 @@ data.OrderNo = input.OrderNo; data.ExtraProperties = JsonConvert.SerializeObject(query); data.FinishTime = Convert.ToDateTime(query.SuccessTime); + data.Amount = Convert.ToDecimal(query.Amount.Total) / 100; await _lifePayExpensesReceiptsRepository.InsertAsync(data); } } @@ -320,6 +322,7 @@ data.OrderNo = input.OutRefundNo; data.ExtraProperties = JsonConvert.SerializeObject(query); data.FinishTime = Convert.ToDateTime(query.SuccessTime); + data.Amount = Convert.ToDecimal(query.Amount.Total) / 100; await _lifePayExpensesReceiptsRepository.InsertAsync(data); } } @@ -342,20 +345,30 @@ { OrderNo = item.OrderNo, AcoolyOrderNo = item.ACOOLYOrderNo, - Amount = item.PlatformDeductionAmount.Value, + Amount = item.PlatformDeductionAmount.HasValue? item.PlatformDeductionAmount.Value : 0, + ChannelId = item.ChannelId, }; - - switch (item.ACOOLYStatus) + if (item.ACOOLYStatus != null) { - case ACOOLYStatusEnum.鍏呭�间腑: - lifePayConsumption.FinishTime = item.CreationTime; - lifePayConsumption.ACOOLYStatus = ACOOLYStatusEnum.鍏呭�间腑; - lifePayConsumption.FrozenStatus = ConsumptionFrozenStatusEnum.Frozen; - lifePayConsumption.Flow = ConsumptionFlowEnum.Unchanged; - lifePayConsumption.DeductionAmount = 0; - lifePayConsumption.FrozenAmount = lifePayConsumption.Amount; - break; - default: break; + switch (item.ACOOLYStatus) + { + case ACOOLYStatusEnum.鍏呭�间腑: + await CreatLifePayConsumption(ACOOLYStatusEnum.鍏呭�间腑, item, lifePayConsumption); + break; + case ACOOLYStatusEnum.鍏呭�兼垚鍔�: + await CreatLifePayConsumption(ACOOLYStatusEnum.鍏呭�间腑, item, lifePayConsumption); + await CreatLifePayConsumption(ACOOLYStatusEnum.鍏呭�兼垚鍔�, item, lifePayConsumption); + break; + case ACOOLYStatusEnum.宸插畬鎴�: + await CreatLifePayConsumption(ACOOLYStatusEnum.鍏呭�间腑, item, lifePayConsumption); + await CreatLifePayConsumption(ACOOLYStatusEnum.宸插畬鎴�, item, lifePayConsumption); + break; + case ACOOLYStatusEnum.鍏呭�煎け璐�: + await CreatLifePayConsumption(ACOOLYStatusEnum.鍏呭�间腑, item, lifePayConsumption); + await CreatLifePayConsumption(ACOOLYStatusEnum.鍏呭�煎け璐�, item, lifePayConsumption); + break; + default: break; + } } } } @@ -460,6 +473,96 @@ return list; } + + private async Task CreatLifePayConsumption(ACOOLYStatusEnum status, LifePayOrder order, LifePayConsumption lifePayConsumption) + { + LifePayConsumption repeat = new LifePayConsumption(); + switch (status) + { + case ACOOLYStatusEnum.鍏呭�间腑: + lifePayConsumption.FinishTime = order.CreationTime; + lifePayConsumption.ACOOLYStatus = ACOOLYStatusEnum.鍏呭�间腑; + lifePayConsumption.FrozenStatus = ConsumptionFrozenStatusEnum.Frozen; + lifePayConsumption.Flow = ConsumptionFlowEnum.Unchanged; + lifePayConsumption.DeductionAmount = 0; + lifePayConsumption.FrozenAmount = lifePayConsumption.Amount; + + repeat = await _lifePayConsumption.Where(x => x.OrderNo == lifePayConsumption.OrderNo + && x.ACOOLYStatus == lifePayConsumption.ACOOLYStatus && x.Flow == lifePayConsumption.Flow).FirstOrDefaultAsync(); + if (repeat == null) + { + await _lifePayConsumption.InsertAsync(lifePayConsumption); + } + + break; + case ACOOLYStatusEnum.宸插畬鎴�: + lifePayConsumption.FinishTime = order.FinishTime.Value; + lifePayConsumption.ACOOLYStatus = ACOOLYStatusEnum.宸插畬鎴�; + lifePayConsumption.FrozenStatus = ConsumptionFrozenStatusEnum.Thaw; + lifePayConsumption.Flow = ConsumptionFlowEnum.Out; + lifePayConsumption.DeductionAmount = lifePayConsumption.Amount; + lifePayConsumption.FrozenAmount = 0; + + repeat = await _lifePayConsumption.Where(x => x.OrderNo == lifePayConsumption.OrderNo + && x.ACOOLYStatus == lifePayConsumption.ACOOLYStatus && x.Flow == lifePayConsumption.Flow).FirstOrDefaultAsync(); + if (repeat == null) + { + await _lifePayConsumption.InsertAsync(lifePayConsumption); + } + + break; + case ACOOLYStatusEnum.鍏呭�煎け璐�: + lifePayConsumption.FinishTime = order.CreationTime; + lifePayConsumption.ACOOLYStatus = ACOOLYStatusEnum.鍏呭�煎け璐�; + lifePayConsumption.FrozenStatus = ConsumptionFrozenStatusEnum.Frozen; + lifePayConsumption.Flow = ConsumptionFlowEnum.Unchanged; + lifePayConsumption.DeductionAmount = 0; + lifePayConsumption.FrozenAmount = lifePayConsumption.Amount; + + repeat = await _lifePayConsumption.Where(x => x.OrderNo == lifePayConsumption.OrderNo + && x.ACOOLYStatus == lifePayConsumption.ACOOLYStatus && x.Flow == lifePayConsumption.Flow).FirstOrDefaultAsync(); + if (repeat == null) + { + await _lifePayConsumption.InsertAsync(lifePayConsumption); + } + + break; + case ACOOLYStatusEnum.宸查��娆�: + lifePayConsumption.FinishTime = order.FinishTime.Value; + lifePayConsumption.ACOOLYStatus = ACOOLYStatusEnum.宸查��娆�; + lifePayConsumption.FrozenStatus = ConsumptionFrozenStatusEnum.Thaw; + lifePayConsumption.Flow = ConsumptionFlowEnum.Unchanged; + lifePayConsumption.DeductionAmount = 0; + lifePayConsumption.FrozenAmount = 0; + + repeat = await _lifePayConsumption.Where(x => x.OrderNo == lifePayConsumption.OrderNo + && x.ACOOLYStatus == lifePayConsumption.ACOOLYStatus && x.Flow == lifePayConsumption.Flow).FirstOrDefaultAsync(); + if (repeat == null) + { + await _lifePayConsumption.InsertAsync(lifePayConsumption); + } + + break; + + //case ACOOLYStatusEnum.閮ㄥ垎鍏呭�兼垚鍔�: + // lifePayConsumption.FinishTime = order.CreationTime; + // lifePayConsumption.ACOOLYStatus = ACOOLYStatusEnum.閮ㄥ垎鍏呭�兼垚鍔�; + // lifePayConsumption.FrozenStatus = ConsumptionFrozenStatusEnum.Thaw; + // lifePayConsumption.Flow = ConsumptionFlowEnum.Unchanged; + // lifePayConsumption.DeductionAmount = 0; + // lifePayConsumption.FrozenAmount = lifePayConsumption.Amount; + + // repeat = await _lifePayConsumption.Where(x => x.OrderNo == lifePayConsumption.OrderNo + // && x.ACOOLYStatus == lifePayConsumption.ACOOLYStatus && x.Flow == lifePayConsumption.Flow).FirstOrDefaultAsync(); + // if (repeat == null) + // { + // await _lifePayConsumption.InsertAsync(lifePayConsumption); + // } + + // break; + default: break; + } + } #endregion } -- Gitblit v1.9.1