diff --git a/pages/basketballGym/index.js b/pages/basketballGym/index.js index f87946f..3bd71c0 100644 --- a/pages/basketballGym/index.js +++ b/pages/basketballGym/index.js @@ -21,11 +21,14 @@ Page({ */ data: { venues: {}, - isShowBuyVip: false, - buyVipObj: {}, + // isShowBuyVip: false, + // buyVipObj: {}, showUnclickMask: false, - showCardMask: false, + // showCardMask: false, + orderSn: '000', + payMoney: 0, flg: 100, + isPayed: false, msg: '', isWxLogin: false, isGoHome: false, @@ -123,6 +126,70 @@ Page({ }); }, + checkIsPayed(orderSn) { + this.setData({ + flg: 777, + msg: '正在查询支付结果...' + }) + let that = this; + setTimeout(function(){ + app.$api.memberIsPayed({ + orderSn: orderSn + }).then(res => { + if (res.isPayed) { + that.setData({ + flg: 0, + msg: '' + }) + that.showBarcode(orderSn) + } else { + that.setData({ + flg: 777, + msg: '正在确认支付结果,请勿退出...' + }) + //第二次 + setTimeout(function(){ + app.$api.memberIsPayed({ + orderSn: orderSn + }).then(res => { + if (res.isPayed) { + that.setData({ + flg: 0, + msg: '' + }) + that.showBarcode(orderSn) + } else { + that.setData({ + flg: 777, + msg: '最后一次确认订单状态...' + }) + // 第三次 + setTimeout(function(){ + app.$api.memberIsPayed({ + orderSn: orderSn + }).then(res => { + if (res.isPayed) { + that.setData({ + flg: 0, + msg: '' + }) + that.showBarcode(orderSn) + }else { + that.setData({ + flg: 999, + msg: '订单未成功支付' + }) + } + }); + },5000) + } + }); + },5000) + } + }); + },5000) + }, + // 打开导航, opnGPS() { wx.openLocation({ @@ -134,18 +201,18 @@ Page({ }, // 充值 - recharge() { - if (!wx.getStorageSync('accessToken')) { - wx.setStorageSync('history', getCurrentPageUrl()); - wx.redirectTo({ - url: '/pages/login/index', - }) - return - } - wx.navigateTo({ - url: '/pages/myAccount/index', - }) - }, + // recharge() { + // if (!wx.getStorageSync('accessToken')) { + // wx.setStorageSync('history', getCurrentPageUrl()); + // wx.redirectTo({ + // url: '/pages/login/index', + // }) + // return + // } + // wx.navigateTo({ + // url: '/pages/myAccount/index', + // }) + // }, // 打电话 callPhone() { @@ -155,20 +222,20 @@ Page({ }, // 购买套餐 - nowBuy(e) { - let index = e.currentTarget.dataset.index; - if (!wx.getStorageSync('accessToken')) { - wx.setStorageSync('history', getCurrentPageUrl()); - wx.redirectTo({ - url: '/pages/login/index', - }) - return - } - this.setData({ - isShowBuyVip: true, - buyVipObj: this.data.venues.cards[index] - }) - }, + // nowBuy(e) { + // let index = e.currentTarget.dataset.index; + // if (!wx.getStorageSync('accessToken')) { + // wx.setStorageSync('history', getCurrentPageUrl()); + // wx.redirectTo({ + // url: '/pages/login/index', + // }) + // return + // } + // this.setData({ + // isShowBuyVip: true, + // buyVipObj: this.data.venues.cards[index] + // }) + // }, // 我要进场 enter() { @@ -177,19 +244,11 @@ Page({ }).then(res => { this.setData({ flg: res.join.flg, - msg: res.join.msg + msg: res.join.msg, + payMoney: res.join.money }) if (res.join.flg == 0) { - drawQrcode({ - width: 180, - height: 180, - x: 10, - y: 10, - canvasId: 'myQrcode', - // ctx: wx.createCanvasContext('myQrcode'), - typeNumber: 10, - text: res.join.barcode - }) + this.showBarcode('000') } }, err => { console.log(err); @@ -204,19 +263,11 @@ Page({ }).then(res => { this.setData({ flg: res.out.flg, - msg: res.out.msg + msg: res.out.msg, + payMoney: res.out.money }) - if (res.out.flg == 0){ - drawQrcode({ - width: 180, - height: 180, - x: 10, - y: 10, - canvasId: 'myQrcode', - // ctx: wx.createCanvasContext('myQrcode'), - typeNumber: 10, - text: res.out.barcode - }) + if (res.out.flg == 0) { + this.showBarcode('000') } }, err => { console.log(err); @@ -238,64 +289,64 @@ Page({ }, // 关闭购买vip弹框 - closeBuyVipPopup() { - this.setData({ - isShowBuyVip: false - }) - }, + // closeBuyVipPopup() { + // this.setData({ + // isShowBuyVip: false + // }) + // }, // 购买Vip - buyVip() { - let that = this; - this.setData({ - showUnclickMask: true - }) - app.$api.memberCardOrderCreate({ - cardType: this.data.buyVipObj.cardType, - num: 1, - type: this.data.venues.type, - venueId: this.data.venues.id - }).then(res => { - app.$pay.wxPay(res.pay).then(res => { - that.setData({ - isShowBuyVip: false, - showUnclickMask: false - }) - }, err => { - that.setData({ - isShowBuyVip: false, - showUnclickMask: false - }) - - }) - }, err => { - // console.log(err); - this.setData({ - isShowBuyVip: false, - showUnclickMask: false - }) - if (err.data.err_code == 30022) { - this.setData({ - isWxLogin: true, - isShowBuyVip: false - }) - } - }) - }, + // buyVip() { + // let that = this; + // this.setData({ + // showUnclickMask: true + // }) + // app.$api.memberCardOrderCreate({ + // cardType: this.data.buyVipObj.cardType, + // num: 1, + // type: this.data.venues.type, + // venueId: this.data.venues.id + // }).then(res => { + // app.$pay.wxPay(res.pay).then(res => { + // that.setData({ + // isShowBuyVip: false, + // showUnclickMask: false + // }) + // }, err => { + // that.setData({ + // isShowBuyVip: false, + // showUnclickMask: false + // }) + // + // }) + // }, err => { + // // console.log(err); + // this.setData({ + // isShowBuyVip: false, + // showUnclickMask: false + // }) + // if (err.data.err_code == 30022) { + // this.setData({ + // isWxLogin: true, + // isShowBuyVip: false + // }) + // } + // }) + // }, // 关闭 - cancelCardMask() { - this.setData({ - showCardMask: false - }) - }, + // cancelCardMask() { + // this.setData({ + // showCardMask: false + // }) + // }, // 开启会员卡提示 - showCardContent() { - this.setData({ - showCardMask: true - }) - }, + // showCardContent() { + // this.setData({ + // showCardMask: true + // }) + // }, // 关闭提示框 cancelDeleteDialog() { @@ -306,16 +357,59 @@ Page({ // 点击提示框确认 confirmDeleteDialog() { - if (this.data.flg == 2) { - wx.navigateTo({ - url: '/pages/myAccount/index?isPass=1', + // 去支付 + app.$api.basketOrder({ + venueId: this.data.venues.id, + payMoney: this.data.payMoney + }).then(res => { + this.setData({ + orderSn: res.pay.orderSn }) - } - if (this.data.flg == 1) { - wx.navigateTo({ - url: '/pages/facialCapturing/index?isPass=1', + app.$pay.wxPay(res.pay).then(res => { + console.log('支付成功了') + this.checkIsPayed(this.data.orderSn) + }, err => { + console.log('支付失败') + this.setData({ + flg: 999, + msg: '支付失败,用户取消支付' + }) }) - } + }, err => { + if (err.data.err_code == 30022) { + this.setData({ + isWxLogin: true, + }) + } + }) + }, + + showBarcode(orderSn) { + app.$api.generateBarcode({ + venueId: this.data.venues.id, + enterFlag: this.data.venues.enterFlag, + orderSn: orderSn + }).then(res => { + this.setData({ + flg: 0 + }) + drawQrcode({ + width: 180, + height: 180, + x: 10, + y: 10, + canvasId: 'myQrcode', + // ctx: wx.createCanvasContext('myQrcode'), + typeNumber: 10, + text: res.barcode + }) + }, err => { + console.log(err) + this.setData({ + flg: 999, + msg: '生成二维码失败' + }) + }); }, // 取消授权登录 diff --git a/pages/basketballGym/index.wxml b/pages/basketballGym/index.wxml index 66e1f7b..e6ea0f7 100644 --- a/pages/basketballGym/index.wxml +++ b/pages/basketballGym/index.wxml @@ -29,7 +29,7 @@ 按时间段收费 - 充值 + 收费说明: @@ -43,25 +43,25 @@ - - - - - VIP会员享受专属特权 - - - - - {{item.cardName}} - ¥{{item.price}} - 立即购买 - - - 单次 - 选购 - 立即购买 - - + + + + + + + + + + + + + + + + + + + @@ -103,23 +103,59 @@ - - - - 会员卡购买 - - - - - 会员卡类型 - {{buyVipObj.cardName}} - - - 价格 - ¥{{buyVipObj.price}} + + + + + + + + + + + + + + + + + + + + + + + + + + 请稍候 + + + + + 订单确认中 + + + {{msg}} + + + + + + + + + + + 提示 + + + + + + {{msg}} - 确认支付 @@ -128,7 +164,7 @@ - 门禁异常 + 异常信息 @@ -152,7 +188,7 @@ - + diff --git a/pages/basketballGym/index.wxss b/pages/basketballGym/index.wxss index 2a1ab8a..7d28aec 100644 --- a/pages/basketballGym/index.wxss +++ b/pages/basketballGym/index.wxss @@ -166,6 +166,13 @@ border-radius: 10rpx; } +.in-step-popup .medium-body { + width: 600rpx; + height: 300rpx; + background: #252330; + border-radius: 10rpx; +} + .in-step-popup .small-body { width: 600rpx; height: 222rpx; diff --git a/pages/myAccount/index.js b/pages/myAccount/index.js index c1e670e..cbbe191 100644 --- a/pages/myAccount/index.js +++ b/pages/myAccount/index.js @@ -110,15 +110,17 @@ Page({ rechargeId: this.data.recharges[this.data.selectIndex].id }).then(res => { app.$pay.wxPay(res.pay).then(res => { - if (this.data.options.isPass == 1) { - wx.redirectTo({ - url: '/pages/facialCapturing/index?isPass=' + 1, - }) - } else { + // if (this.data.options.isPass == 1) { + // wx.redirectTo({ + // url: '/pages/facialCapturing/index?isPass=' + 1, + // }) + // } else { + console.log('支付成功了') this.getData(); this.data.isUnClick = false; - } + // } }, err => { + console.log(err) this.data.isUnClick = false; }) }, err => { diff --git a/utils/api.js b/utils/api.js index 86a5863..42ff964 100644 --- a/utils/api.js +++ b/utils/api.js @@ -301,6 +301,18 @@ export default { venueOut(params) { return fetchGet('/venue/out', params, true); }, + // 篮球馆下订单 + basketOrder(params) { + return fetchPost('/venue/basketball/pay', params, true); + }, + // 篮球馆下订单 + generateBarcode(params) { + return fetchPost('/venue/generate/barcode', params, true); + }, + // 判断是否支付成功 + memberIsPayed(params) { + return fetchPost('/member/isPayed', params, true); + }, /** * 个人中心