微信小程序调用微信支付分需确认模式

540 阅读1分钟

微信小程序扫码微信支付分授权

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