zhengyuxuan
2025-04-02 87095b4a2d3e342f4374423b22d90f0ed6557a7d
LifePayment/LifePayment.HttpApi/LifePay/LifePayController.cs
@@ -1,6 +1,7 @@
using Alipay.AopSdk.F2FPay.Model;
using LifePayment.Application.Contracts;
using LifePayment.Application.LifePay;
using LifePayment.Domain;
using LifePayment.Domain.Common;
using LifePayment.Domain.Shared;
using Microsoft.AspNetCore.Authorization;
@@ -50,12 +51,49 @@
        /// <summary>
        /// 获取顶部统计数据
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpGet]
        [HttpPost]
        [AllowAnonymous]
        public async Task<TopStatisticsOutput> GetTopStatistics(string channleId = "")
        public async Task<TopStatisticsOutput> GetTopStatistics(TopStatisticsInput input)
        {
            return await _statisticsService.GetTopStatistics(channleId);
            return await _statisticsService.GetTopStatistics(input.ChannleList);
        }
        /// <summary>
        /// 获取30日收款统计
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost]
        [AllowAnonymous]
        public async Task<ReceiptsListOutPut> GetReceiptsList(TopStatisticsInput input)
        {
            return await _statisticsService.GetReceiptsList(input.ChannleList);
        }
        /// <summary>
        /// 渠道数据
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost]
        [AllowAnonymous]
        public async Task<ChannelDataListOutPut> GetChannelDataList(TopStatisticsInput input)
        {
            return await _statisticsService.GetChannelDataList(input.ChannleList);
        }
        /// <summary>
        /// 30日佣金列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost]
        [AllowAnonymous]
        public async Task<ChannlesRakeListOutPut> GetChannlesRakeList(TopStatisticsInput input)
        {
            return await _statisticsService.GetChannlesRakeList(input.ChannleList);
        }
        /// <summary>
@@ -432,6 +470,17 @@
            return data;
        }
        /// <summary>
        /// 获取消费流水分页数据
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost]
        public async Task<PageOutput<LifePayConsumptionListOutput>> GetLifePayConsumptionPage(LifePayConsumptionPageInput input)
        {
            return await _lifePayOrderService.GetLifePayConsumptionPage(input);
        }
        /// <summary>
        /// 获取充值流水分页数据
        /// </summary>
        /// <param name="input"></param>
@@ -442,6 +491,33 @@
            return await _lifePayOrderService.GetLifePayRechargeReceiptsPage(input);
        }
        /// <summary>
        /// 获取渠道分佣分页列表
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost]
        public async Task<PageOutput<LifePayChannlesRakeListOutput>> GetLifePayChannlesRakePage(LifePayChannlesRakePageInput input)
        {
            return await _lifePayOrderService.GetLifePayChannlesRakePage(input);
        }
        /// <summary>
        /// 导出渠道分佣Excel
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        [HttpPost]
        public async Task<ActionResult> GetLifePayChannlesRakePageExport(LifePayChannlesRakePageInput input)
        {
            var data = await _lifePayOrderService.GetLifePayChannlesRakePageExport(input);
            if (data.Any())
            {
                var bytes = ExcelHelper.ListToByteForExcel(data, "xlsx");
                return File(bytes, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "渠道分佣" + ".xlsx");
            }
            return Json(default);
        }
        /// <summary>
        /// 获取收支流水分页数据
        /// </summary>
@@ -496,15 +572,20 @@
        public async Task<WxPayDomesticRefundsQueryReponse> WxPayDomesticRefundsQuery(string outTradeNo)
        {
            var res = await _lifePayService.WxPayDomesticRefundsQuery(outTradeNo);
            await _lifePayOrderService.AddLifePayExpensesReceipts(new AddLifePayExpensesReceiptsInput()
            if (res.Code == WxpayResultCode.Success)
            {
                OrderNo = res.OutTradeNo,
                OutOrderNo = res.TransactionId,
                LifePayType = LifePayTypeEnum.WxPay,
                ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Expenses,
                Amount = Convert.ToDecimal(res.Amount.Total)
            });
                await _lifePayOrderService.AddLifePayExpensesReceipts(new AddLifePayExpensesReceiptsInput()
                {
                    OrderNo = res.OutTradeNo,
                    OutRefundNo = res.RefundId,
                    OutOrderNo = res.TransactionId,
                    LifePayType = LifePayTypeEnum.WxPay,
                    ExpensesReceiptsType = ExpensesReceiptsTypeEnum.Expenses,
                    Amount = Convert.ToDecimal(res.Amount.Total)
                });
            }
            return res;
        }
        /// <summary>
@@ -539,8 +620,27 @@
            await _lifePayOrderService.GetAllLifePayExpensesReceipts();
        }
        /// <summary>
        /// 同步订单分佣信息
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        [AllowAnonymous]
        public async Task GetAllChannlesRake()
        {
            await _lifePayOrderService.GetAllChannlesRake();
        }
        /// <summary>
        /// 统计交易流水
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        [AllowAnonymous]
        public async Task GetAllLifePayConsumption()
        {
            await _lifePayOrderService.GetAllLifePayConsumption();
        }
        #endregion
        #region 操作