浏览代码

招聘会门票发起订单限制

Xiao_123 2 月之前
父节点
当前提交
22af6fc7ae
共有 1 个文件被更改,包括 13 次插入12 次删除
  1. 13 12
      src/views/recruit/enterprise/jobFair/index.vue

+ 13 - 12
src/views/recruit/enterprise/jobFair/index.vue

@@ -23,7 +23,7 @@
     @close="handleClose"
   >
     <div class="color-warning mb-5">
-      <p>鉴于您当前没有参加招聘会的权限</p>
+      <p>您当前没有参加招聘会的权限</p>
       <p>您可以通过下方扫码购买招聘会门票参与~</p>
     </div>
     <div v-if="payType" id="codeBox" class="code pa-0 resume-box">
@@ -48,7 +48,7 @@
             </div>
           </div>
           <div class="code-left" v-if="payQrCodeTxt">
-            <QrCode :text="payQrCodeTxt" :disabled="!remainderTimer" :width="170" @refresh="refreshQRCode" />
+            <QrCode :text="payQrCodeTxt" :disabled="!remainderTimer" :width="170" @refresh="getUnpaidOrderList" />
           </div>
           <div class="mt-52" style="color: var(--v-error-base);">
             扫码支付时请勿离开
@@ -116,12 +116,14 @@ const getCodeList = async () => {
 
 const payQrCodeTxt = ref('')
 
-// 2.发起充值
+// 2.发起支付
 const payOrder = ref({})
 let maxCount = 0
 const getUnpaidOrderList = async () => {
+  // 查询是否有未支付的订单
   const data = await getUnpaidOrder({ spuId: info.value.id, type: 5 })
   if (!data) {
+    // 没有则创建订单
     await createTradeOrder({ price: (info.value.admissionPrice - 0), spuId: info.value.id, spuName: info.value.title, type: 5 })
     if (maxCount > 3) return // 避免死循环
     maxCount++
@@ -182,10 +184,6 @@ const paySubmit = async () => {
   }
 }
 
-const refreshQRCode =() => { // 刷新二维码
-  getUnpaidOrderList()
-}
-
 const remainderTimer = ref(null)
 const countdownTime = 60000 * 3 // 倒计时三分钟
 let remainder = 0
@@ -233,6 +231,7 @@ const handleClose = () => {
   payQrCodeTxt.value = ''
   payTypeList.value = []
   showDialog.value = false
+  info.value = {}
 }
 
 // 立即加入
@@ -242,11 +241,13 @@ const handleBlockEnterprise = async (val) => {
     const data = await getCheckJobFairPermission(val.id)
     if (data) router.push(`/recruit/enterprise/jobFair/details/${val.id}`)
   } catch {
-    // 购买门票
-    info.value = val
-    if (timer.value) clearInterval(timer.value); timer.value = null
-    await getCodeList()
-    showDialog.value = true
+    if (val?.admissionPrice && val?.admissionPrice > 0) {
+      // 购买门票
+      info.value = val
+      if (timer.value) clearInterval(timer.value); timer.value = null
+      await getCodeList()
+      showDialog.value = true
+    }
   }
 }
 </script>