175 lines
5.0 KiB
Vue
Raw Normal View History

2025-06-06 03:08:19 +08:00
<template>
<view class="page">
2025-06-10 17:10:40 +08:00
<uni-nav-bar @clickLeft="goto(1, 1)" left-icon="back" :border="false" :shadow="false" :fixed="true"
:title="$t('promotionList.title')" backgroundColor="#fff" :statusBar="true"></uni-nav-bar>
2025-06-06 03:08:19 +08:00
<uni-row :gutter="0">
<uni-col :span="24">
<view class="wallet1">
2025-06-10 00:51:49 +08:00
<view style="width: 400; font-size: 24rpx; color: #fff;">{{$t('promotionList.text1')}}</view>
<view style="width: 500; font-size: 48rpx; color: #fff; line-height: 110rpx;">{{parseFloat(this.team.direct_total).toFixed(4)}}</view>
2025-06-06 03:08:19 +08:00
</view>
</uni-col>
</uni-row>
2025-06-10 00:51:49 +08:00
<view style="width: 94%; margin: 0rpx auto;">
<uni-row :gutter="10" style="margin-top: 30rpx;" v-for="(item, index) in list" :key="index" :style="index==0 ? '' : 'margin-top: 60rpx;'">
2025-06-06 03:08:19 +08:00
<uni-col :span="6" style="text-align: center;">
<uni-badge class="uni-badge-left-margin" text="V10" absolute="leftBottom" :offset="[25, 8]"
:customStyle="{background: getBg(10)}" size="small">
2025-06-10 00:51:49 +08:00
<image style="width: 120rpx; height: 120rpx; margin: auto;" :src="url" fit="cover"></image>
2025-06-06 03:08:19 +08:00
</uni-badge>
</uni-col>
<uni-col :span="18">
2025-06-10 00:51:49 +08:00
<view style="font-weight: 500; font-size: 32rpx; color: #3d3d3d;">{{item.username}}</view>
<view style="font-size: 24rpx; font-weight: 400; color: #999; line-height: 40rpx;">
2025-06-06 03:08:19 +08:00
ID{{item.id}}<br>
2025-06-07 23:12:35 +08:00
{{$t('promotion.text9')}}: {{item.created_at}}<br>
{{$t('promotion.text10')}}: <span style="color: #333; font-weight: 500; margin-left: 6rpx;">{{parseFloat(item.performance_large).toFixed(4)}}</span><br>
{{$t('promotion.text11')}}: <span style="color: #333; font-weight: 500; margin-left: 6rpx;">{{item.total_count}}</span>
2025-06-06 03:08:19 +08:00
</view>
</uni-col>
</uni-row>
</view>
</view>
</template>
<script>
import zPrompt from '@/components/common/prompt';
import Popup from '@/components/common/popup';
import {
mapState,
mapMutations
} from 'vuex';
export default {
components: {
Popup,
zPrompt
},
data() {
return {
url:"/static/images/tx.png",
team:{
total_count: 0,
direct_total: 0,
resultsRegion: 0.00,
resultsCell: 0.00
},
par:{
page: 1,
limit: 10
},
list: [],
};
},
computed: {
...mapState(['userInfo'])
},
//第一次加载
onLoad(e) {
},
//页面显示
onShow() {
if(this.userInfo.token === typeof(undefined) || this.userInfo.token === undefined){
this.islogin = false;
}else{
this.islogin = true;
this.$http.get('/api/team/index?lang='+this.$i18n.locale).then(res => {
if(res.code == 0){
this.team.total_count = res.data.total_count;
this.team.direct_total = res.data.direct_total;
this.team.resultsRegion = res.data.performance_large;
this.team.resultsCell = res.data.performance_small;
}
});
let data = {
page: this.par.page,
limit: this.par.limit,
lang: this.$i18n.locale
};
this.$http.post('/api/team/list', data).then(res => {
if(res.code == 0){
this.list = res.data.data;
}
});
}
},
//方法
methods: {
onPageJump(url) {
uni.navigateTo({
url: url
});
},
2025-06-10 00:51:49 +08:00
goto(url, type) {
if (type == 2) {
return uni.switchTab({ url: url })
}
if (type == 1) {
return uni.navigateBack({ delta: url });
}
uni.navigateTo({
url: url
})
},
2025-06-06 03:08:19 +08:00
handleClose(done) {
this.dialogVisible = false;
},
getBg(level){
if(level >= 0 && level <= 3){
return 'linear-gradient( 270deg, #CD8817 0%, #ED790D 100%)';
}else if(level >= 4 && level <= 6){
return 'linear-gradient( 270deg, #FB5E00 0%, #FFA500 100%)';
}else if(level >= 7 && level <= 9){
return 'linear-gradient( 270deg, #216CFF 0%, #47E3FF 100%)';
}else if(level == 10){
return 'linear-gradient( 270deg, #CC44FF 1%, #FF5666 100%)';
}
}
},
//页面隐藏
onHide() {},
//页面卸载
onUnload() {},
//页面下来刷新
onPullDownRefresh() {},
//页面上拉触底
onReachBottom() {},
//用户点击分享
onShareAppMessage(e) {
return this.wxShare();
}
};
</script>
<style lang="scss" scoped>
@import '@/style/mixin.scss';
body{background-color: #fff;}
::v-deep .uni-badge{padding: 4rpx 20rpx;}
.page{min-height: 100vh;}
.dialog{
2025-06-10 00:51:49 +08:00
text-align: center; border-radius: 40rpx;
2025-06-06 03:08:19 +08:00
}
.wallet1{
2025-06-10 00:51:49 +08:00
border-radius: 20rpx; padding: 40rpx 30rpx 20rpx 30rpx; width: 84%; margin: 20rpx auto;
background: url('/static/images/c1.png') #2B66F6; background-repeat: no-repeat; background-position: 92% 10rpx;
background-size: 40%;
2025-06-06 03:08:19 +08:00
}
.cell_list .t{
2025-06-10 00:51:49 +08:00
color: #3d3d3d; font-size: 32rpx; font-weight: 400; line-height: 50rpx;
2025-06-06 03:08:19 +08:00
}
.cell_list .d{
2025-06-10 00:51:49 +08:00
color: #3d3d3d; font-size: 28rpx; font-weight: 400; line-height: 50rpx;
2025-06-06 03:08:19 +08:00
}
.cell_list .u{
2025-06-10 00:51:49 +08:00
color: #1D61E7; font-weight: 600;float: right; font-size: 32rpx;
2025-06-06 03:08:19 +08:00
}
.cell_list .u1{
2025-06-10 00:51:49 +08:00
color: #333; font-weight: 600;float: right;font-size: 32rpx;
2025-06-06 03:08:19 +08:00
}
.w{
2025-06-10 00:51:49 +08:00
background-color: #F8F8F8; border-radius: 20rpx; padding: 40rpx 20rpx;
2025-06-06 03:08:19 +08:00
}
.w .t{
2025-06-10 00:51:49 +08:00
text-align: center; margin-top: 20rpx; font-size: 28rpx;
2025-06-06 03:08:19 +08:00
}
</style>