83 lines
3.1 KiB
C#
83 lines
3.1 KiB
C#
|
|
using New_College.IServices;
|
|
using New_College.Model.Models;
|
|
using New_College.Services.BASE;
|
|
using New_College.IRepository.Base;
|
|
using New_College.IRepository.UnitOfWork;
|
|
using New_College.Model.ViewModels;
|
|
using System.Threading.Tasks;
|
|
using New_College.Common;
|
|
using New_College.IRepository;
|
|
using System.Linq;
|
|
using YIJIYI.Core.Common.Helper;
|
|
using System;
|
|
using New_College.Model;
|
|
using New_College.Common.Helper;
|
|
using Microsoft.Extensions.Options;
|
|
using Essensoft.AspNetCore.Payment.WeChatPay;
|
|
using Essensoft.AspNetCore.Payment.Alipay;
|
|
using Microsoft.Extensions.Logging;
|
|
using Essensoft.AspNetCore.Payment.Alipay.Domain;
|
|
using Essensoft.AspNetCore.Payment.Alipay.Request;
|
|
using System.Collections.Generic;
|
|
using LinqKit;
|
|
using System.Collections.Specialized;
|
|
using Org.BouncyCastle.Asn1.Ocsp;
|
|
using Microsoft.AspNetCore.Http;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using NPOI.SS.Formula.Functions;
|
|
using Essensoft.AspNetCore.Payment.WeChatPay.V3;
|
|
|
|
namespace New_College.Services
|
|
{
|
|
public class WeiChatPayServicesV3 : BaseServices<V_OrderInfo>, IWeiChatPayServicesV3
|
|
{
|
|
private readonly IWeChatPayClient _client;
|
|
private readonly IOptions<WeChatPayOptions> _optionsAccessor;
|
|
private readonly IAlipayClient alipayClient;
|
|
private readonly IOptions<AlipayOptions> alipayoptions;
|
|
|
|
private readonly IBaseRepository<V_OrderInfo> _dal;
|
|
private readonly IUnitOfWork _unitOfWork;
|
|
private readonly IV_CustomerInfoRepository v_CustomerInfoRepository;
|
|
private readonly IV_VipCardInfoRepository v_VipCardInfoRepository;
|
|
private readonly IV_VipCardTypeRepository v_VipCardTypeRepository;
|
|
|
|
private readonly ILogger<V_OrderInfo> logger;
|
|
|
|
public int Nums = 10;
|
|
public WeiChatPayServicesV3(IWeChatPayClient client, IOptions<WeChatPayOptions> optionsAccessor
|
|
, IAlipayClient IAlipayClient, IOptions<AlipayOptions> alipayopt
|
|
, IBaseRepository<V_OrderInfo> dal
|
|
, IUnitOfWork IUnitOfWork
|
|
, IV_CustomerInfoRepository IV_CustomerInfoRepository
|
|
, IV_VipCardInfoRepository IV_VipCardInfoRepository
|
|
, IV_VipCardTypeRepository IV_VipCardTypeRepository
|
|
, ILogger<V_OrderInfo> loggers
|
|
)
|
|
{
|
|
_client = client;
|
|
_optionsAccessor = optionsAccessor;
|
|
alipayClient = IAlipayClient;
|
|
alipayoptions = alipayopt;
|
|
this._dal = dal;
|
|
_unitOfWork = IUnitOfWork;
|
|
v_CustomerInfoRepository = IV_CustomerInfoRepository;
|
|
v_VipCardInfoRepository = IV_VipCardInfoRepository;
|
|
v_VipCardTypeRepository = IV_VipCardTypeRepository;
|
|
logger = loggers;
|
|
base.BaseDal = dal;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// PC端扫描支付生成URL
|
|
/// </summary>
|
|
/// <param name="viewModel"></param>
|
|
/// <returns></returns>
|
|
public async Task<string> QrCodePay(WeChatPayTransactionsNativeQuery viewModel)
|
|
{
|
|
return await WeChatPayV3.QrCodePay(_client, _optionsAccessor, viewModel);
|
|
}
|
|
}
|
|
} |