From 95fe2c54a45fae507247eb92c8f60af9c892159f Mon Sep 17 00:00:00 2001
From: zhengyuxuan <zhengyuxuan1995>
Date: 星期三, 02 四月 2025 11:01:00 +0800
Subject: [PATCH] fix:bug修复
---
LifePayment/LifePayment.HttpApi/LifePay/ACOOLYNotifyController.cs | 6 +-
LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs | 88 ++++++++++++++++++++++++++++++++++++++++++-
LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayService.cs | 2 -
LifePayment/LifePayment.Application/LifePay/LifePayService.cs | 7 ++-
4 files changed, 93 insertions(+), 10 deletions(-)
diff --git a/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayService.cs b/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayService.cs
index 299ec16..5bdad15 100644
--- a/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayService.cs
+++ b/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayService.cs
@@ -308,8 +308,6 @@
/// <returns></returns>
Task<WxPayTradeQueryReponse> WxPayTradeQuery(string outTradeNo);
-
-
/// <summary>
/// 璁剧疆鐢熸椿缂磋垂鏀粯绫诲瀷
/// </summary>
diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
index 3b0b1da..cce4b86 100644
--- a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
+++ b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
@@ -310,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);
}
}
@@ -321,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);
}
}
@@ -344,6 +346,7 @@
OrderNo = item.OrderNo,
AcoolyOrderNo = item.ACOOLYOrderNo,
Amount = item.PlatformDeductionAmount.HasValue? item.PlatformDeductionAmount.Value : 0,
+ ChannelId = item.ChannelId,
};
if (item.ACOOLYStatus != null)
{
@@ -352,9 +355,21 @@
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;
}
}
-
}
}
@@ -461,6 +476,7 @@
private async Task CreatLifePayConsumption(ACOOLYStatusEnum status, LifePayOrder order, LifePayConsumption lifePayConsumption)
{
+ LifePayConsumption repeat = new LifePayConsumption();
switch (status)
{
case ACOOLYStatusEnum.鍏呭�间腑:
@@ -471,13 +487,79 @@
lifePayConsumption.DeductionAmount = 0;
lifePayConsumption.FrozenAmount = lifePayConsumption.Amount;
- var repeat = await _lifePayConsumption.Where(x => x.OrderNo == lifePayConsumption.OrderNo
+ 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;
}
}
diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayService.cs
index 5b10017..86e012c 100644
--- a/LifePayment/LifePayment.Application/LifePay/LifePayService.cs
+++ b/LifePayment/LifePayment.Application/LifePay/LifePayService.cs
@@ -1131,7 +1131,6 @@
CheckExtensions.IfTrueThrowUserFriendlyException(order.ACOOLYStatus != ACOOLYStatusEnum.閮ㄥ垎鍏呭�兼垚鍔�, "璇ヨ鍗曟棤娉曚慨鏀瑰埌璐﹂噾棰�");
order.ActualReceivedAmount = input.ActualReceivedAmount;
-
await _lifePayOrderRepository.UpdateAsync(order);
return Constant.SUCCESS;
@@ -1342,14 +1341,17 @@
//SetOrderStatus(order, result.Code);
order.OutRequestNo = result.RequestNo.IsNullOrEmpty() ? null : result.RequestNo;
order.ACOOLYOrderNo = result.ACOOLYOrderNo;
+ order.ACOOLYStatus = ACOOLYStatusEnum.鍏呭�间腑;
}
catch (Exception ex)
{
_logger.LogError(ex, "澶勭悊鐢熸椿缂磋垂鏀粯鎴愬姛鍥炶皟鏃跺紓甯�");
order.LifePayOrderStatus = LifePayOrderStatusEnum.寰呴��娆�;
order.LifePayRefundStatus = LifePayRefundStatusEnum.寰呴��娆�;
+ order.ACOOLYStatus = ACOOLYStatusEnum.鍏呭�煎け璐�;
order.RefundApplyRemark = ex.Message;
}
+
_logger.LogError("鐢熸椿缂磋垂璁㈠崟鐘舵�侊細" + order.LifePayOrderStatus.ToString());
await _lifePayOrderRepository.UpdateAsync(order);
}
@@ -1363,10 +1365,11 @@
{
case LifePayRefundStatusEnum.宸查��娆�:
order.LifePayOrderStatus = LifePayOrderStatusEnum.宸查��娆�;
- order.ACOOLYStatus = ACOOLYStatusEnum.宸查��娆�;
+ order.LifePayRefundStatus = LifePayRefundStatusEnum.宸查��娆�;
break;
case LifePayRefundStatusEnum.閫�娆句腑:
order.LifePayOrderStatus = LifePayOrderStatusEnum.閫�娆句腑;
+ order.LifePayRefundStatus = LifePayRefundStatusEnum.閫�娆句腑;
break;
default: break;
}
diff --git a/LifePayment/LifePayment.HttpApi/LifePay/ACOOLYNotifyController.cs b/LifePayment/LifePayment.HttpApi/LifePay/ACOOLYNotifyController.cs
index 82e8728..313aea7 100644
--- a/LifePayment/LifePayment.HttpApi/LifePay/ACOOLYNotifyController.cs
+++ b/LifePayment/LifePayment.HttpApi/LifePay/ACOOLYNotifyController.cs
@@ -78,7 +78,7 @@
if (confirmElectricOrderResponse.ElectricChargeOrder.Status == ACOOLYConstant.Status.鍏呭�兼垚鍔�)
{
status = LifePayOrderStatusEnum.宸插畬鎴�;
- acoolyStatus = ACOOLYStatusEnum.鍏呭�兼垚鍔�;
+ acoolyStatus = ACOOLYStatusEnum.宸插畬鎴�;
}
else
if (confirmElectricOrderResponse.ElectricChargeOrder.Status == ACOOLYConstant.Status.鍏呭�间腑)
@@ -129,7 +129,7 @@
if (confirmPhoneOrderResponse.PhoneChargeOrder.Status == ACOOLYConstant.Status.鍏呭�兼垚鍔�)
{
status = LifePayOrderStatusEnum.宸插畬鎴�;
- acoolyStatus = ACOOLYStatusEnum.鍏呭�兼垚鍔�;
+ acoolyStatus = ACOOLYStatusEnum.宸插畬鎴�;
}
else
@@ -180,7 +180,7 @@
if (confirmGasOrderResponse.GasChargeOrder.Status == ACOOLYConstant.Status.鍏呭�兼垚鍔�)
{
status = LifePayOrderStatusEnum.宸插畬鎴�;
- acoolyStatus = ACOOLYStatusEnum.鍏呭�兼垚鍔�;
+ acoolyStatus = ACOOLYStatusEnum.宸插畬鎴�;
}
else
--
Gitblit v1.9.1