From 8c1dce43d197565302ead9d3ae78dff8ea4f9687 Mon Sep 17 00:00:00 2001 From: zhengyuxuan <zhengyuxuan1995> Date: 星期三, 02 四月 2025 06:05:21 +0800 Subject: [PATCH] fix:bug修复 --- LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs | 45 ++++++++++++++++------ LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs | 11 +++++ LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs | 2 + LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml | 6 +++ LifePayment/LifePayment.Application/LifePay/LifePayService.cs | 18 +++++++- 5 files changed, 66 insertions(+), 16 deletions(-) diff --git a/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs b/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs index 0b2b918..ab6faa8 100644 --- a/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs +++ b/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs @@ -27,4 +27,6 @@ Task GetAllLifePayExpensesReceipts(); Task GetAllChannlesRake(); + + Task GetAllLifePayConsumption(); } \ No newline at end of file diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs index 8bdc9a9..3b0b1da 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 { @@ -342,21 +343,18 @@ { OrderNo = item.OrderNo, AcoolyOrderNo = item.ACOOLYOrderNo, - Amount = item.PlatformDeductionAmount.Value, + Amount = item.PlatformDeductionAmount.HasValue? item.PlatformDeductionAmount.Value : 0, }; - - 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; + } } + } } @@ -460,6 +458,29 @@ return list; } + + private async Task CreatLifePayConsumption(ACOOLYStatusEnum status, LifePayOrder order, LifePayConsumption 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; + + var 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 } diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayService.cs index a3135a3..d4016e9 100644 --- a/LifePayment/LifePayment.Application/LifePay/LifePayService.cs +++ b/LifePayment/LifePayment.Application/LifePay/LifePayService.cs @@ -929,7 +929,8 @@ var channle = await GetLifePayChannlesDtoByNum(input.ChannelId); CheckExtensions.IfTrueThrowUserFriendlyException(channle == null, "娓犻亾涓嶅瓨鍦�"); - var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.PhoneOrder && x.PayStatus == LifePayStatusEnum.宸叉敮浠� + var repeatOrder = await _lifePayOrderRepository.Where(x => x.LifePayOrderType == LifePayOrderTypeEnum.PhoneOrder + && x.PayStatus == LifePayStatusEnum.宸叉敮浠� && x.LifePayOrderStatus == LifePayOrderStatusEnum.鍏呭�间腑 && x.OrderParamDetailJsonStr.Contains(input.ProductData.Phone)).ToListAsync(); CheckExtensions.IfTrueThrowUserFriendlyException(repeatOrder.Count() > 0, "鎮ㄦ湁鍚屾埛鍙疯鍗曟鍦ㄥ厖鍊间腑锛岃鍕块噸澶嶅厖鍊�"); @@ -1663,6 +1664,18 @@ userAccount.DeleterId = userAccount.UserId; userAccount.DeletionTime = DateTime.Now; userAccount.IsDeleted = true; + + /// 娓呴櫎鎴峰彿瀵瑰簲鐨勭敤鎴峰鍚� + if (userAccount.LifePayType == LifePayOrderTypeEnum.PhoneOrder || userAccount.LifePayType == LifePayOrderTypeEnum.ElectricOrder) + { + var user = await _lifePayUserRepository.Where(r => r.Id == userAccount.UserId && !r.IsDeleted).FirstOrDefaultAsync(); + CheckExtensions.IfTrueThrowUserFriendlyException(user == null, "鐢ㄦ埛涓嶅瓨鍦�"); + var extraProperties = JsonConvert.DeserializeObject<Model_UserAccountExtraProperties>(userAccount.ExtraProperties); + if (!string.IsNullOrEmpty(extraProperties.Name) && extraProperties.Phone == user.PhoneNumber) + { + user.Name = string.Empty; + } + } return Constant.SUCCESS; } @@ -1697,8 +1710,7 @@ #region 璁板綍鏃ュ織 - await PublishLifePayOrderHistoryEvent("閫�娆鹃┏鍥�", "閫�娆�", order.Id); - + await LifePayOrderHistory("閫�娆鹃┏鍥�", "閫�娆�", order.Id, (int)OperateHistoryTypeEnum.LifePayRefund); #endregion } else diff --git a/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml b/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml index f1d2df9..0975667 100644 --- a/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml +++ b/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml @@ -357,6 +357,12 @@ </summary> <returns></returns> </member> + <member name="M:LifePayment.HttpApi.LifePayController.GetAllLifePayConsumption"> + <summary> + 缁熻浜ゆ槗娴佹按 + </summary> + <returns></returns> + </member> <member name="M:LifePayment.HttpApi.LifePayController.CreateLifePayPhoneOrder(LifePayment.Application.Contracts.CreateLifePayOrderInput{LifePayment.Application.Contracts.LifePhoneData})"> <summary> 鍒涘缓鐢熸椿缂磋垂璇濊垂璁㈠崟 diff --git a/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs b/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs index 12081d0..e25aba2 100644 --- a/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs +++ b/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs @@ -631,7 +631,16 @@ await _lifePayOrderService.GetAllChannlesRake(); } - + /// <summary> + /// 缁熻浜ゆ槗娴佹按 + /// </summary> + /// <returns></returns> + [HttpGet] + [AllowAnonymous] + public async Task GetAllLifePayConsumption() + { + await _lifePayOrderService.GetAllLifePayConsumption(); + } #endregion #region 鎿嶄綔 -- Gitblit v1.9.1