feat: 支付

This commit is contained in:
黄泽群
2026-07-23 14:00:22 +08:00
committed by charles
parent 15dd3d7b5b
commit 3629555911
8 changed files with 1098 additions and 1018 deletions
+111 -78
View File
@@ -1,5 +1,4 @@
import { feedback } from '@/api/payment.js';
import { feedback } from "@/api/payment.js";
/**
* 微信支付
@@ -8,37 +7,66 @@ import { feedback } from '@/api/payment.js';
* @param {Object} orderNum 支付的订单编号
*/
export function appWxpayFun(alipay, orderId, orderNum) {
const type = alipay.type;
const orderStr = alipay.orderStr;
console.log("微信支付---",alipay)
if (type === "app") {// app
const orderInfo = {
"appid": alipay.appId, // 微信开放平台 - 应用 - AppId,注意和微信小程序、公众号 AppId 可能不一致
"noncestr": alipay.nonceStr, // 随机字符串
"package": "Sign=WXPay", // 固定值
"partnerid": alipay.partnerId, // 微信支付商户号
"prepayid": alipay.prepayId, // 统一下单订单号
"timestamp": alipay.timeStamp, // 时间戳(单位:秒)
"sign": alipay.sign // 签名,这里用的 MD5/RSA 签名
};
uni.requestPayment({
provider: "wxpay",
orderInfo: orderInfo,
success: function (res) {
console.log('success:' + res);
payFeedbackFun(orderId, orderNum, 1);
jumpWayOk();
},
fail: function (err) {
console.log('fail:', err);
jumpWayError();
}
});
} else if (type === "h5") {// h5
uni.navigateTo({
url: `/pages/other_package/payment_processing/payment_processing?link=${encodeURIComponent(orderStr)}&orderNum=` + orderNum // 假设有一个专门的支付页面来处理支付链接
});
}
const type = alipay.type;
const orderStr = alipay.orderStr;
console.log("微信支付---", alipay,type);
if (type === "app") {
// app
const orderInfo = {
appid: alipay.appId, // 微信开放平台 - 应用 - AppId,注意和微信小程序、公众号 AppId 可能不一致
noncestr: alipay.nonceStr, // 随机字符串
package: "Sign=WXPay", // 固定值
partnerid: alipay.partnerId, // 微信支付商户号
prepayid: alipay.prepayId, // 统一下单订单号
timestamp: alipay.timeStamp, // 时间戳(单位:秒)
sign: alipay.sign, // 签名,这里用的 MD5/RSA 签名
};
uni.requestPayment({
provider: "wxpay",
orderInfo: orderInfo,
success: function (res) {
console.log("success:" + res);
payFeedbackFun(orderId, orderNum, 1);
jumpWayOk();
},
fail: function (err) {
console.log("fail:", err);
jumpWayError();
},
});
} else if (type === "wechatMiniProgram") {
const orderInfo = {
// "appid": alipay.appId, // 微信开放平台 - 应用 - AppId,注意和微信小程序、公众号 AppId 可能不一致
nonceStr: alipay.nonceStr, // 微信支付商户号
package: alipay.packageValue, // 统一下单订单号
timeStamp: alipay.timeStamp, // 时间戳(单位:秒)
signType: "RSA",
paySign: alipay.sign, // 签名,这里用的 MD5/RSA 签名
};
console.log("微信小程序支付---", orderInfo);
uni.requestPayment({
...orderInfo,
success: function (res) {
console.log("success:" + res);
payFeedbackFun(orderId, orderNum, 1);
jumpWayOk();
},
fail: function (err) {
console.log("fail:", err);
jumpWayError();
},
});
} else if (type === "h5") {
// h5
uni.navigateTo({
url:
`/pages/other_package/payment_processing/payment_processing?link=${encodeURIComponent(
orderStr
)}&orderNum=` + orderNum, // 假设有一个专门的支付页面来处理支付链接
});
}
}
/**
@@ -48,45 +76,50 @@ export function appWxpayFun(alipay, orderId, orderNum) {
* @param {Object} orderNum 支付的订单编号
*/
export function zfbPayFun(alipay, orderId, orderNum) {
console.log("alipay", alipay);
const type = alipay.type;
const orderStr = alipay.orderStr;
if (type === "h5") {// h5
uni.navigateTo({
url: `/pages/other_package/payment_processing/payment_processing?link=${encodeURIComponent(orderStr)}&orderNum=` + orderNum // 假设有一个专门的支付页面来处理支付链接
});
} else if (type === "app") { // app
uni.requestPayment({
provider: 'alipay',
orderInfo: orderStr,
success: function (res) {
console.log("zfbPayFun res", res);
payFeedbackFun(orderId, orderNum, 1);
jumpWayOk();
},
fail: function (err) {
console.error("支付宝支付error", err);
jumpWayError();
}
});
}
// return new Promise((resolve, reject) => {
// resolve(res);
// // reject(err);
// });
};
console.log("alipay", alipay);
const type = alipay.type;
const orderStr = alipay.orderStr;
if (type === "h5") {
// h5
uni.navigateTo({
url:
`/pages/other_package/payment_processing/payment_processing?link=${encodeURIComponent(
orderStr
)}&orderNum=` + orderNum, // 假设有一个专门的支付页面来处理支付链接
});
} else if (type === "app") {
// app
uni.requestPayment({
provider: "alipay",
orderInfo: orderStr,
success: function (res) {
console.log("zfbPayFun res", res);
payFeedbackFun(orderId, orderNum, 1);
jumpWayOk();
},
fail: function (err) {
console.error("支付宝支付error", err);
jumpWayError();
},
});
}
// return new Promise((resolve, reject) => {
// resolve(res);
// // reject(err);
// });
}
// 跳转到支付成功页面
export function jumpWayOk() {
uni.navigateTo({
url: "/pages/order_package/order_submit_ok/order_submit_ok",
})
uni.navigateTo({
url: "/pages/order_package/order_submit_ok/order_submit_ok",
});
}
// 跳转到支付失败页面
export function jumpWayError() {
uni.navigateTo({
url: "/pages/order_package/order_submit_error/order_submit_error",
})
uni.navigateTo({
url: "/pages/order_package/order_submit_error/order_submit_error",
});
}
/**
* 支付结果回调
@@ -95,15 +128,15 @@ export function jumpWayError() {
* @param {Object} status 反馈结果【0:失败,1:成功】
*/
async function payFeedbackFun(orderId, orderNum, status) {
const params = {
orderId,
orderNum,
status,
}
console.log("params", params);
const response = await feedback(params);
console.log("payFeedbackFun response", response);
if (response && response.bizcode !== 100) {
console.error("反馈结果", response);
}
}
const params = {
orderId,
orderNum,
status,
};
console.log("params", params);
const response = await feedback(params);
console.log("payFeedbackFun response", response);
if (response && response.bizcode !== 100) {
console.error("反馈结果", response);
}
}