From 1650950e7f246915599e62a3caaadf88e1dd3405 Mon Sep 17 00:00:00 2001 From: zhengyuxuan <zhengyuxuan1995> Date: 星期五, 28 三月 2025 16:12:46 +0800 Subject: [PATCH] fix:提交 --- LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 54 insertions(+), 4 deletions(-) diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs index 6eb97db..ce4d0c2 100644 --- a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs +++ b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs @@ -12,6 +12,8 @@ using Microsoft.EntityFrameworkCore; using ZeroD.Util; using LifePayment.Domain; +using static LifePayment.Domain.Shared.LifePaymentConstant; +using Newtonsoft.Json; namespace LifePayment.Application.LifePay { @@ -99,6 +101,31 @@ } } + + public async Task<LifePayExpensesReceiptsPageOutput<LifePayExpensesReceiptsListOutput>> GetLifePayExpensesReceiptsPage(LifePayExpensesReceiptsPageInput input) + { + var list = await _lifePayExpensesReceiptsRepository.Where(x => x.IsDeleted == false) + .WhereIf(input.KeyWord.IsNotNullOrEmpty(), x => x.OrderNo.Contains(input.KeyWord)) + .WhereIf(input.CreationTimeBegin.HasValue, x => x.CreationTime >= input.CreationTimeBegin) + .WhereIf(input.CreationTimeEnd.HasValue, x => x.CreationTime <= input.CreationTimeEnd) + .Select(x => new LifePayRechargeReceiptsListOutput() + { + Id = x.Id, + OrderNo = x.OrderNo, + //RechargeAmount = x.RechargeAmount, + //Remark = x.Remark, + //Voucher = x.Voucher.GetOssPath(), + CreationTime = x.CreationTime, + }) + .GetPageResult(input.PageModel); + + var total = await _lifePayRechargeReceiptsRepository.Where(x => x.IsDeleted == false).SumAsync(x => x.RechargeAmount); + LifePayExpensesReceiptsPageOutput<LifePayExpensesReceiptsListOutput> result = new LifePayExpensesReceiptsPageOutput<LifePayExpensesReceiptsListOutput>(); + //result.Data = list.Data; + result.TotalRechargeAmount = total; + return result; + } + /// <summary> /// 鎻掑叆鏀舵敮娴佹按 /// </summary> @@ -117,7 +144,7 @@ OutOrderNo = input.OutOrderNo, LifePayType = input.LifePayType, ExpensesReceiptsType = input.ExpensesReceiptsType, - Amount = input.Amount + Amount = input.Amount, }; switch (input.LifePayType) @@ -128,6 +155,8 @@ var query = await _aliPayApi.OrderInQuiry(new OrderInQuiryInput() { OutTradeNo = input.OrderNo }); if (query.Code == AlipayResultCode.Success && query.TradeStatus == AlipayStatus.TRADESUCCESS) { + data.ExtraProperties = JsonConvert.SerializeObject(query); + data.FinishTime = Convert.ToDateTime(query.SendPayDate); await _lifePayExpensesReceiptsRepository.InsertAsync(data); } } @@ -136,15 +165,36 @@ var query = await _aliPayApi.QueryAlipayTradeRefund(new OrderInQuiryInput() { OutTradeNo = input.OrderNo }); if (query.Code == AlipayResultCode.Success && query.RefundStatus == AlipayRefundStatus.Success) { + data.ExtraProperties = JsonConvert.SerializeObject(query); + //data.FinishTime = Convert.ToDateTime(query.SendPayDate); await _lifePayExpensesReceiptsRepository.InsertAsync(data); } } break; - case LifePayTypeEnum.WxPay: break; + case LifePayTypeEnum.WxPay: + if (input.ExpensesReceiptsType == ExpensesReceiptsTypeEnum.Expenses) + { + var query = await _wxPayApi.WxPayTradeQuery(input.OrderNo); + if (query.Code == AlipayResultCode.Success && query.Status == WxPayStatus.鏀粯鎴愬姛) + { + data.ExtraProperties = JsonConvert.SerializeObject(query); + data.FinishTime = Convert.ToDateTime(query.SuccessTime); + await _lifePayExpensesReceiptsRepository.InsertAsync(data); + } + } + else + { + var query = await _wxPayApi.WxPayDomesticRefundsQuery(input.OrderNo); + if (query.Code == AlipayResultCode.Success && query.RefundStatus == WxPayRefundStatus.閫�娆炬垚鍔�) + { + data.ExtraProperties = JsonConvert.SerializeObject(query); + data.FinishTime = Convert.ToDateTime(query.SuccessTime); + await _lifePayExpensesReceiptsRepository.InsertAsync(data); + } + } + break; default: break; } - - } } } -- Gitblit v1.9.1