|  |  | 
 |  |  | using LifePayment.Application.Contracts; | 
 |  |  | using LifePayment.Domain; | 
 |  |  | using LifePayment.Domain.Shared; | 
 |  |  | using Microsoft.EntityFrameworkCore; | 
 |  |  | using Microsoft.Extensions.Logging; | 
 |  |  | using LifePayment.Domain.Shared; | 
 |  |  | 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 | 
 |  |  | { | 
 |  |  |  | 
 |  |  |  | 
 |  |  |     //Task<ElectricParValueResponse> GetTopStatistics(); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 获取电费面值 | 
 |  |  |     /// </summary> | 
 |  |  | 
 |  |  |     Task<PhoneParValueResponse> GetPhoneParValue(); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 获取燃气面值 | 
 |  |  |     /// </summary> | 
 |  |  |     /// <returns></returns> | 
 |  |  |     Task<GasParValueResponse> GetGasParValue(); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 获取燃气支持商户 | 
 |  |  |     /// </summary> | 
 |  |  |     /// <returns></returns> | 
 |  |  |     Task<GasOrgTypeValueResponse> GetGasOrgType(); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 支付成功回调处理 | 
 |  |  |     /// </summary> | 
 |  |  |     /// <param name="orderNo"></param> | 
 |  |  | 
 |  |  |     /// <param name="orderNo"></param> | 
 |  |  |     /// <param name="acoolyOrderNo"></param> | 
 |  |  |     /// <param name="status"></param> | 
 |  |  |     /// <param name="acoolyStatus"></param> | 
 |  |  |     /// <param name="payAmount"></param> | 
 |  |  |     /// <returns></returns> | 
 |  |  |     Task ACOOLYOrderNotifyHandler(string orderNo, string acoolyOrderNo, LifePayOrderStatusEnum status); | 
 |  |  |     Task ACOOLYOrderNotifyHandler(string orderNo, string acoolyOrderNo, LifePayOrderStatusEnum status, ACOOLYStatusEnum acoolyStatus, decimal payAmount); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 创建生活缴费话费订单 | 
 |  |  | 
 |  |  |     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> | 
 |  |  | 
 |  |  |     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<List<LifePayPremiumListOutput>> GetPremium(); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 获取须知 | 
 |  |  |     /// </summary> | 
 |  |  |     /// <returns></returns> | 
 |  |  |     Task<List<LifePayIntroInfoOutput>> GetIntroInfo(LifePayOrderTypeEnum type); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 获取我的订单分页数据 | 
 |  |  | 
 |  |  |     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> | 
 |  |  |     /// 获取订单分页数据 | 
 |  |  | 
 |  |  |     /// <returns></returns> | 
 |  |  |     Task<PageOutput<LifePayOrderListOutput>> GetLifePayOrderPage(QueryLifePayOrderListInput 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(); | 
 |  |  |  | 
 |  |  |     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); | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |     /// 设置生活缴费支付类型 | 
 |  |  | 
 |  |  |     /// <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); | 
 |  |  | } |