From a3f1926a7530fd4a3b9196824a8e8b00c693e6e3 Mon Sep 17 00:00:00 2001 From: zhengyiming <540361168@qq.com> Date: 星期二, 01 四月 2025 11:11:50 +0800 Subject: [PATCH] Merge branch 'dev-lifepay-v1.3' of http://120.26.58.240:8888/r/LifePaymentApi into dev-lifepay-v1.3 --- LifePayment/LifePayment.HttpApi/LifePay/AliPayNotifyController.cs | 39 ++++++++++++++++++++++++++++++++++----- 1 files changed, 34 insertions(+), 5 deletions(-) diff --git a/LifePayment/LifePayment.HttpApi/LifePay/AliPayNotifyController.cs b/LifePayment/LifePayment.HttpApi/LifePay/AliPayNotifyController.cs index e057499..9d79c31 100644 --- a/LifePayment/LifePayment.HttpApi/LifePay/AliPayNotifyController.cs +++ b/LifePayment/LifePayment.HttpApi/LifePay/AliPayNotifyController.cs @@ -1,4 +1,6 @@ -锘縰sing LifePayment.Application.Contracts; +锘縰sing Alipay.AopSdk.F2FPay.Model; +using Castle.Core.Internal; +using LifePayment.Application.Contracts; using LifePayment.Domain.Shared; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; @@ -10,6 +12,7 @@ using System.Threading.Tasks; using Volo.Abp.AspNetCore.Mvc; using Volo.Abp.Uow; +using ZeroD.Util; namespace LifePayment.HttpApi { @@ -21,6 +24,7 @@ { private readonly ILifePayService _lifePayService; + private readonly ILifePayOrderService _lifePayOrderService; private readonly ILogger<AliPayNotifyController> _logger; @@ -28,10 +32,12 @@ ILogger<AliPayNotifyController> logger, - ILifePayService lifePayService) + ILifePayService lifePayService, + ILifePayOrderService lifePayOrderService) { _logger = logger; _lifePayService = lifePayService; + _lifePayOrderService = lifePayOrderService; } /// <summary> @@ -51,12 +57,33 @@ //var serializeRequest = "{\"gmt_create\":\"2025-02-25 13:18:59\",\"charset\":\"UTF-8\",\"seller_email\":\"zfb1@818nb.com\",\"subject\":\"鐢熸椿缂磋垂-璇濊垂\",\"sign\":\"Sp06G1GxrAfDvoHPz9l3DJ20SxhvRzEGFeCGu4LHrSWmEG4OY7MHMx+iJi54ETbdXV0YsyDH9JZD7PWN3HCpEq/wGO4Wh4VSYSe7lqxD6r4f/HFiB0YlrdQoSzjZgYPzLjy6bcdlKRRHOeDkgs2i7TfvIsxWxHs9t0xuS0RlkpdZfb7d7m0EuZ/3v2Cbsj5AHjxb1S2PkO0oQyriYgGQdmkPqILZHwieST+tNEHS4dGFKYu2nkfctAGjWIDv/hKQNY7jEUxsEeG0SnK4TPU8zNplFR9/aKM0Wfwp1pdlaiP2u/d8vOtNh5q+emvaYbKrUkIEFBok8pDLNDta7ZjtVw==\",\"invoice_amount\":\"0.01\",\"buyer_open_id\":\"071xYXDfXBLAI9U11jg_WrH1K6hWq8HYGz0u85xBivf3Sce\",\"notify_id\":\"2025022501222131904087711494539601\",\"fund_bill_list\":\"[{\\\"amount\\\":\\\"0.01\\\",\\\"fundChannel\\\":\\\"ALIPAYACCOUNT\\\"}]\",\"notify_type\":\"trade_status_sync\",\"trade_status\":\"TRADE_SUCCESS\",\"receipt_amount\":\"0.01\",\"buyer_pay_amount\":\"0.01\",\"app_id\":\"2021004171602214\",\"sign_type\":\"RSA2\",\"seller_id\":\"2088050542042301\",\"gmt_payment\":\"2025-02-25 13:19:03\",\"notify_time\":\"2025-02-25 13:44:34\",\"merchant_app_id\":\"2021004171602214\",\"version\":\"1.0\",\"out_trade_no\":\"JF202502251318555214671\",\"total_amount\":\"0.01\",\"trade_no\":\"2025022522001487711401331043\",\"auth_app_id\":\"2021004171602214\",\"buyer_logon_id\":\"130****2238\",\"point_amount\":\"0.00\"}"; var input = JsonConvert.DeserializeObject<AliRechargeNotifyInput>(serializeRequest); - if (input.OutTradeNo.StartsWith("JF") && Regex.IsMatch(input.OutTradeNo, @"^JF\d+$")) + if (input.OutTradeNo.Contains("JF")) { - if (input.TradeStatus == LifePaymentConstant.AliPayStatus.鏀粯鎴愬姛) + if (input.TradeStatus == LifePaymentConstant.AliPayStatus.鏀粯鎴愬姛 && input.OutBizNo.IsNullOrEmpty()) { await _lifePayService.LifePaySuccessHandler(input.OutTradeNo, input.TradeNo); + // 鎻掑叆鏀舵敮娴佹按 + await _lifePayOrderService.AddLifePayExpensesReceipts(new AddLifePayExpensesReceiptsInput() { OrderNo = input.OutTradeNo, + OutOrderNo = input.TradeNo ,LifePayType = LifePayTypeEnum.AliPay,ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Expenses }); } + else if((input.TradeStatus == LifePaymentConstant.AliPayStatus.鏀粯鎴愬姛 && input.OutBizNo.IsNotNullOrEmpty() && input.RefundFee.HasValue) || + input.TradeStatus == LifePaymentConstant.AliPayStatus.瓒呮椂鍏抽棴) + { + await _lifePayService.LifePayRefundsHandler(input.OutTradeNo, LifePayRefundStatusEnum.宸查��娆�); + // 鎻掑叆鏀舵敮娴佹按 + await _lifePayOrderService.AddLifePayExpensesReceipts(new AddLifePayExpensesReceiptsInput() + { + OrderNo = input.OutTradeNo, + OutRefundNo = input.OutBizNo, + OutOrderNo = input.TradeNo, + LifePayType = LifePayTypeEnum.AliPay, + ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Receipts + }); + } + } + else + { + _logger.LogError($"鐢熸椿绠″鏀粯瀹濆厖鍊煎洖璋冮�氱煡锛氳鍗曞彿寮傚父 "+ input.OutTradeNo); } return new ContentResult @@ -72,7 +99,7 @@ [AllowAnonymous] public async Task<ContentResult> TestAliRechargeNotify(string outTradeNo, string tradeNo, bool success) { - if (outTradeNo.StartsWith("JF") && Regex.IsMatch(outTradeNo, @"^JF\d+$")) + if (outTradeNo.Contains("JF")) { if (success) { @@ -86,6 +113,8 @@ }; } + + #endif /// <summary> -- Gitblit v1.9.1