lingling
2025-04-16 d0558ff1687a1bffd62c45660d4bab3132643039
LifePayment/LifePayment.Application.Contracts/LifePay/ILifePayService.cs
@@ -1,23 +1,17 @@
using LifePayment.Application.Contracts;
using LifePayment.Domain;
using Alipay.EasySDK.Payment.Common.Models;
using LifePayment.Domain.Shared;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Application.Services;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.EventBus.Distributed;
using ZeroD.Util;
using static LifePayment.Domain.Shared.LifePaymentConstant;
namespace LifePayment.Application.Contracts;
public interface ILifePayService : IApplicationService
{
    /// <summary>
    /// 获取电费面值
    /// </summary>
@@ -37,6 +31,18 @@
    Task<PhoneParValueResponse> GetPhoneParValue();
    /// <summary>
    /// 获取燃气面值
    /// </summary>
    /// <returns></returns>
    Task<GasParValueResponse> GetGasParValue();
    /// <summary>
    /// 获取燃气支持商户
    /// </summary>
    /// <returns></returns>
    Task<GasOrgTypeValueResponse> GetGasOrgType();
    /// <summary>
    /// 支付成功回调处理
    /// </summary>
    /// <param name="orderNo"></param>
@@ -45,13 +51,26 @@
    Task LifePaySuccessHandler(string orderNo, string outOrderNo);
    /// <summary>
    /// 支付成功回调处理
    /// 退款成功回调处理
    /// </summary>
    /// <param name="orderNo"></param>
    /// <param name="refundStatus"></param>
    /// <returns></returns>
    Task LifePayRefundsHandler(string orderNo, LifePayRefundStatusEnum refundStatus);
    /// <summary>
    /// 供应商回调处理
    /// </summary>
    /// <param name="orderNo"></param>
    /// <param name="acoolyOrderNo"></param>
    /// <param name="status"></param>
    /// <param name="acoolyStatus"></param>
    /// <param name="payAmount"></param>
    /// <param name="refundApplyRemark"></param>
    /// <param name="parValue"></param>
    /// <param name="actualParValue"></param>
    /// <returns></returns>
    Task ACOOLYOrderNotifyHandler(string orderNo, string acoolyOrderNo, LifePayOrderStatusEnum status);
    Task ACOOLYOrderNotifyHandler(string orderNo, string acoolyOrderNo, LifePayOrderStatusEnum status, ACOOLYStatusEnum acoolyStatus, decimal payAmount, string refundApplyRemark, decimal? parValue = 0, decimal? actualParValue = 0);
    /// <summary>
    /// 创建生活缴费话费订单
@@ -68,6 +87,20 @@
    Task<CreateLifePayOrderOutput> CreateLifePayElectricOrder(CreateLifePayOrderInput<LifeElectricData> input);
    /// <summary>
    /// 创建生活缴费燃气订单
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<CreateLifePayOrderOutput> CreateLifePayGasOrder(CreateLifePayOrderInput<LifeGasData> input);
    /// <summary>
    /// 修改实际到账金额
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<int> UpdateLifePayOrderActualReceivedAmount(UpdateLifePayOrderInput input);
    /// <summary>
    /// 退款生活缴费订单
    /// </summary>
    /// <param name="input"></param>
@@ -76,10 +109,77 @@
    Task RefundLifePayOrder(RefundLifePayOrderInput input);
    /// <summary>
    /// 用户发起生活缴费退款
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task RefundUserLifePayOrder(RefundUserLifePayOrderInput input);
    /// <summary>
    /// 用户修改户号信息
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<int> AddUpdateUserAccount(AddUpdateUserAccountInput input);
    /// <summary>
    /// 删除用户户号
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    Task<int> DeleteUserAccount(Guid id);
    Task RejectRefundLifePayOrder(RefundLifePayOrderInput input);
    Task CreateEditPayChannels(CreateEditPayChannelsInput input);
    Task SetLifePayChannelsStatus(Guid id, LifePayChannelsStatsEnum status);
    /// <summary>
    /// 编辑折扣
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task CreateEditLifePayRate(List<LifePayRateInput> input);
    /// <summary>
    /// 编辑手续费费率
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task CreateEditLifePayPremium(List<LifePayPremiumInput> input);
    /// <summary>
    /// 须知配置
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task EditIntroInfo(LifePayIntroInfoInput input);
    /// <summary>
    /// 获取折扣
    /// </summary>
    /// <returns></returns>
    Task<List<LifePayRateListOutput>> GetRate();
    /// <summary>
    /// 获取渠道折扣
    /// </summary>
    /// <returns></returns>
    Task<ChannelRateOutput> GetChannelRate(ChannelsBaseInput input);
    /// <summary>
    /// 获取手续费费率
    /// </summary>
    /// <returns></returns>
    Task<List<LifePayPremiumListOutput>> GetPremium();
    /// <summary>
    /// 获取须知
    /// </summary>
    /// <returns></returns>
    Task<List<LifePayIntroInfoOutput>> GetIntroInfo(LifePayOrderTypeEnum type);
    /// <summary>
    /// 获取我的订单分页数据
@@ -89,11 +189,26 @@
    Task<PageOutput<UserLifePayOrderOutput>> GetUserLifePayOrderPage(QueryLifePayOrderListInput input);
    /// <summary>
    /// 获取我的订单详情
    /// </summary>
    /// <param name="orderNo"></param>
    /// <returns></returns>
    Task<UserLifePayOrderOutput> GetUserLifePayOrderDetail(string orderNo);
    /// <summary>
    /// 获取用户分页数据
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<PageOutput<UserListOutput>> GetUserPage(PageInput input);
    Task<PageOutput<UserListOutput>> GetUserPage(QueryUserPageInput input);
    /// <summary>
    /// 获取用户户号分页数据
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<PageOutput<UserAccountOutput>> GetAccountPage(QueryUserAccountListInput input);
    /// <summary>
    /// 获取订单分页数据
@@ -102,12 +217,97 @@
    /// <returns></returns>
    Task<PageOutput<LifePayOrderListOutput>> GetLifePayOrderPage(QueryLifePayOrderListInput input);
    Task<PageOutput<LifePayOrderListOutput>> GetLifePayRefundOrderPage(QueryLifePayRefundOrderListInput input);
    /// <summary>
    /// 获取订单详情
    /// </summary>
    /// <param name="orderNo"></param>
    /// <returns></returns>
    Task<LifePayOrderOutput> GetLifePayOrderDetail(string orderNo);
    Task<LifePayRefundOrderOutput> GetLifePayRefundOrderDetail(string orderNo);
    /// <summary>
    /// 根据订单号获取支付状态
    /// </summary>
    /// <param name="orderNo"></param>
    /// <returns></returns>
    Task<LifePayStatusEnum> GetPayStatusByOrderNo(string orderNo);
    /// <summary>
    /// 获取渠道分页
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<PageOutput<CreateEditPayChannelsInput>> GetLifePayChannlesPage(PageInput input);
    Task<List<CreateEditPayChannelsInput>> GetLifePayChannlesAllList(QueryLifePayChannlesInput input);
    Task<CreateEditPayChannelsInput> GetLifePayChannlesDto(Guid id);
    Task<CreateEditPayChannelsInput> GetLifePayChannlesDtoByNum(string channlesNum);
    Task<UserLifePayOrderRefundOutput> GetUserLifePayOrderRefund(Guid id);
    /// <summary>
    /// 获取我的户号列表
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<PageOutput<UserAccountOutput>> GetUserAccountList(QueryUserAccountListInput input);
    /// <summary>
    /// 获取我的全部户号列表
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<List<UserAccountOutput>> GetUserAccountAllList(QueryUserAccountAllListInput input);
    /// <summary>
    /// 获取我的户号详情
    /// </summary>
    /// <param name="id"></param>
    /// <returns></returns>
    Task<UserAccountOutput> GetUserAccountDetail(Guid id);
    Task<List<LifePayOrderListTemplate>> GetLifePayOrderPageExport(QueryLifePayOrderListInput input);
    Task<List<LifePayRefundOrderListTemplate>> GetLifePayRefudOrderPageExport(QueryLifePayRefundOrderListInput input);
    Task<string> GetBillErceiptExport(string orderNo);
    /// <summary>
    /// 查询支付宝支付订单信息
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<AlipayTradeQueryResponse> QueryAlipayTrade(OrderInQuiryInput input);
    /// <summary>
    /// 查询支付宝退款订单信息
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<AlipayTradeFastpayRefundQueryResponse> QueryAlipayTradeRefund(OrderInQuiryInput input);
    /// <summary>
    /// 查询微信退款订单信息
    /// </summary>
    /// <param name="outTradeNo"></param>
    /// <returns></returns>
    Task<WxPayDomesticRefundsQueryReponse> WxPayDomesticRefundsQuery(string outTradeNo);
    /// <summary>
    /// 查询微信订单信息
    /// </summary>
    /// <param name="outTradeNo"></param>
    /// <returns></returns>
    Task<WxPayTradeQueryReponse> WxPayTradeQuery(string outTradeNo);
    /// <summary>
    /// 设置生活缴费支付类型
@@ -134,4 +334,10 @@
    /// <returns></returns>
    /// <exception cref="UserFriendlyException"></exception>
    Task<string> GetPayQRCode(LifePayTypeEnum payType, string outTradeNo, string description, decimal amount, string ip, string h5Type);
    Task<bool> CheckChannelsStatus(string channlesId);
}