egg-full-wechat-pay
v1.0.1
Published
egg-full-wechat-pay
Downloads
24
Maintainers
Readme
egg-full-wechat-pay
Install
$ npm i egg-full-wechat-pay --save
Usage
// {app_root}/config/plugin.js
exports.fullWechatPay = {
enable: true,
package: 'egg-full-wechat-pay'
};
Configuration
// {app_root}/config/config.default.js
exports.fullWechatPay = {
appId: '',
key: '',
mchId: '',
pfx: '',
appPay: {
enable: true
},
litePay: {
enable: false
},
pubPay: {
enable: true
},
pubQrPay: {
enable: true
},
pubScanPay: {
enable: true
},
wapPay: {
enable: true
}
};
enable: false
// 是否实例化该支付业务类 默认 false,true 开启
AppPay // APP 支付
LitePay // 小程序支付
PubPay // 公众号支付
PubQrPay // 扫码支付
PubScanPay // 刷卡支付
WapPay // H5 支付
see config/config.default.js for more detail.
Example
'use strict';
const Controller = require('egg').Controller;
const out_trade_no = '2000124491794131841120';
class HomeController extends Controller {
async index() {
this.ctx.body = 'hi, egg';
try {
// 是否开启沙箱模式
//await this.ctx.app.pubQrPay.setDebug(true);
// 统一下单
const res = await this.ctx.app.pubQrPay.unifiedOrder({
body: '腾讯充值中心-QQ会员充值',
out_trade_no,
total_fee: 1, // 单位:分
spbill_create_ip: '8.8.8.8',
notify_url: 'http://test.domain.com/notify',
});
console.log('--order --res---success---', res);
// 查询订单
// const res1 = await this.ctx.app.pubQrPay.orderQuery({
// out_trade_no,
// });
// console.log('--order--query--res---success---', res1);
// 关闭订单
// const res2 = await this.ctx.app.pubQrPay.closeOrder({
// out_trade_no,
// });
// console.log('--close--order---res---success---', res2);
// 查询订单
// const res3 = await this.ctx.app.pubQrPay.orderQuery({
// out_trade_no,
// });
// console.log('--order--query-3-res---success---', res3);
} catch (error) {
console.log('-----error---', error.stack);
}
console.log('----end--->');
// console.log('-------', JSON.stringify(this.ctx.app.config, 0, 2));
}
async wechatNotification() {
console.log('---wechatPayStateCallBack-----');
this.ctx.response.body = 'wechatPayStateCallBack';
}
}
module.exports = HomeController;
Questions & Suggestions
Please open an issue here.