zhengyuxuan
2025-03-31 d882110d4e70aba7ccb25b026ddf54a0fe5632a9
fix:新增导出接口
5个文件已修改
185 ■■■■ 已修改文件
LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application.Contracts/LifePay/LifePayOutput.cs 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application/LifePay/LifePayOrderService.cs 100 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application/LifePay/LifePayService.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayOrderService.cs
@@ -15,10 +15,10 @@
    Task<PageOutput<LifePayExpensesReceiptsListOutput>> GetLifePayExpensesReceiptsPage(LifePayExpensesReceiptsPageInput input);
    Task<PageOutput<LifePayChannlesRakeListOutput>> GetLifePayChannlesRakePage(LifePayChannlesRakePageInput input);
    Task<List<LifePayChannlesRakeListTemplate>> GetLifePayChannlesRakePageExport(LifePayChannlesRakePageInput input);
    Task AddUpdatePayRechargeReceipts(AddUpdatePayRechargeReceiptsInput input);
    Task AddLifePayExpensesReceipts(AddLifePayExpensesReceiptsInput input);
LifePayment/LifePayment.Application.Contracts/LifePay/LifePayOutput.cs
@@ -1304,7 +1304,7 @@
    /// <summary>
    /// 下单时间
    /// </summary>
    public DateTime CreationTime {  set; get; }
    public DateTime CreationTime { get; set; }
    /// <summary>
    /// 拓展属性
@@ -1321,6 +1321,50 @@
    [Name("序号")]
    public int SerialNumber { get; set; }
    [Name("手机号")]
    public string PhoneNumber { get; set; }
}
    /// <summary>
    /// 下单时间
    /// </summary>
    public DateTime CreationTime { get; set; }
    [Name("下单时间")]
    public string CreationTimeStr { get; set; }
    /// <summary>
    /// 平台订单号
    /// </summary>
    [Name("平台订单号")]
    public string OrderNo { get; set; }
    /// <summary>
    /// 成交金额
    /// </summary>
    public decimal PayAmount { get; set; }
    [Name("成交金额(元)")]
    public string PayAmountStr { get; set; }
    /// <summary>
    /// 渠道佣金比例
    /// </summary>
    public decimal ChannlesRakeRate { get; set; }
    [Name("佣金比例")]
    public string ChannlesRakeRateStr { get; set; }
    /// <summary>
    /// 佣金
    /// </summary>
    public decimal ChannlesRakePrice { get; set; }
    [Name("分佣(元)")]
    public string ChannlesRakePriceStr { get; set; }
    /// <summary>
    /// 结算时间
    /// </summary>
    public DateTime FinishTime { get; set; }
    [Name("结算时间")]
    public string FinishTimeStr { get; set; }
}
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
{
@@ -146,54 +148,31 @@
        public async Task<List<LifePayChannlesRakeListTemplate>> GetLifePayChannlesRakePageExport(LifePayChannlesRakePageInput input)
        {
            //var result = await (await GetLifePayOrderListFilter(input)).Select(x => new LifePayOrderListTemplate
            //{
            //    DiscountAmount = x.DiscountAmount,
            //    FinishTime = x.FinishTime,
            //    LifePayOrderStatus = x.LifePayOrderStatus,
            //    LifePayOrderType = x.LifePayOrderType,
            //    LifePayType = x.LifePayType,
            //    OrderNo = x.OrderNo,
            //    PayAmount = x.PayAmount,
            //    ActualRechargeAmount = x.RechargeAmount,
            //    PhoneNumber = x.PhoneNumber,
            //    RechargeAmount = x.RechargeAmount,
            //    OutOrderNo = x.OutOrderNo,
            //    PayStatus = x.PayStatus,
            //    PayTime = x.PayTime,
            //    ACOOLYOrderNo = x.ACOOLYOrderNo,
            //    CreationTime = x.CreationTime,
            //    LifePayRefundStatus = x.LifePayRefundStatus,
            //    ACOOLYStatus = x.ACOOLYStatus,
            //    //RefundApplyRemark = x.RefundApplyRemark,
            //    ChannelName = x.ChannelName,
            //    PlatformPrice = x.PlatformDeductionAmount.HasValue ? x.PlatformDeductionAmount.Value : 0.00m
            //}).OrderByDescending(r => r.CreationTime).ToListAsync();
            //var i = 0;
            //result.ForEach(s =>
            //{
            //    s.SerialNumber = ++i;
            //    s.LifePayOrderTypeStr = s.LifePayOrderType.GetDescription();
            //    s.CreationTimeStr = s.CreationTime.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
            //    s.RechargeAmountStr = s.RechargeAmount.ToString("F2");
            //    s.PayAmountStr = s.PayAmount.ToString("F2");
            //    s.PayTimeStr = !s.PayTime.HasValue ? string.Empty : s.PayTime.Value.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
            //    s.LifePayTypeStr = s.LifePayType.GetDescription();
            //    s.PayStatusStr = s.PayStatus.GetDescription();
            //    s.ActualRechargeAmountStr = s.ActualRechargeAmount.ToString("F2");
            //    s.LifePayRefundStatusStr = s.LifePayRefundStatus == LifePayRefundStatusEnum.无需退款 ? "" : s.LifePayRefundStatus.GetDescription();
            //    s.ACOOLYStatusStr = s.ACOOLYStatus.GetDescription();
            //    s.LifePayOrderStatusStr = s.LifePayOrderStatus.GetDescription();
            //    s.FinishTimeStr = !s.FinishTime.HasValue ? string.Empty : s.FinishTime.Value.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
            //});
            return null;
            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("F2");
                s.ChannlesRakePriceStr = s.ChannlesRakePrice.ToString("F2");
                s.FinishTimeStr = s.FinishTime.ToString(LifePaymentConstant.DateTimeFormatStr.yyyyMMddHHmmss);
            });
            return result;
        }
        #endregion
        #region 操作
        /// <summary>
        /// 编辑充值流水
@@ -229,7 +208,7 @@
            }
        }
        /// <summary>
        /// 插入收支流水
        /// </summary>
@@ -344,7 +323,7 @@
                        input.ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Receipts;
                        await AddLifePayExpensesReceipts(input);
                    }
                }
            }
        }
@@ -377,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
    }
}
LifePayment/LifePayment.Application/LifePay/LifePayService.cs
@@ -2040,7 +2040,6 @@
        return message;
    }
    private async Task<IQueryable<LifePayOrderListOutput>> GetLifePayOrderListFilter(QueryLifePayOrderListInput input)
    {
        var channles = await _lifePayChannlesRep.Where(x => x.ChannlesName.Contains(input.KeyWords)).Select(x => x.ChannlesNum).ToListAsync();
LifePayment/LifePayment.Host/LifePaymentServices.Application.Contracts.xml
@@ -1876,6 +1876,36 @@
            下单渠道
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayChannlesRakeListTemplate.CreationTime">
            <summary>
            下单时间
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayChannlesRakeListTemplate.OrderNo">
            <summary>
            平台订单号
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayChannlesRakeListTemplate.PayAmount">
            <summary>
            成交金额
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayChannlesRakeListTemplate.ChannlesRakeRate">
            <summary>
            渠道佣金比例
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayChannlesRakeListTemplate.ChannlesRakePrice">
            <summary>
            佣金
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.LifePayChannlesRakeListTemplate.FinishTime">
            <summary>
            结算时间
            </summary>
        </member>
        <member name="P:LifePayment.Application.Contracts.RecordOperateHistoryEto.RelationId">
            <summary>
            关联关系ID