Browse Source

Merge branch 'dev_YWQ' into dev

master
HolyKnightIX 1 year ago
parent
commit
61a4f82fc9
2 changed files with 52 additions and 12 deletions
  1. +12
    -0
      src/api/coin.js
  2. +40
    -12
      src/pages/index/buyCoin.vue

+ 12
- 0
src/api/coin.js View File

@@ -39,3 +39,15 @@ export function createPay(data) {
data
})
}

/**
* @description:获取订单支付状态
* @param orderNumber
* @return: data
*/
export function getOrderStatus(orderNumber) {
return request({
url: `api/productOrder/findStatus?orderNumber=${orderNumber}`,
method: 'get'
})
}

+ 40
- 12
src/pages/index/buyCoin.vue View File

@@ -21,11 +21,17 @@
<script setup>
//#region 导入
import { ref, reactive } from "vue";
import { getCoinList, createOrder, createPay } from "../../api/coin.js";
import {
getCoinList,
createOrder,
createPay,
getOrderStatus,
} from "../../api/coin.js";
import { userInfoModules } from "@/store/modules/userInfo";
const userInfoModulesPinia = userInfoModules();

const active = ref("");
const orderNumber = ref("");
const coinList = ref([]);
function select(item) {
active.value = item.id;
@@ -41,6 +47,7 @@ const getList = async () => {
try {
const res = await getCoinList(5, 1);
coinList.value = res.data.list;
active.value = res.data.list[0].id;
console.log(coinList.value, "coinList.value");
} catch (error) {
console.log(error, "error");
@@ -49,11 +56,17 @@ const getList = async () => {

// 创建订单
const createProductOrder = async () => {
uni.showLoading({
title: "加载中...",
mask: true,
});
try {
const res = await createOrder(1);
const res = await createOrder(active.value);
console.log(res.data, "res");
createProductPay(res.data);
orderNumber.value = res.data;
} catch (error) {
uni.hideLoading();
console.log(error, "error");
}
};
@@ -68,35 +81,50 @@ const createProductPay = async (orderNumber) => {
payVendor: 1, //Number,1:微信;2:抖音
};
const res = await createPay(data);
console.log(res, "res");
startPay(res.data);
} catch (error) {
uni.hideLoading();
console.log(error, "error");
}
};

// 拉起收银台
const startPay = (data) => {
var orderInfo = {
appid: "wx499********7c70e",
partnerid: "148*****52",
prepayid: "wx202254********************fbe90000",
package: "Sign=WXPay",
noncestr: "c5sEwbaNPiXAF3iv",
timestamp: 1597935292,
sign: "A842B45937F6EFF60DEC7A2EAA52D5A0",
const orderInfo = {
package: data.package,
nonceStr: data.nonceStr,
timeStamp: data.timeStamp,
paySign: data.paySign,
signType: data.signType,
};
console.log(orderInfo, "orderInfo");
uni.hideLoading();
uni.requestPayment({
provider: "wxpay", //固定值为"wxpay"
orderInfo: orderInfo,
...orderInfo,
success: function (res) {
console.log(res, "res");
getStatusOfOrder(orderNumber.value);
},
fail: function (err) {
uni.showToast({
title: "支付失败!",
icon: "error",
});
console.log("支付失败", err);
},
});
};

const getStatusOfOrder = async (orderNumber) => {
try {
const res = await getOrderStatus(orderNumber);
console.log(res, "getStatusOfOrder");
} catch (error) {
console.log(error, "error");
}
};

getList();
</script>



Loading…
Cancel
Save