diff --git a/src/api/game_data.ts b/src/api/game_data.ts index 1e84f1a..628fc84 100644 --- a/src/api/game_data.ts +++ b/src/api/game_data.ts @@ -1,4 +1,5 @@ const DATA_BASE = 'https://sps.kingsome.cn' +const JC_DATA_BASE = 'https://ghost.kingsome.cn/api/svr' export const searchGames = (params: any) => { let data = {skip: 0, limit: 10} @@ -23,8 +24,34 @@ export const getGameInfo = (gameId: string) => { uni.request({ url: `${DATA_BASE}/getgameinfoext`, data, - success: (res) => { - resolve && resolve(res.data); + success: (res: any) => { + if (!res.data.oldGameId) { + reject && reject('blank') + } else { + resolve && resolve(res.data); + } + + }, + fail: (err) => { + reject && reject(err) + } + }); + }) +} + +export const getGameInfoJC = (gameId: string) => { + let data = {oldGameId: gameId} + return new Promise((resolve, reject) => { + uni.request({ + url: `${JC_DATA_BASE}/getgameinfoext`, + data, + success: (res: any) => { + if (!res.data.errcode) { + resolve && resolve(res.data.data); + } else { + reject && reject(res.data.errmsg) + } + }, fail: (err) => { reject && reject(err) @@ -39,8 +66,33 @@ export const getGamePrice = (gameId: string, nums: number = 0) => { uni.request({ url: `${DATA_BASE}/getgameprice`, data, - success: (res) => { - resolve && resolve(res.data); + success: (res: any) => { + if (!res.data.oldGameId) { + reject && reject('blank') + } else { + resolve && resolve(res.data); + } + }, + fail: (err) => { + reject && reject(err) + } + }); + }) +} + + +export const getGamePriceJC = (gameId: string, nums: number = 0) => { + const data = {oldGameId: gameId, nums} + return new Promise((resolve, reject) => { + uni.request({ + url: `${JC_DATA_BASE}/getgameprice`, + data, + success: (res: any) => { + if (!res.data.errcode) { + resolve && resolve(res.data.data); + } else { + reject && reject(res.data.errmsg) + } }, fail: (err) => { reject && reject(err) diff --git a/src/components/BigImgCell/index.vue b/src/components/BigImgCell/index.vue index ab7615d..45ba477 100644 --- a/src/components/BigImgCell/index.vue +++ b/src/components/BigImgCell/index.vue @@ -20,9 +20,13 @@ - ¥{{gData.price}} - ¥{{gData.originPrice}} - {{gData.priceCountry}} + ¥{{gData.price}} + 免费 + - + ¥{{gData.originPrice}} + 免费 + - + {{gData.priceCountry}} 折扣剩余{{gData.discountLeftTime}} diff --git a/src/components/GameSmallCell/index.vue b/src/components/GameSmallCell/index.vue index 83a282e..4f780b8 100644 --- a/src/components/GameSmallCell/index.vue +++ b/src/components/GameSmallCell/index.vue @@ -17,12 +17,16 @@ - ¥{{gData.price}} + ¥{{gData.price}} + 免费 + - - ¥{{gData.originPrice}} + ¥{{gData.originPrice}} + 免费 + - ({{gData.priceCountry}}) - + @@ -103,7 +107,7 @@ export default class extends Vue{ flex-direction: row; flex-wrap: wrap; justify-content: flex-start; - padding: 5px 0; + padding: 5px; height: 16px; } .game-tag text { diff --git a/src/components/ImageSwiper/index.vue b/src/components/ImageSwiper/index.vue index d37af3b..1074b06 100644 --- a/src/components/ImageSwiper/index.vue +++ b/src/components/ImageSwiper/index.vue @@ -3,7 +3,7 @@ - + diff --git a/src/pages/info/index.vue b/src/pages/info/index.vue index 675be75..ebc0522 100644 --- a/src/pages/info/index.vue +++ b/src/pages/info/index.vue @@ -61,7 +61,7 @@ import { Component, Vue } from 'vue-property-decorator' import ImageSwiper from '@/components/ImageSwiper/index.vue' import PriceCell from '@/components/PriceCell/index.vue' import DlcCell from '@/components/DlcCell/index.vue' -import { getGameInfo, getGamePrice } from '@/api/game_data' +import { getGameInfo, getGameInfoJC, getGamePrice, getGamePriceJC } from '@/api/game_data' import { IGameInfo } from '@/modules/gameinfo' import { getCollectList, getZanList, updateCollectInfo, updateZanInfo } from '@/api/game' import { UserModule } from '@/store/modules/user' @@ -131,14 +131,25 @@ export default class extends Vue{ } private async fetchGameInfo() { - let data: any = await getGameInfo(this.gameId) - console.log(data) + let data: any + try { + data = await getGameInfoJC(this.gameId) + } catch(err) { + } + this.name = data.jumpGame?.name this.subName = data.jumpGame?.subName if (data.jumpGameExt?.screenshots) { - let arr = data.jumpGameExt.screenshots.split(';') + let arr: any[] = [] + if (data.jumpGameExt.screenshots.indexOf(';')>=0) { + arr = data.jumpGameExt.screenshots.split(';') + } else if(data.jumpGameExt.screenshots.indexOf(',')>=0) { + arr = data.jumpGameExt.screenshots.split(',') + } for (let u of arr) { - this.imgSwiperData.push(u) + if (u.indexOf('/newswitch/') < 0) { + this.imgSwiperData.push(u) + } } this.bgImg = this.imgSwiperData[0] } @@ -160,8 +171,13 @@ export default class extends Vue{ } private async fetchGamePrice() { - let data: any = await getGamePrice(this.gameId, 3) - console.log(data) + let data: any = {prices: []} + try { + data = await getGamePriceJC(this.gameId, 3) + } catch (err) { + console.log('error get price list') + } + for (let obj of data.prices) { this.priceList.push(obj) } diff --git a/src/pages/info/priceList.vue b/src/pages/info/priceList.vue index 6665417..5709e09 100644 --- a/src/pages/info/priceList.vue +++ b/src/pages/info/priceList.vue @@ -13,7 +13,7 @@