|
@@ -12,7 +12,7 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="home-code">
|
|
|
- <view class="trade-border-box"> STT{{ (Number(gameList[2]?.prev_bonus) || 0).toFixed(6) }}</view>
|
|
|
+ <view class="trade-border-box"> STT {{ (Number(gameList[2]?.prev_bonus) || 0).toFixed(6) }}</view>
|
|
|
<view class="trade-border-num"
|
|
|
>≈¥{{ ((Number(gameList[2]?.prev_bonus) || 0) * 7.2).toFixed(2) }}</view
|
|
|
>
|
|
@@ -20,7 +20,7 @@
|
|
|
<view class="trade-img-box">
|
|
|
<image src="@/static/image/trade/money-box.png" mode="aspectFit" />
|
|
|
</view>
|
|
|
- <view class="card-item" style="width: 100%;">
|
|
|
+ <view class="card-item">
|
|
|
<view class="trade-process" :class="bgClass">
|
|
|
<view
|
|
|
:class="
|
|
@@ -42,7 +42,7 @@
|
|
|
</view>
|
|
|
<view class="trade-time-box" v-if="gameDetail">
|
|
|
<view class="time-title">
|
|
|
- 距离 <text>{{ gameDetail.title }}赛程 竞赛结束 </text>还有
|
|
|
+ 距离 <text>{{ gameDetail.title }}赛程 竞赛{{gameCheck == '2'?'开始':'结束'}} </text>还有
|
|
|
</view>
|
|
|
<up-count-down
|
|
|
:time="
|
|
@@ -89,45 +89,48 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
<view class="game-play-name">赛程名次</view>
|
|
|
- <view class="game-list">
|
|
|
- <view class="game-list-item" v-for="(item, index) in gameRankList" :key="index">
|
|
|
- <view class="game-item-left">
|
|
|
- <view class="game-order-index">
|
|
|
- <image
|
|
|
- src="@/static/image/trade/one.png"
|
|
|
- v-if="index == 0"
|
|
|
- mode="scaleToFill"
|
|
|
- />
|
|
|
- <image
|
|
|
- src="@/static/image/trade/two.png"
|
|
|
- v-if="index == 1"
|
|
|
- mode="scaleToFill"
|
|
|
- />
|
|
|
- <image
|
|
|
- src="@/static/image/trade/three.png"
|
|
|
- v-if="index == 2"
|
|
|
- mode="scaleToFill"
|
|
|
- />
|
|
|
- <text v-if="index != 0 && index != 1 && index != 2">{{
|
|
|
- index + 1
|
|
|
- }}</text>
|
|
|
- </view>
|
|
|
- <view class="game-order-num">
|
|
|
- <view class="game-num-txt">
|
|
|
- <view>{{`${item.address.slice(0, 4)}...${item.address.slice(-4)}` }}</view>
|
|
|
- <view class="game-num-num">{{ gameDetail?.title }}</view>
|
|
|
- </view>
|
|
|
- <view class="game-num-txt" v-if="item.is_self && item.is_prize && gameCheck == 0">
|
|
|
- <view class="game-item-btn" @click="awardFun(item)">{{item.is_receive?'已领取':'领取'}}</view>
|
|
|
+ <scroll-view style="height: 600px;" :scroll-y="true" refresher-enabled="true" refresher-background="#rgba(0,0,0,0)"
|
|
|
+ :refresher-triggered="triggered" @refresherrefresh="onRefresh">
|
|
|
+ <view class="game-list">
|
|
|
+ <view class="game-list-item" v-for="(item, index) in gameRankList" :key="index">
|
|
|
+ <view class="game-item-left">
|
|
|
+ <view class="game-order-index">
|
|
|
+ <image
|
|
|
+ src="@/static/image/trade/one.png"
|
|
|
+ v-if="index == 0"
|
|
|
+ mode="scaleToFill"
|
|
|
+ />
|
|
|
+ <image
|
|
|
+ src="@/static/image/trade/two.png"
|
|
|
+ v-if="index == 1"
|
|
|
+ mode="scaleToFill"
|
|
|
+ />
|
|
|
+ <image
|
|
|
+ src="@/static/image/trade/three.png"
|
|
|
+ v-if="index == 2"
|
|
|
+ mode="scaleToFill"
|
|
|
+ />
|
|
|
+ <text v-if="index != 0 && index != 1 && index != 2">{{
|
|
|
+ index + 1
|
|
|
+ }}</text>
|
|
|
</view>
|
|
|
- <view class="game-num-txt" v-else>
|
|
|
- <view>排名赢局</view>
|
|
|
- <view class="game-num-num">{{ item.score }}</view>
|
|
|
+ <view class="game-order-num">
|
|
|
+ <view class="game-num-txt">
|
|
|
+ <view>{{`${item.address.slice(0, 4)}...${item.address.slice(-4)}` }}</view>
|
|
|
+ <view class="game-num-num">{{ gameDetail?.title }}</view>
|
|
|
+ </view>
|
|
|
+ <view class="game-num-txt" v-if="item.is_self && item.is_prize && gameCheck == 0">
|
|
|
+ <view class="game-item-btn" @click="awardFun(item)">{{item.is_receive?'已领取':'领取'}}</view>
|
|
|
+ </view>
|
|
|
+ <view class="game-num-txt" v-else>
|
|
|
+ <view>排名赢局</view>
|
|
|
+ <view class="game-num-num">{{ item.score }}</view>
|
|
|
+ </view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- </view>
|
|
|
+ </scroll-view>
|
|
|
</view>
|
|
|
<view class="fix-box">
|
|
|
<view class="fix-item" @click="openGamePopup(1)">赛程规则</view>
|
|
@@ -283,6 +286,7 @@ const STTbalance = ref(0);
|
|
|
const entry_fee = ref(0);
|
|
|
const wgt_price = ref(0);
|
|
|
const privateKey = ref('');
|
|
|
+const triggered = ref(false);
|
|
|
// const privateKey = "0x4553077da5d773773dad0511c6e5d33142ae2c1bd05a3a8a4a7becbc0d23d9b5";//H5
|
|
|
|
|
|
const bgClass = computed(() => {
|
|
@@ -307,16 +311,17 @@ const getGameMatchList = async (type = true) => {
|
|
|
gameList.value = res.data;
|
|
|
if(type){
|
|
|
gameDetail.value = res.data[1];
|
|
|
- getGameRank();
|
|
|
+ getGameRank(res.data[1].id);
|
|
|
}else{
|
|
|
gameDetail.value = res.data[2];
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
// 查询游戏赛事排名
|
|
|
-const getGameRank = async () => {
|
|
|
+const getGameRank = async (id) => {
|
|
|
let params = {
|
|
|
dapp_id: 15,
|
|
|
+ match_id:id,
|
|
|
address:walletAddress.value
|
|
|
};
|
|
|
let res = await matchRank(params);
|
|
@@ -328,7 +333,7 @@ const getGameRank = async () => {
|
|
|
const selectGame = (value, item) => {
|
|
|
gameCheck.value = value;
|
|
|
gameDetail.value = item;
|
|
|
- getGameRank();
|
|
|
+ getGameRank(item.id);
|
|
|
};
|
|
|
// 游戏规则弹出框
|
|
|
const showGameMsg = ref(false);
|
|
@@ -434,7 +439,7 @@ const getClaimPrize = async () =>{
|
|
|
icon: 'none',
|
|
|
duration: 1000
|
|
|
})
|
|
|
- getGameRank()
|
|
|
+ getGameRank(gameDetail.value?.id)
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -464,20 +469,35 @@ const getsendSingleReward = async (prize_money) =>{
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-// onMounted(async () => {
|
|
|
-
|
|
|
-// });
|
|
|
+// 下拉刷新
|
|
|
+const onRefresh = () => {
|
|
|
+ if (triggered.value) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ triggered.value = true;
|
|
|
+ setTimeout(() => {
|
|
|
+ getGameRank(gameDetail.value?.id);
|
|
|
+ triggered.value = false;
|
|
|
+ }, 1000)
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
+ ::v-deep .uni-scroll-view-refresh-inner{
|
|
|
+ background-color: transparent !important;
|
|
|
+ }
|
|
|
+ .card-item{
|
|
|
+ width: 100%;
|
|
|
+ }
|
|
|
.home {
|
|
|
- position: absolute;
|
|
|
- top: 0;
|
|
|
- bottom: 0;
|
|
|
- right: 0;
|
|
|
- left: 0;
|
|
|
- overflow-y: auto;
|
|
|
+ height: 1100px;
|
|
|
+ overflow: hidden;
|
|
|
+ // position: absolute;
|
|
|
+ // top: 0;
|
|
|
+ // bottom: 0;
|
|
|
+ // right: 0;
|
|
|
+ // left: 0;
|
|
|
+ // overflow-y: auto;
|
|
|
.fix-box {
|
|
|
position: fixed;
|
|
|
right: 0;
|
|
@@ -496,17 +516,16 @@ const getsendSingleReward = async (prize_money) =>{
|
|
|
}
|
|
|
}
|
|
|
.content {
|
|
|
+ height: 1100px;
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
align-items: center;
|
|
|
width: 100%;
|
|
|
- min-height: 100%;
|
|
|
+ // min-height: 100%;
|
|
|
padding: 32rpx;
|
|
|
- // padding-top: 116rpx;
|
|
|
padding-top: 168rpx;
|
|
|
box-sizing: border-box;
|
|
|
background-image: url("@/static/image/home/page-bg.jpg");
|
|
|
- // background: url('../../static/image/home/page-bg.jpg');
|
|
|
background-size: 100%;
|
|
|
background-position: 0 0;
|
|
|
background-repeat: no-repeat;
|
|
@@ -757,6 +776,8 @@ const getsendSingleReward = async (prize_money) =>{
|
|
|
}
|
|
|
.game-list {
|
|
|
width: 100%;
|
|
|
+ height: 600px;
|
|
|
+ overflow: auto;
|
|
|
.game-list-item {
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|