小程序 微信支付成功后,会发送个模板消息。该模板消息会在小程序平台选用模板。
paymentResult.JS 文件
该文件 是支付后进来,成功或者失败都会在这,在上面一篇内容 有介绍,以code值01代表成功,走成功结果页,code值为0 失败结果页。
还有一些 支付信息存在缓存中 paymentParam ,里面支付金额,产品名称等信息。在调起原生支付文件,我们 模板接口需要 prepay_id值,他是用
formId 承载的。 (微信小程序使用模板消息需要使用支付prepay_id或表单提交formId,) 内容 在
https://www.cnblogs.com/lguow/p/10448501.html
let prepay_id = obj.packageStr.split('=')[1];
console.log('packageStr:',obj.packageStr)
console.log('prepay_id值:-----', prepay_id)
onLoad: function (options) {
if (options && options.code){
this.setData({
code:options.code,
msg: options.msg || ''
})
if(options.code == '1'){
let userCode = wx.getStorageSync('userCode') || '';
let paymentParam = wx.getStorageSync('paymentParam');
let linkParam = paymentParam.linkParam;
let params = {
url: api.addPayInfo,
contentType:'application/json;charset=UTF-8',
showLoading: false,
data:{
userCode: userCode,
payNo: linkParam.payApplyNo || '',
prodCode: linkParam.productCode || '',
prodName: linkParam.productName || '',
money: linkParam.orderAmount || '',
prodType: linkParam.miniSource == 'A2' ? 1 : linkParam.miniSource == 'carAndnoCar' ? 3 : 2 // 1车险, 2非车险 3车+非车
}
}
ajax(params).then(res => {
})
let prepay_id = options.prepay_id;
console.log('prepay_id值:-----', prepay_id)
this.boardNew(prepay_id);
}
}
},
模板消息 方法 通过上述 boardNew 使用。
//模板消息
boardNew: function (prepay_id){
let openid = wx.getStorageSync('openid') || '';
let paymentParam = wx.getStorageSync('paymentParam');
let linkParam = paymentParam.linkParam;
let params = {
url: api.getWxTemplate,
contentType: 'application/json;charset=UTF-8',
showLoading: false,
data: {
touser: openid,
templateId: 'HkoIX1r6fSmVf_ip_0676QyZr4SU4_sShAIeoaxd8VA', //模板消息ID
page: 'pages/index/index',
formId: prepay_id,
data: {
keyword1: {
value: '¥ '+ linkParam.orderAmount
},
keyword2: {
value: '进入小程序可以查看更多活动和服务呦~!'
}
},
"emphasisKeyword": "keyword1.DATA"
}
}
console.log(params)
ajax(params).then(res => {
if (res.errCode == 0){
console.log(res.errmsg)
}
})
},