小程序商品下單支付
用于小(xiao)程(cheng)序的商品下(xia)單支付操作
使用步驟
第一步:配置接口地址
在 config.js 文件中(zhong)找(zhao)到 config 設置(zhi)
第二步:檢查接口定義
搜索 shop_order_pay 接口是(shi)否(fou)已經(jing)存在定義(yi)(有的小程序模板已經(jing)定義(yi))
如果沒有定義,在 config 底部(bu)新增(zeng)以下代碼(ma):
shopOrderPayUrl: getApiUrl('shop_order_pay'并復制紅色部分待用。如果已經存在,則直接復制使用即可。第三步:接口調用請求
如果定義名稱不同,使用第二步復制的內(nei)容(rong)替換紅框部分
/**
* 訂單提(ti)交
* 接收(shou)參(can)數
* 無需接(jie)收參數,從(cong)頁面(mian)數據中(zhong)取值(zhi)
* 接口(kou)傳參(can)
* addr_id:收貨地址ID
* prom_type:商品類型(虛擬(ni)、實(shi)物(wu))
* pay_type:支付(fu)類型(微信、會(hui)員余額)
* remark:訂單備注
* coupon_id:優惠(hui)券ID
* querystr:訂(ding)單數據密鑰字符串
*/
onSubmitOrder() {
let _this = this;
// 防止重復提交訂單
if (_this.data.disabled) return false;
// 驗(yan)證是否(fou)需要(yao)添加收(shou)貨地(di)址
let prom_type = _this.data.prom_type;
let addr_id = _this.data.address.addr_id || 0;
if (0 == addr_id && 0 == prom_type) {
App.showError('請添加收貨地址(zhi)', function() {
_this.onSelectAddress();
});
return false;
}
// 接口傳參
let postData = {
addr_id: addr_id,
prom_type: prom_type,
pay_type: _this.data.curPayType,
remark: _this.data.remark || '',
coupon_id: _this.data.selectCouponId,
querystr: _this.data.options.querystr,
};
// 秒殺商品參數
if (_this.data.product_data[0].active_time_id) {
postData.order_source = '20';
postData.order_source_id = _this.data.product_data[0].active_time_id;
}
App._requestPost(_this, App.globalData.config.shopOrderPayUrl, postData,
function (res) {
let order_id = res.data.OrderData.order_id;
let order_code = res.data.OrderData.order_code;
_this.setData({ order_id, order_code });
if (_this.data.curPayType == 1) {
// 微(wei)信支付
if (res.data.WeChatPay.return_code == 'FAIL') {
App.showError(res.data.WeChatPay.return_msg);
return false;
}
App.wxPayment({
order_id: order_id,
payment: res.data.WeChatPay,
success: res1 => {
_this._orderPayDealWith();
},
fail: res1 => {
if (!res.msg.error) App.showError(res.msg.error);
},
});
} else if (_this.data.curPayType == 2) {
// 余額支(zhi)付(fu)
App.showSuccess(res.msg, () => {
_this.redirectToOrderIndex();
});
}
},
function (res) {
App.showError(res.msg);
}
);
},
接口傳值
addr_id:收貨地址ID,實物商品必傳
prom_type:商品類型(0實物、1虛擬),必傳
pay_type:支付類型(1微信、2余額),必傳
remark:訂單備注,選填
coupon_id:優惠券ID,選填
querystr:訂單數據密鑰字符串,必傳
文檔最后更新時間:2026-01-13 15:00:08
未解決你的問題?請到「問答社區」反饋你遇到的問題
