微信小程序扫码微信支付分授权
app.js文件:
微信支付分授权:
https://pay.weixin.qq.com/wiki/doc/apiv3_partner/Offline/apis/chapter6_2_29.shtml
app.js(页面创建初始化优先加载app.js文件)
// 用户扫码调用微信支付分openBusinessView页面
// 需要判断用户是否进行授权或者未授权
// 在app.js下的onShow周期中可以实时获取场景值以及相关携带参数
onShow(options){
// 从一个小程序返回传回的场景值scene==1038
if(options.scene==1038){
// 用户点击微信支付分授权会在options.referrerInfo.extraData.query_id下携带参数证明用户已经授权了
// 相反如果options.referrerInfo.extraData.query_id为空则并未进行授权而是取消授权返回
if (JSON.stringify(res.referrerInfo) !== "{}") {
if (JSON.stringify(res.referrerInfo.extraData) !== "{}") {
if(res.referrerInfo.extraData.query_id){
this.change_Status.type = 1
}else{
this.change_Status.type = 0
}
} else {
this.change_Status.type = 0
}
}
}
}
// 全局定义一个状态标识
change_Status:{
type:0 //默认为0,自定义0代表未进行授权,1代表授权
}
index.js文件:
// 这时可在index.js页面中去判断用户是否进行了微信支付分授权
// 在onShow页面中可以实时得到状态
onShow(){
// 1代表已经授权微信支付分,那么可以跳转至相应页面
if(app.change_Status.type==1){
// 此时也应将对应状态在改回未授权状态,否则一直是授权状态
app.change_Status.type = 0
wx.redirectTo({
url: 'xxx'
})
}
}
//上述只能实现大于550分
// 微信自带方法# 微信支付订单查询接口(pay/orderquery)
// 利用微信支付查询接口判断用户订单状态
//CREATED:商户已创建服务订单;
//DOING:服务订单进行中;
//DONE:服务订单完成;
//REVOKED:商户取消服务订单;
//EXPIRED:服务订单已失效,"商户已创建服务订单"状态超过30天未变动,则订单失效
// 用户授权微信支付分相应状态更改为DOING