Merge branch 'xingyy' into dev

# Conflicts:
#	pnpm-lock.yaml   resolved by xingyy version
This commit is contained in:
Phoenix 2025-04-18 16:54:35 +08:00
commit f5a51ffa7c
7 changed files with 2274 additions and 123 deletions

View File

@ -101,4 +101,12 @@ export async function contractView(data) {
method: 'POST',
data
})
}
export async function createBuyOrderV3(data) {
return await request( {
url:'/api/v1/m/auction/createBuyOrder/v3',
method: 'POST',
data
})
}

View File

@ -1,6 +1,6 @@
<script setup>
import {liveStore} from "~/stores/live/index.js";
import {createBuyOrder} from "~/api/goods/index.js";
import {createBuyOrder,createBuyOrderV3} from "~/api/goods/index.js";
import {goodStore} from "~/stores/goods/index.js";
import { showLoadingToast ,closeToast} from 'vant';
import {authStore} from "~/stores/auth/index.js";
@ -32,7 +32,7 @@ const confirmPay=async ()=>{
forbidClick: true,
});
const res=await createBuyOrder({
const res=await createBuyOrderV3({
buyUid:payment.value.buyUid,
price:payStatus.value===0?payment.value.leftPrice:amount.value,
currency:payment.value.leftCurrency,
@ -41,16 +41,18 @@ const confirmPay=async ()=>{
})
if (res.status===0){
checkoutSessionUrl.value=res.data.checkoutSessionUrl
payUid.value=res.data.payUid
router.push({
path:'/checkoutPage',
query:{
payUid:res.data.payUid,
returnUrl:'/payment/result',
stripeKey:res.data.checkoutSessionUrl
}
})
payment.value.payUid=res.data.payUid
router.push('/payment/qrcode')
// checkoutSessionUrl.value=res.data.checkoutSessionUrl
// payUid.value=res.data.payUid
// router.push({
// path:'/checkoutPage',
// query:{
// payUid:res.data.payUid,
// returnUrl:'/payment/result',
// stripeKey:res.data.checkoutSessionUrl
// }
// })
}
}
const handleInput = (e) => {

View File

@ -0,0 +1,43 @@
<template>
<div class="w-[100vw] h-screen-nav bg-[url('@/static/images/3532@2x.png')] bg-cover flex-grow-1 flex flex-col items-center pt-183px px-30px">
<div class="text-#000 text-16px mb-25px">等待销售员确认</div>
<img :src="qrCodeUrl" alt="" class="mb-10px">
<div class="text-#848484 text-14px">已生成订单确认二维码</div>
</div>
</template>
<script setup>
import QRCode from 'qrcode';
import { ref } from 'vue';
import {authStore} from "~/stores/auth/index.js";
const {payment}= authStore()
definePageMeta({
i18n: 'payment.title'
})
const qrCodeUrl=ref('')
async function generateQRCodeURL(text) {
try {
const url = await QRCode.toDataURL(text, {
width: 283,
margin: 1,
errorCorrectionLevel: 'H',
color: {
dark: '#2B53AC', // 使
light: '#ffffff' // 使
},
rendererOpts: {
quality: 1.0
}
});
return url;
} catch (err) {
console.error(err);
}
}
qrCodeUrl.value = await generateQRCodeURL(JSON.stringify({
type:'auction-order',
buyUid: payment.value.buyUid,
payUid:payment.value.payUid
}))
</script>

View File

@ -18,6 +18,7 @@ const localState = ref({
})
const groupByDate = (data) => {
if (!Array.isArray(data)) return []
return Object.values(data.reduce((acc, curr) => {
@ -48,8 +49,10 @@ const onRefresh = async () => {
const goPay = (item) => {
payment.value.leftPrice=item.leftCnyPrice
payment.value.nickName=item.nickName
payment.value.leftCurrency=item.leftCurrency
payment.value.buyUid=item.uuid
payment.value.artworkTitle=item?.auctionArtworkInfo?.artworkTitle
payment.value.auctionArtworkUuid=item?.auctionArtworkUuid
if (item.status===1){
router.push('/signature/protocol')

View File

@ -13,7 +13,9 @@ export const authStore = createGlobalState(() => {
leftPrice:'',
leftCurrency:'',
buyUid:'',
auctionArtworkUuid:''
auctionArtworkUuid:'',
payUid:'',
nickName:''
})
const payUid=useLocalStorage('payUid','')
return{

View File

@ -18,6 +18,7 @@
},
"dependencies": {
"@fingerprintjs/fingerprintjs": "^4.5.1",
"@intlify/message-compiler": "^11.1.3",
"@nuxtjs/i18n": "^9.1.1",
"@vue-office/pdf": "^2.0.10",
"@vueuse/components": "^12.8.2",

File diff suppressed because it is too large Load Diff