From 8227ff24171effcbfc33bcb25a1813e452a7b40b Mon Sep 17 00:00:00 2001
From: zhengyuxuan <zhengyuxuan1995>
Date: 星期一, 31 三月 2025 16:02:34 +0800
Subject: [PATCH] fix:统计
---
LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs | 65 +++++++++++++++++++++++++++++---
1 files changed, 59 insertions(+), 6 deletions(-)
diff --git a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
index 8780794..73f75c5 100644
--- a/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
+++ b/LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs
@@ -14,6 +14,8 @@
using LifePayment.Domain;
using static LifePayment.Domain.Shared.LifePaymentConstant;
using Newtonsoft.Json;
+using LifePayment.Domain.Common;
+using Spire.Pdf.Exporting.XPS.Schema;
namespace LifePayment.Application.LifePay
{
@@ -117,7 +119,7 @@
public async Task<PageOutput<LifePayChannlesRakeListOutput>> GetLifePayChannlesRakePage(LifePayChannlesRakePageInput input)
{
var list = await _lifePayChannlesRakeRepository.Where(x => x.IsDeleted == false)
- .WhereIf(input.ChannelId != null, x => x.ChannelId == input.ChannelId)
+ .WhereIf(input.ChannelId.IsNotNullOrEmpty(), x => x.ChannelId == input.ChannelId)
.WhereIf(input.CreationTimeBegin.HasValue, x => x.CreationTime >= input.CreationTimeBegin)
.WhereIf(input.CreationTimeEnd.HasValue, x => x.CreationTime <= input.CreationTimeEnd)
.WhereIf(input.FinishTimeBegin.HasValue, x => x.FinishTime >= input.FinishTimeBegin)
@@ -144,11 +146,33 @@
return list;
}
+ public async Task<List<LifePayChannlesRakeListTemplate>> GetLifePayChannlesRakePageExport(LifePayChannlesRakePageInput input)
+ {
+ var result = await (await GetLifePayChannlesRakeListFilter(input)).Select(x => new LifePayChannlesRakeListTemplate
+ {
+ CreationTime = x.CreationTime,
+ FinishTime = x.FinishTime,
+ OrderNo = x.OrderNo,
+ PayAmount = x.PayAmount,
+ ChannlesRakeRate = x.ChannlesRakeRate,
+ ChannlesRakePrice = x.ChannlesRakePrice
+ }).OrderByDescending(r => r.CreationTime).ToListAsync();
+ var i = 0;
+ result.ForEach(s =>
+ {
+ s.SerialNumber = ++i;
+ s.CreationTimeStr = s.CreationTime.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
+ s.PayAmountStr = s.PayAmount.ToString("F2");
+ s.ChannlesRakeRateStr = s.ChannlesRakeRate.ToString("F0") + "%";
+ s.ChannlesRakePriceStr = s.ChannlesRakePrice.ToString("F2");
+ s.FinishTimeStr = s.FinishTime.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
+ });
+ return result;
+ }
+
#endregion
-
-
-
+ #region 鎿嶄綔
/// <summary>
/// 缂栬緫鍏呭�兼祦姘�
@@ -184,7 +208,7 @@
}
}
-
+
/// <summary>
/// 鎻掑叆鏀舵敮娴佹按
/// </summary>
@@ -299,7 +323,7 @@
input.ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Receipts;
await AddLifePayExpensesReceipts(input);
}
-
+
}
}
}
@@ -332,5 +356,34 @@
}
}
}
+ #endregion
+
+ #region 绉佹湁
+ private async Task<IQueryable<LifePayChannlesRakeListOutput>> GetLifePayChannlesRakeListFilter(LifePayChannlesRakePageInput input)
+ {
+ var list = _lifePayChannlesRakeRepository.Where(x => x.IsDeleted == false)
+ .WhereIf(input.ChannelId.IsNotNullOrEmpty(), x => x.ChannelId == input.ChannelId)
+ .WhereIf(input.CreationTimeBegin.HasValue, x => x.CreationTime >= input.CreationTimeBegin)
+ .WhereIf(input.CreationTimeEnd.HasValue, x => x.CreationTime <= input.CreationTimeEnd)
+ .WhereIf(input.FinishTimeBegin.HasValue, x => x.FinishTime >= input.FinishTimeBegin)
+ .WhereIf(input.FinishTimeEnd.HasValue, x => x.FinishTime <= input.FinishTimeEnd)
+
+ .Select(x => new LifePayChannlesRakeListOutput()
+ {
+ Id = x.Id,
+ OrderNo = x.OrderNo,
+ PayAmount = x.PayAmount,
+ ChannlesRakeRate = x.ChannlesRakeRate,
+ ChannlesRakePrice = x.ChannlesRakePrice,
+ ChannelId = x.ChannelId,
+ FinishTime = x.FinishTime,
+ CreationTime = x.CreationTime,
+ });
+
+
+ return list;
+ }
+ #endregion
+
}
}
--
Gitblit v1.9.1