"use strict"; const common_vendor = require("../common/vendor.js"); const common_request = require("../common/request.js"); let request = new common_request.Request().http; const api = { // 支付 zfbPayment: "/app/live/liveOrder/aliPayment", // 支付宝付款 weChatPayment: "/app/live/liveOrder/weChatPayment" // 微信付款 // updateConfirm: (orderId, type) => `/app/live/liveOrder/updateConfirm/${orderId}/${type} `, // 取消/支付订单确认 }; function weChatPayment(data) { return new Promise((resolve, reject) => { request(api.weChatPayment, data, "POST", "application/json;charset=UTF-8").then((res) => { invokePayment(res.data).then(resolve).catch((err) => { handlePaymentError(err); reject(err); }); }).catch((err) => { handlePaymentError(err); reject(err); }); }); } function invokePayment(payData) { return new Promise((resolve, reject) => { common_vendor.index.requestPayment({ provider: "wxpay", ...payData, // 直接展开小程序所需参数 success: (res) => { common_vendor.index.showToast({ title: "支付成功" }); resolve(res); }, fail: (err) => { reject(new Error(formatError(err))); } }); }); } function formatError(err) { if (err.errMsg) { if (err.errMsg.includes("cancel")) return "支付已取消"; if (err.errMsg.includes("fail")) return "支付失败"; } return err.message || "支付异常"; } function handlePaymentError(err) { console.error("[支付错误]", err); common_vendor.index.showToast({ title: err.message, icon: "none", duration: 3e3 }); } exports.weChatPayment = weChatPayment;