增加金币开通游戏的功能

This commit is contained in:
zhl 2019-02-20 21:56:38 +08:00
parent 236f685c8a
commit 8370c8b9b9
3 changed files with 110 additions and 20 deletions

View File

@ -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,6 +90,59 @@
},
bottomMainTap(e) {
console.log('bottomMainTap');
if (this.record.owned) {
this.playGame();
} else {
//显示购买游戏界面
this.showBuyMenu();
}
},
bottomSecondTap(e) {
console.log('bottomSecondTap');
},
toggleShowMore() {
this.showMore = !this.showMore;
}
};
onLoad(params) {
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');
@ -102,24 +156,27 @@
.catch(err => {
console.log('err update game history');
});
},
bottomSecondTap(e) {
console.log('bottomSecondTap');
wepy.navigateTo({
url: '/pages/product?gid=' + this.id
});
},
toggleShowMore() {
this.showMore = !this.showMore;
}
};
onLoad(params) {
this.id = decodeURIComponent(params.id);
console.log(this.id);
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');
}
}
}
</script>

View File

@ -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 {

View File

@ -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";
}