Exemplo n.º 1
0
 public SwiftpassPayForWechatAPIController(IOptions <SwiftpassPayOptions> options
                                           , IOptions <MemberAPIOptions> memberOptions
                                           , SwiftpassPayProxy payProxy
                                           , FinanceDbContext db
                                           , WechatCoreDbContext wechatCoreDb
                                           , MemberDbContext memberDb
                                           , ILoggerFactory loggerFactory
                                           , ShopDbContext shopdb
                                           , IHostingEnvironment hostingEnvironment) : base(memberOptions, memberDb, wechatCoreDb)
 {
     this.hostingEnvironment = hostingEnvironment;
     this.options            = options.Value;
     this.db           = db;
     this.wechatCoreDb = wechatCoreDb;
     this.memberDb     = memberDb;
     this.payProxy     = payProxy;
     this._shopdb      = shopdb;
     _logger           = loggerFactory.CreateLogger <SwiftpassPayForWechatAPIController>();
 }
Exemplo n.º 2
0
        public PayProxyBase GetProxy(ShopPayInfo payInfo)
        {
            PayProxyBase rtn;
            ILogger      logger;

            switch (payInfo.PayWay)
            {
            case PayWay.Wechat:
                logger = loggerFactory.CreateLogger <WechatPayProxy>();
                rtn    = new WechatPayProxy(payInfo, wechatPayOptions, logger);
                break;

            case PayWay.Swiftpass:
                logger = loggerFactory.CreateLogger <SwiftpassPayProxy>();
                rtn    = new SwiftpassPayProxy(payInfo, null, logger);
                break;

            default:
                logger = loggerFactory.CreateLogger <WechatPayProxy>();
                rtn    = new WechatPayProxy(payInfo, wechatPayOptions, logger);
                break;
            }
            return(rtn);
        }