From d90f947c3b3e5b669573ec4e23e1a7ea907de8a7 Mon Sep 17 00:00:00 2001 From: zhangds Date: Wed, 3 Apr 2024 15:43:55 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=20=E5=8D=A1=E5=AF=86?= =?UTF-8?q?=E5=85=91=E6=8D=A2=E5=95=86=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- exchange.html | 56 ++++++++++++++++++++++++------------------- packkey/exchange.html | 16 +++++++++---- 2 files changed, 42 insertions(+), 30 deletions(-) diff --git a/exchange.html b/exchange.html index f94b5b9..47ce933 100644 --- a/exchange.html +++ b/exchange.html @@ -156,7 +156,7 @@ let goodsCount = null, goodsDetail = null; new Vue({ el: '#exchangePage', - data () { + data() { return { account: '', reaccount: '', @@ -189,7 +189,7 @@ ] }; }, - created () { + created() { document.title = localStorage.getItem('title'); let detailsConfig = JSON.parse(localStorage.getItem('product_detail')); goodsCount = sessionStorage.getItem('goodsCount'); @@ -227,7 +227,7 @@ }); }, methods: { - bindAvailable () { + bindAvailable() { if (goodsDetail.available != 1) { this.openErrorDialog(product_status(goodsDetail.available, goodsDetail)); return; @@ -235,7 +235,7 @@ }, /* 获取京东E卡短信 */ - sendJDSms () { + sendJDSms() { if (this.cunt === 60) { req.axiosPost('/key/order/jdSendSms', { code_batch_id: this.goodsDetail.code_batch_id, mobile: this.account }) .then((res) => { @@ -255,27 +255,27 @@ } }, - openErrorDialog (tip) { + openErrorDialog(tip) { this.maskshow = true; this.popboxtype = '提示'; this.tiptext = tip; this.popboxshow = true; }, - backgoodsFn () { + backgoodsFn() { if (goodsCount > 1) { window.location.replace('./homepage.html'); } else { history.go(-2); } }, - closeTip () { + closeTip() { this.suspension = false; }, - susTipFn () { + susTipFn() { this.suspension = true; }, // 单条弹框 - openDialog (tip) { + openDialog(tip) { this.promtshow = true; this.promttip = tip; const clr = setTimeout(() => { @@ -286,21 +286,27 @@ }, //刷新页面 - successchangeBtnFn () { + successchangeBtnFn() { window.location.replace(document.referrer); }, //兑换商品 - exchangeGoodsFn () { + exchangeGoodsFn() { if (goodsDetail.available != 1) { return this.openErrorDialog(product_status(goodsDetail.available, goodsDetail)); } + /* 卡密商品直接兑换 */ - if (this.goodInfo.product_type === 2 && this.goodInfo.card_show == 2 && this.backAble) { - this.maskshow = true; - this.popboxshow = true; - this.popboxtype = '兑换'; - return; + if (this.goodInfo.product_type === 2 && this.goodInfo.card_show == 2) { + /* 当只有一个卡密商品、为线上查看卡密且只能兑换一次时执行 */ + if (!this.backAble && this.goodsDetail.restrict == 1) { + return this.surexchangeBtn(); + } else { + this.maskshow = true; + this.popboxshow = true; + this.popboxtype = '兑换'; + return; + } } /* 当只有一个卡密商品、为线上查看卡密且只能兑换一次时执行 */ @@ -380,7 +386,7 @@ this.popboxtype = '兑换'; }, //确定兑换 - surexchangeBtn () { + surexchangeBtn() { this.maskshow = false; let self = this; let data = { @@ -434,14 +440,14 @@ }); }, //关闭弹出框,仅关闭弹框 - successchangeBtn () { + successchangeBtn() { this.maskshow = false; this.popboxshow = false; this.account = ""; this.reaccount = ""; this.jd_code = ''; }, - focusFn (a) { + focusFn(a) { let ele = document.querySelector('.ipt-acc'); setTimeout(function () { ele.scrollIntoView(false); @@ -450,7 +456,7 @@ }, 400); }, //关闭,关闭弹框 - closeBtn () { + closeBtn() { this.popboxshow = false; this.maskshow = false; this.account = ""; @@ -461,25 +467,25 @@ computed: { /* 手机号验证 */ - computedAccount () { + computedAccount() { return /^[1][3,4,5,6,7,8,9][0-9]{9}$/.test(this.account); }, /* 兑换按钮验证 */ - computedExChange () { + computedExChange() { return this.exchangeOpen || (this.goodInfo.product_type === 2 && this.goodInfo.card_show == 2) || this.goodInfo.is_e_card && this.computedAccount && this.jd_code.length === 6; } }, watch: { - account () { + account() { if ((this.account == this.reaccount) && this.account) { this.exchangeOpen = true; } else { this.exchangeOpen = false; } }, - reaccount () { + reaccount() { if ((this.account == this.reaccount) && this.account) { this.exchangeOpen = true; } else { @@ -488,7 +494,7 @@ }, productType: { immediate: true, - handler (newVal) { + handler(newVal) { this.maxlen = 50; this.acctype = "text"; if (newVal == 0) { diff --git a/packkey/exchange.html b/packkey/exchange.html index 8c4c2b9..8019e21 100644 --- a/packkey/exchange.html +++ b/packkey/exchange.html @@ -343,12 +343,18 @@ if (goodsDetail.available != 1) { return this.openErrorDialog(product_status(goodsDetail.available, goodsDetail)); } + /* 卡密商品直接兑换 */ - if (this.goodInfo.product_type === 2 && this.goodInfo.card_show == 2 && this.backAble) { - this.maskshow = true; - this.popboxshow = true; - this.popboxtype = '兑换'; - return; + if (this.goodInfo.product_type === 2 && this.goodInfo.card_show == 2) { + /* 当只有一个卡密商品、为线上查看卡密且只能兑换一次时执行 */ + if (!this.backAble && this.goodsDetail.restrict == 1) { + return this.surexchangeBtn(); + } else { + this.maskshow = true; + this.popboxshow = true; + this.popboxtype = '兑换'; + return; + } } /* 当只有一个卡密商品、为线上查看卡密且只能兑换一次时执行 */