From 18325eda17439bdd76f3b7e3f39cfae312738b2b Mon Sep 17 00:00:00 2001
From: zhengyuxuan <zhengyuxuan1995>
Date: 星期一, 31 三月 2025 06:59:13 +0800
Subject: [PATCH] fix:提交
---
LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml | 40 ++++++++-
LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs | 55 +++++++++++++
LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs | 22 ++++
LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs | 2
LifePayment/LifePayment.Domain/LifePay/DallyStatistics.cs | 5 +
LifePayment/LifePayment.Domain/LifePay/LifePayExpensesReceipts.cs | 2
LifePayment/LifePayment.Application.Contracts/LifePay/IStatisticsService.cs | 2
LifePayment/LifePayment.Application.Contracts/LifePay/LifePayInput.cs | 45 ++++++++++-
LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml | 2
LifePayment/LifePayment.Application/LifePay/StatisticsService.cs | 33 +++++---
LifePayment/LifePayment.Domain.Shared/WeChat/WxPayPostBaseModel.cs | 4
LifePayment/LifePayment.Domain/Common/ChannelFilter.cs | 14 +--
12 files changed, 184 insertions(+), 42 deletions(-)
diff --git a/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs b/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs
index b902588..a30eaec 100644
--- a/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs
+++ b/LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs
@@ -17,4 +17,6 @@
Task<LifePayExpensesReceiptsPageOutput<LifePayExpensesReceiptsListOutput>> GetLifePayExpensesReceiptsPage(LifePayExpensesReceiptsPageInput input);
Task AddLifePayExpensesReceipts(AddLifePayExpensesReceiptsInput input);
+
+ Task GetAllLifePayExpensesReceipts();
}
\ No newline at end of file
diff --git a/LifePayment/LifePayment.Application.Contracts/LifePay/IStatisticsService.cs b/LifePayment/LifePayment.Application.Contracts/LifePay/IStatisticsService.cs
index 2ba6f51..3aaec90 100644
--- a/LifePayment/LifePayment.Application.Contracts/LifePay/IStatisticsService.cs
+++ b/LifePayment/LifePayment.Application.Contracts/LifePay/IStatisticsService.cs
@@ -10,6 +10,6 @@
public interface IStatisticsService : IApplicationService
{
- Task<TopStatisticsOutput> GetTopStatistics();
+ Task<TopStatisticsOutput> GetTopStatistics(string channleId = "");
}
\ No newline at end of file
diff --git a/LifePayment/LifePayment.Application.Contracts/LifePay/LifePayInput.cs b/LifePayment/LifePayment.Application.Contracts/LifePay/LifePayInput.cs
index 26f29d0..6a84270 100644
--- a/LifePayment/LifePayment.Application.Contracts/LifePay/LifePayInput.cs
+++ b/LifePayment/LifePayment.Application.Contracts/LifePay/LifePayInput.cs
@@ -102,6 +102,11 @@
/// 瀹㈡埛韬唤璇佸悗6浣嶏紝鍗楃綉蹇呬紶銆�
/// </summary>
public string SixID { get; set; }
+
+ /// <summary>
+ /// 鎴蜂富濮撳悕
+ /// </summary>
+ public string Name { get; set; }
}
public class LifeGasData
{
@@ -664,16 +669,12 @@
/// <summary>
/// 鏀舵敮绫诲瀷
/// </summary>
- public ExpensesReceiptsTypeEnum ExpensesReceiptsType { get; set; }
+ public ExpensesReceiptsTypeEnum? ExpensesReceiptsType { get; set; }
/// <summary>
/// 浜ゆ槗閲戦
/// </summary>
public decimal Amount { get; set; }
- /// <summary>
- /// 鎷撳睍灞炴��
- /// </summary>
- public string ExtraProperties { get; set; }
}
public class LifePayExpensesReceiptsPageInput : ChannelsBaseInput
{
@@ -701,4 +702,38 @@
/// 浜ゆ槗缁撴潫鏃堕棿
/// </summary>
public DateTime? TimeEnd { get; set; }
+}
+public class LifePayExpensesReceiptsTemp
+{
+ /// <summary>
+ /// 骞冲彴璁㈠崟鍙�
+ /// </summary>
+ public string OrderNo { get; set; }
+
+ /// <summary>
+ /// 閫�娆捐鍗曠紪鍙�
+ /// </summary>
+ public string RefundOrderNo { get; set; }
+
+ /// <summary>
+ /// 娓犻亾娴佹按鍙�
+ /// </summary>
+ public string OutOrderNo { get; set; }
+
+ /// <summary>
+ /// 鏀粯娓犻亾
+ /// </summary>
+ public LifePayTypeEnum LifePayType { get; set; }
+
+ /// <summary>
+ /// 鏀舵敮绫诲瀷
+ /// </summary>
+ public ExpensesReceiptsTypeEnum? ExpensesReceiptsType { get; set; }
+
+ /// <summary>
+ /// 浜ゆ槗閲戦
+ /// </summary>
+ public decimal Amount { get; set; }
+
+ public string ExpensesReceiptsOrder { get; set; }
}
\ No newline at end of file
diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
index f199443..16fe3b9 100644
--- a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
+++ b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
@@ -21,17 +21,20 @@
{
private readonly IRepository<LifePayRechargeReceipts, Guid> _lifePayRechargeReceiptsRepository;
private readonly IRepository<LifePayExpensesReceipts, Guid> _lifePayExpensesReceiptsRepository;
+ private readonly IRepository<LifePayOrder, Guid> _lifePayOrderRepository;
private readonly IAliPayApi _aliPayApi;
private readonly IWxPayApi _wxPayApi;
public LifePayOrderService(
IRepository<LifePayRechargeReceipts, Guid> lifePayRechargeReceiptsRepository,
IRepository<LifePayExpensesReceipts, Guid> lifePayExpensesReceiptsRepository,
+ IRepository<LifePayOrder, Guid> lifePayOrderRepository,
IAliPayApi aliPayApi,
IWxPayApi wxPayApi)
{
_lifePayRechargeReceiptsRepository = lifePayRechargeReceiptsRepository;
_lifePayExpensesReceiptsRepository = lifePayExpensesReceiptsRepository;
+ _lifePayOrderRepository = lifePayOrderRepository;
_aliPayApi = aliPayApi;
_wxPayApi = wxPayApi;
}
@@ -121,7 +124,7 @@
OrderNo = x.OrderNo,
OutOrderNo = x.OutOrderNo,
LifePayType = x.LifePayType,
- ExpensesReceiptsType = x.ExpensesReceiptsType,
+ ExpensesReceiptsType = x.ExpensesReceiptsType.Value,
Amount = x.Amount,
FinishTime = x.FinishTime
})
@@ -198,7 +201,7 @@
else
{
var query = await _wxPayApi.WxPayDomesticRefundsQuery(input.OrderNo);
- if (query.Code == AlipayResultCode.Success && query.RefundStatus == WxPayRefundStatus.閫�娆炬垚鍔�)
+ if (query.Status == WxPayRefundStatus.閫�娆炬垚鍔�)
{
data.ExtraProperties = JsonConvert.SerializeObject(query);
data.FinishTime = Convert.ToDateTime(query.SuccessTime);
@@ -210,5 +213,53 @@
}
}
}
+
+ public async Task GetAllLifePayExpensesReceipts()
+ {
+ var orderlist = await (from a in _lifePayOrderRepository.Where(x => x.PayStatus >= LifePayStatusEnum.宸叉敮浠�)
+ join b in _lifePayExpensesReceiptsRepository on a.OrderNo equals b.OrderNo into temp
+ from b in temp.DefaultIfEmpty()
+ select new LifePayExpensesReceiptsTemp()
+ {
+ OrderNo = a.OrderNo,
+ OutOrderNo = a.OutOrderNo,
+ RefundOrderNo = a.RefundOrderNo,
+ LifePayType = a.LifePayType.Value,
+ Amount = a.PayAmount.Value,
+ ExpensesReceiptsType = b.ExpensesReceiptsType
+ }).ToListAsync();
+ foreach (var item in orderlist)
+ {
+ if (!item.ExpensesReceiptsType.HasValue)
+ {
+ /// 鍏ヨ处
+ AddLifePayExpensesReceiptsInput input = new AddLifePayExpensesReceiptsInput()
+ {
+ OrderNo = item.OrderNo,
+ OutOrderNo = item.OutOrderNo,
+ LifePayType = item.LifePayType,
+ Amount = item.Amount,
+ ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Expenses
+ };
+
+ await AddLifePayExpensesReceipts(input);
+
+ /// 鍑鸿处
+ if (item.RefundOrderNo.IsNotNullOrEmpty())
+ {
+ if (input.LifePayType == LifePayTypeEnum.WxPay)
+ {
+ input.OrderNo = item.RefundOrderNo;
+ }
+
+ input.ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Receipts;
+ await AddLifePayExpensesReceipts(input);
+ }
+
+
+ }
+ }
+
+ }
}
}
diff --git a/LifePayment/LifePayment.Application/LifePay/StatisticsService.cs b/LifePayment/LifePayment.Application/LifePay/StatisticsService.cs
index f6fec66..8d127f9 100644
--- a/LifePayment/LifePayment.Application/LifePay/StatisticsService.cs
+++ b/LifePayment/LifePayment.Application/LifePay/StatisticsService.cs
@@ -35,30 +35,38 @@
_dallyStatisticsRepository = dallyStatisticsRepository;
}
- public async Task<TopStatisticsOutput> GetTopStatistics()
+ public async Task<TopStatisticsOutput> GetTopStatistics(string channleId = "")
{
var today = DateTime.Now.Date;
- var statistics = await _dallyStatisticsRepository.Where(x => x.CreationTime.Date == today).FirstOrDefaultAsync();
+ var statistics = await _dallyStatisticsRepository.Where(x => x.CreationTime.Date == today)
+ .WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.Channel == channleId)
+ .FirstOrDefaultAsync();
if (statistics == null)
{
/// 绱鏀舵锛氱粺璁″钩鍙拌处鎴蜂笅璁㈠崟鍒涘缓鏃堕棿鍦ㄦ槰澶╁強涔嬪墠鏀跺埌鐨勩�愮敤鎴锋敮浠樻垚鍔熺殑閲戦-閫�娆剧粰鐢ㄦ埛鐨勯噾棰濄�戯紱
- var accumulatedReceipts = await _lifePayOrderRepository.Where(x => x.CreationTime < today && x.PayStatus != LifePayStatusEnum.鏈敮浠�).SumAsync(x => x.PayAmount) - await _lifePayOrderRepository.Where(x => x.CreationTime < today && x.LifePayRefundStatus == LifePayRefundStatusEnum.宸查��娆�).SumAsync(x => (x.RefundPrice ?? 0));
+ var accumulatedReceipts = await _lifePayOrderRepository.Where(x => x.CreationTime < today && x.PayStatus != LifePayStatusEnum.鏈敮浠�)
+ .WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.ChannelId == channleId).SumAsync(x => x.PayAmount) - await _lifePayOrderRepository.Where(x => x.CreationTime < today && x.LifePayRefundStatus == LifePayRefundStatusEnum.宸查��娆�).SumAsync(x => (x.RefundPrice ?? 0));
/// 鏄ㄦ棩鏀舵锛氱粺璁″钩鍙拌处鎴蜂笅璁㈠崟鍒涘缓鏃堕棿鍦ㄦ槰澶╂敹鍒扮殑銆愮敤鎴锋敮浠樻垚鍔熺殑閲戦-閫�娆剧粰鐢ㄦ埛鐨勯噾棰濄�戯紱
- var receiptsYesterday = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.PayStatus == LifePayStatusEnum.宸叉敮浠�).SumAsync(x => x.PayAmount) - await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.LifePayRefundStatus == LifePayRefundStatusEnum.宸查��娆�).SumAsync(x => (x.RefundPrice ?? 0));
+ var receiptsYesterday = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.PayStatus == LifePayStatusEnum.宸叉敮浠�)
+ .WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.ChannelId == channleId).SumAsync(x => x.PayAmount) - await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.LifePayRefundStatus == LifePayRefundStatusEnum.宸查��娆�).SumAsync(x => (x.RefundPrice ?? 0));
/// 绱鏀跺叆锛氱粺璁″钩鍙拌处鎴蜂笅璁㈠崟鐘舵�佷负鈥滃凡瀹屾垚鈥濅笖璁㈠崟鍒涘缓鏃堕棿鍦ㄦ槰澶╁強涔嬪墠鏀跺埌鐨勩�愮敤鎴峰疄浠橀噾棰�-骞冲彴鎵f閲戦-閮ㄥ垎閫�娆鹃噾棰濄�戯紱
- var accumulatedIncome = await _lifePayOrderRepository.Where(x => x.CreationTime < today && x.LifePayOrderStatus == LifePayOrderStatusEnum.宸插畬鎴�).SumAsync(x => x.PayAmount - (x.PlatformDeductionAmount ?? 0) - (x.RefundPrice ?? 0));
+ var accumulatedIncome = await _lifePayOrderRepository.Where(x => x.CreationTime < today && x.LifePayOrderStatus == LifePayOrderStatusEnum.宸插畬鎴�)
+ .WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.ChannelId == channleId).SumAsync(x => x.PayAmount - (x.PlatformDeductionAmount ?? 0) - (x.RefundPrice ?? 0));
/// 绱涓嬪崟锛氱粺璁″钩鍙颁腑璁㈠崟涓嬪崟鏃堕棿鍦ㄦ槰澶╁強涔嬪墠鏃堕棿鐨勮鍗曡褰曪紱
- var accumulatedOrders = await _lifePayOrderRepository.Where(x => x.CreationTime < today).CountAsync();
+ var accumulatedOrders = await _lifePayOrderRepository.Where(x => x.CreationTime < today).WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.ChannelId == channleId).CountAsync();
/// 鏄ㄦ棩涓嬪崟锛氱粺璁″钩鍙颁腑璁㈠崟涓嬪崟鏃堕棿鍦ㄦ槰澶╃殑璁㈠崟璁板綍锛�
- var ordersNumYesterday = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today).CountAsync();
+ var ordersNumYesterday = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today)
+ .WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.ChannelId == channleId).CountAsync();
/// 鏄ㄦ棩鎴愬姛锛氱粺璁″钩鍙颁腑璁㈠崟鐘舵�佷负鈥滃凡瀹屾垚/閮ㄥ垎鍏呭�兼垚鍔熲�濅笖璁㈠崟涓嬪崟鏃堕棿鍦ㄦ槰澶╃殑璁㈠崟璁板綍锛�
- var yesterdaySuccess = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.LifePayOrderStatus == LifePayOrderStatusEnum.宸插畬鎴�).CountAsync();
+ var yesterdaySuccess = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.LifePayOrderStatus == LifePayOrderStatusEnum.宸插畬鎴�)
+ .WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.ChannelId == channleId).CountAsync();
/// 鏄ㄦ棩澶辫触锛氱粺璁″钩鍙颁腑璁㈠崟鐘舵�佷负鈥滃厖鍊煎け璐�/宸查��娆锯�濅笖璁㈠崟涓嬪崟鏃堕棿鍦ㄦ槰澶╃殑璁㈠崟璁板綍锛�
- var yesterdayFail = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.LifePayOrderStatus == LifePayOrderStatusEnum.宸查��娆�).CountAsync();
+ var yesterdayFail = await _lifePayOrderRepository.Where(x => x.CreationTime >= today.AddDays(-1) && x.CreationTime < today && x.LifePayOrderStatus == LifePayOrderStatusEnum.宸查��娆�)
+ .WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.ChannelId == channleId).CountAsync();
/// 绱鐢ㄦ埛
- var accumulatedUsers = await _lifePayUserRepository.CountAsync();
+ var accumulatedUsers = await _lifePayUserRepository.WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.CreationChannleNum == channleId).CountAsync();
/// 鏄ㄦ棩娲昏穬鐢ㄦ埛
- var yesterdayActiveUsers = await _lifePayUserRepository.Where(x => x.LastLoginTime >= today.AddDays(-1)).CountAsync();
+ var yesterdayActiveUsers = await _lifePayUserRepository.WhereIf(string.IsNullOrWhiteSpace(channleId), x => x.CreationChannleNum == channleId).Where(x => x.LastLoginTime >= today.AddDays(-1)).CountAsync();
var entity = new DallyStatistics()
{
@@ -73,7 +81,8 @@
YesterdaySuccess = yesterdaySuccess,
YesterdayFail = yesterdayFail,
AccumulatedUsers = accumulatedUsers,
- YesterdayActiveUsers = yesterdayActiveUsers
+ YesterdayActiveUsers = yesterdayActiveUsers,
+ Channel = channleId
};
await _dallyStatisticsRepository.InsertAsync(entity);
diff --git a/LifePayment/LifePayment.Domain.Shared/WeChat/WxPayPostBaseModel.cs b/LifePayment/LifePayment.Domain.Shared/WeChat/WxPayPostBaseModel.cs
index c1266ee..82d0a98 100644
--- a/LifePayment/LifePayment.Domain.Shared/WeChat/WxPayPostBaseModel.cs
+++ b/LifePayment/LifePayment.Domain.Shared/WeChat/WxPayPostBaseModel.cs
@@ -928,8 +928,8 @@
public string TradeStateDesc { get; set; }
- [JsonProperty("success_time ")]
- public string SuccessTime { get; set; }
+ [JsonProperty("success_time")]
+ public string? SuccessTime { get; set; }
// <summary>
/// 閲戦淇℃伅
diff --git a/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs b/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs
index 3f0984f..f734643 100644
--- a/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs
+++ b/LifePayment/LifePayment.Domain/Common/ChannelFilter.cs
@@ -23,11 +23,8 @@
if (CurrentUser.ClientId == Constant.ClientType.Back && !CurrentUser.IsSystem)
{
var queryUser = UserChannleRepository.Where(r => r.UserId == CurrentUser.Id).Select(s => s.ChannleId).ToList();
- if (queryUser.Count() > 0)
- {
- var queryResult = query.Where(s => (!string.IsNullOrEmpty(s.ChannelId) && queryUser.Contains(s.ChannelId)) || string.IsNullOrEmpty(s.ChannelId) || queryUser.Count() == 0);
- return queryResult;
- }
+ var queryResult = query.Where(s => (!string.IsNullOrEmpty(s.ChannelId) && queryUser.Contains(s.ChannelId)));
+ return queryResult;
}
return query;
@@ -38,11 +35,8 @@
if (CurrentUser.ClientId == Constant.ClientType.Back && !CurrentUser.IsSystem)
{
var queryUser = UserChannleRepository.Where(r => r.UserId == CurrentUser.Id).Select(s => s.ChannleId).ToList();
- if (queryUser.Count() > 0)
- {
- var queryResult = query.Where(s => (!string.IsNullOrEmpty(s.CreationChannleNum) && queryUser.Contains(s.CreationChannleNum)) || string.IsNullOrEmpty(s.CreationChannleNum));
- return queryResult;
- }
+ var queryResult = query.Where(s => (!string.IsNullOrEmpty(s.CreationChannleNum) && queryUser.Contains(s.CreationChannleNum)));
+ return queryResult;
}
return query;
diff --git a/LifePayment/LifePayment.Domain/LifePay/DallyStatistics.cs b/LifePayment/LifePayment.Domain/LifePay/DallyStatistics.cs
index eeb5cbe..5b90509 100644
--- a/LifePayment/LifePayment.Domain/LifePay/DallyStatistics.cs
+++ b/LifePayment/LifePayment.Domain/LifePay/DallyStatistics.cs
@@ -62,4 +62,9 @@
/// 鏄ㄦ棩娲昏穬鐢ㄦ埛
/// </summary>
public int YesterdayActiveUsers { get; set; }
+
+ /// <summary>
+ /// 缁熻娓犻亾
+ /// </summary>
+ public string Channel { get; set; }
}
\ No newline at end of file
diff --git a/LifePayment/LifePayment.Domain/LifePay/LifePayExpensesReceipts.cs b/LifePayment/LifePayment.Domain/LifePay/LifePayExpensesReceipts.cs
index 56cc7be..d2f492b 100644
--- a/LifePayment/LifePayment.Domain/LifePay/LifePayExpensesReceipts.cs
+++ b/LifePayment/LifePayment.Domain/LifePay/LifePayExpensesReceipts.cs
@@ -36,7 +36,7 @@
/// <summary>
/// 鏀舵敮绫诲瀷
/// </summary>
- public ExpensesReceiptsTypeEnum ExpensesReceiptsType { get; set; }
+ public ExpensesReceiptsTypeEnum? ExpensesReceiptsType { get; set; }
/// <summary>
/// 浜ゆ槗閲戦
diff --git a/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml b/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml
index 9bb9d5f..304c7d8 100644
--- a/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml
+++ b/LifePayment/LifePayment.Host/LifePaymentService.HttpApi.xml
@@ -63,7 +63,7 @@
</summary>
<returns></returns>
</member>
- <member name="M:LifePayment.HttpApi.LifePayController.GetTopStatistics">
+ <member name="M:LifePayment.HttpApi.LifePayController.GetTopStatistics(System.String)">
<summary>
鑾峰彇椤堕儴缁熻鏁版嵁
</summary>
diff --git a/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml b/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml
index e3c5027..5c0289b 100644
--- a/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml
+++ b/LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml
@@ -346,6 +346,11 @@
瀹㈡埛韬唤璇佸悗6浣嶏紝鍗楃綉蹇呬紶銆�
</summary>
</member>
+ <member name="P:LifePayment.Application.Contracts.LifeElectricData.Name">
+ <summary>
+ 鎴蜂富濮撳悕
+ </summary>
+ </member>
<member name="P:LifePayment.Application.Contracts.LifeGasData.ParValue">
<summary>
鍏呭�奸潰棰濓紝鍗曚綅涓哄厓銆�
@@ -776,11 +781,6 @@
浜ゆ槗閲戦
</summary>
</member>
- <member name="P:LifePayment.Application.Contracts.AddLifePayExpensesReceiptsInput.ExtraProperties">
- <summary>
- 鎷撳睍灞炴��
- </summary>
- </member>
<member name="P:LifePayment.Application.Contracts.LifePayExpensesReceiptsPageInput.KeyWord">
<summary>
鏌ヨ鏉′欢
@@ -806,6 +806,36 @@
浜ゆ槗缁撴潫鏃堕棿
</summary>
</member>
+ <member name="P:LifePayment.Application.Contracts.LifePayExpensesReceiptsTemp.OrderNo">
+ <summary>
+ 骞冲彴璁㈠崟鍙�
+ </summary>
+ </member>
+ <member name="P:LifePayment.Application.Contracts.LifePayExpensesReceiptsTemp.RefundOrderNo">
+ <summary>
+ 閫�娆捐鍗曠紪鍙�
+ </summary>
+ </member>
+ <member name="P:LifePayment.Application.Contracts.LifePayExpensesReceiptsTemp.OutOrderNo">
+ <summary>
+ 娓犻亾娴佹按鍙�
+ </summary>
+ </member>
+ <member name="P:LifePayment.Application.Contracts.LifePayExpensesReceiptsTemp.LifePayType">
+ <summary>
+ 鏀粯娓犻亾
+ </summary>
+ </member>
+ <member name="P:LifePayment.Application.Contracts.LifePayExpensesReceiptsTemp.ExpensesReceiptsType">
+ <summary>
+ 鏀舵敮绫诲瀷
+ </summary>
+ </member>
+ <member name="P:LifePayment.Application.Contracts.LifePayExpensesReceiptsTemp.Amount">
+ <summary>
+ 浜ゆ槗閲戦
+ </summary>
+ </member>
<member name="P:LifePayment.Application.Contracts.LifePayIntroInfoInput.LifePayType">
<summary>
鐢熸椿缂磋垂绫诲瀷
diff --git a/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs b/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs
index 434d829..bdd5ba4 100644
--- a/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs
+++ b/LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs
@@ -53,9 +53,9 @@
/// <returns></returns>
[HttpGet]
[AllowAnonymous]
- public async Task<TopStatisticsOutput> GetTopStatistics()
+ public async Task<TopStatisticsOutput> GetTopStatistics(string channleId = "")
{
- return await _statisticsService.GetTopStatistics();
+ return await _statisticsService.GetTopStatistics(channleId);
}
/// <summary>
@@ -495,7 +495,16 @@
[AllowAnonymous]
public async Task<WxPayDomesticRefundsQueryReponse> WxPayDomesticRefundsQuery(string outTradeNo)
{
- return await _lifePayService.WxPayDomesticRefundsQuery(outTradeNo);
+ var res = await _lifePayService.WxPayDomesticRefundsQuery(outTradeNo);
+ await _lifePayOrderService.AddLifePayExpensesReceipts(new AddLifePayExpensesReceiptsInput()
+ {
+ OrderNo = res.OutTradeNo,
+ OutOrderNo = res.TransactionId,
+ LifePayType = LifePayTypeEnum.WxPay,
+ ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Expenses,
+ Amount = Convert.ToDecimal(res.Amount.Total)
+ });
+ return res;
}
/// <summary>
@@ -519,6 +528,13 @@
return res;
}
+ [HttpGet]
+ [AllowAnonymous]
+ public async Task GetAllLifePayExpensesReceipts()
+ {
+ await _lifePayOrderService.GetAllLifePayExpensesReceipts();
+ }
+
#endregion
#region 鎿嶄綔
--
Gitblit v1.9.1