diff --git a/src/pages/gameInfo.wpy b/src/pages/gameInfo.wpy index 7418e2f..157a55f 100644 --- a/src/pages/gameInfo.wpy +++ b/src/pages/gameInfo.wpy @@ -71,10 +71,11 @@ showMore: false, record: {}, typeStr: '其他', + score: 0, bottomActionCfg: { hide: false, - mainBtnIconClass: 'icon-merge', - mainBtnTitle: '开始游戏', + mainBtnIconClass: 'icon-cart', + mainBtnTitle: '开通游戏', secondBtnIconClass: 'icon-coin-yen', secondBtnTitle: '领取金币' } @@ -89,25 +90,16 @@ }, bottomMainTap(e) { console.log('bottomMainTap'); - http.post('/api/emulated/play_game', { gid: this.id }) - .then(res => { - console.log('success update game history'); - // let url = `${g.gameBase}/gba/${this.id}`; - jcEvent.emit('update-recent-games', {}); - let url = 'http://www.baidu.com'; - wepy.navigateTo({ - url: '/pages/game?link=' + url - }); - }) - .catch(err => { - console.log('err update game history'); - }); + if (this.record.owned) { + this.playGame(); + } else { + //显示购买游戏界面 + this.showBuyMenu(); + } + }, bottomSecondTap(e) { console.log('bottomSecondTap'); - wepy.navigateTo({ - url: '/pages/product?gid=' + this.id - }); }, toggleShowMore() { this.showMore = !this.showMore; @@ -118,8 +110,73 @@ this.id = decodeURIComponent(params.id); console.log(this.id); this.getRecord(); + this.getUserInfo(); } + async showBuyMenu() { + try { + let res = await wepy.showActionSheet({ + itemList: [`金币开通(${this.record.score})`, '促销开通'] + }); + if (!res.cancel) { + if (res.tapIndex === 0) { + console.log('点击金币开通'); + if (this.score < this.record.score) { + console.log('金币不足'); + wepy.showToast({ + title: '金币不足', + icon: 'none', + duration: 2000 + }) + } else { + this.buyGame(); + } + } else { + wepy.navigateTo({ + url: '/pages/product?gid=' + this.id + }); + } + } + } catch (err) { + console.log('cancel select') + } + + } + playGame() { + http.post('/api/emulated/play_game', { gid: this.id }) + .then(res => { + console.log('success update game history'); + // let url = `${g.gameBase}/gba/${this.id}`; + jcEvent.emit('update-recent-games', {}); + let url = 'http://www.baidu.com'; + wepy.navigateTo({ + url: '/pages/game?link=' + url + }); + }) + .catch(err => { + console.log('err update game history'); + }); + } + async buyGame() { + try { + let res = await http.post(`/api/emulated/buy_game`, { gid: this.id }); + if (res.errcode === 0) { + wepy.showToast({ + title: '开通成功', + icon: 'none', + duration: 2000 + }) + this.getRecord(); + } + } catch (err) { + console.log('buy game error'); + wepy.showToast({ + title: '开通失败', + icon: 'none', + duration: 2000 + }) + } + } async getRecord() { let self = this; try { @@ -130,6 +187,13 @@ if (this.record.type <= g.gameTypes.length) { this.typeStr = g.gameTypes[this.record.type - 1]; } + if (this.record.owned) { + this.bottomActionCfg.mainBtnIconClass = 'icon-merge'; + this.bottomActionCfg.mainBtnTitle = '开始游戏'; + } else { + this.bottomActionCfg.mainBtnIconClass = 'icon-cart'; + this.bottomActionCfg.mainBtnTitle = '开通游戏'; + } self.loading = false; self.$apply(); } else { @@ -141,5 +205,14 @@ self.loading = false; } } + async getUserInfo() { + try { + let res = await http.post('/api/emulated/user_info', {type: 'score'}); + this.score = res.score; + this.$apply(); + } catch (err) { + console.log('error get user info'); + } + } } diff --git a/src/pages/index.wpy b/src/pages/index.wpy index 17e0afb..a570768 100644 --- a/src/pages/index.wpy +++ b/src/pages/index.wpy @@ -55,7 +55,8 @@ current: 0, loading: false, noData: true, - noMore: false + noMore: false, + gameSet: new Set() }; methods = { @@ -116,6 +117,7 @@ getAllData() { this.getRecords(); this.getRecendGames(); + this.getUserInfo(); } onUnload() { jcEvent.remove('login-finished', this); @@ -144,6 +146,18 @@ console.log('error get recent games'); } } + async getUserInfo() { + try { + let res = await http.post('/api/emulated/user_info', {type: 'all'}); + console.log(res); + for(let game of res.games) { + this.gameSet.add(game.gid); + } + this.$apply(); + } catch (err) { + console.log('error get user info'); + } + } async getRecords() { let self = this; try { diff --git a/src/style/font.wxss b/src/style/font.wxss index 8cc6d58..0f32663 100644 --- a/src/style/font.wxss +++ b/src/style/font.wxss @@ -1,6 +1,6 @@ @font-face { font-family: 'xmjlicons'; - src: url(data:font/truetype;charset=utf-8;base64,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) format('truetype'); + src: url(data:font/truetype;charset=utf-8;base64,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) format('truetype'); font-weight: normal; font-style: normal; } @@ -20,6 +20,9 @@ -moz-osx-font-smoothing: grayscale; } +.icon-cart:before { + content: "\e93a"; +} .icon-coin-yen:before { content: "\e93e"; }