sadjv3/anmo-user/my/team/team.vue

216 lines
5.3 KiB
Vue
Raw Permalink Normal View History

2024-06-04 10:03:14 +08:00
<template>
<view class="content">
<view class="view1">
<view class="flex">
<view class="view1_item">
<view class="view1_itemmoney">{{ teamCount }} <text></text> </view>
<view class="view1_itemname">已邀请</view>
</view>
<view class="view1_item">
<view class="view1_itemmoney"><text></text>{{ teamMoney }}</view>
<view class="view1_itemname">我的收益</view>
</view>
</view>
</view>
<view class="view2" style="border-radius: 20upx;">
<view style="display: flex;flex-direction: row;padding: 20upx;">
<view style="width: 20%;">排名</view>
<view style="width: 50%;">用户</view>
<view style="width: 30%;text-align: center;">收益</view>
</view>
<view style="display: flex;flex-direction: row;padding: 20upx;" v-for="(item, index) in rankingList"
:key="index">
<view style="width: 20%;">
<image v-if="index == 0"
src="https://h5.taidudaojia.cc/file/uploadPath/2023/01/16/f5305e9ce03a6d0269f58ce55e6c3d0d.png"
style="width: 50upx; height: 50upx;"></image>
<image v-if="index == 1"
src="https://h5.taidudaojia.cc/file/uploadPath/2023/01/16/20b80ec8d3f4db15754426697d0054b8.png"
style="width: 50upx; height: 50upx;"></image>
<image v-if="index == 2"
src="https://h5.taidudaojia.cc/file/uploadPath/2023/01/16/6f61f5e7ec61a1d815bee3c9f0af3c58.png"
style="width: 50upx; height: 50upx;"></image>
<view v-if="item.rankNum > 2" style="font-size: 19px; color: #999999; margin-left: 15upx;">
{{ index + 1 }}
</view>
</view>
<view style="width: 50%;display: flex;flex-direction: row;align-items: center;">
<image :src="item.avatar ? item.avatar : '/static/logo.png'"
style="border-radius: 100upx;width: 50upx; height: 50upx;"></image>
<view style="font-size: 14px; color: #333333;margin-left: 20upx; width: 65%;">{{ item.userName }}
</view>
</view>
<view style="width: 30%;text-align: center;">
<view style="font-size: 16px;color: #096f4b;">¥{{ item.money }}</view>
</view>
</view>
<empty v-if="rankingList.length==0"></empty>
<!-- 加载更多提示 -->
<view class="s-col is-col-24" v-if="rankingList.length > 0">
<load-more :loadingType="loadingType" :contentText="contentText"></load-more>
</view>
</view>
</view>
</template>
<script>
import empty from '@/components/empty.vue'
export default {
components:{
empty
},
data() {
return {
tabFromIndex: 2,
teamCount: 0,
teamMoney: 0,
rankingList: [],
imageUrl: '/static/logo2.jpg',
money: 0,
nickName: '游客',
rankNum: 0,
page: 1,
size: 20,
loadingType: 0,
scrollTop: false,
contentText: {
contentdown: '上拉显示更多',
contentrefresh: '正在加载...',
contentnomore: '没有更多数据了'
}
};
},
onLoad() {
let userId = this.$queue.getData('userId');
if (userId) {
this.getRankingList(userId);
this.getUserInfo();
}
},
onPageScroll: function(e) {
this.scrollTop = e.scrollTop > 200;
},
methods: {
getUserInfo() {
let userId = this.$queue.getData('userId');
this.$Request.getT('/app/artificer/selectTeamStatistics?userId=' + userId + '&type=' + this.tabFromIndex)
.then(res => {
if (res.code == 0) {
this.teamCount = res.data.teamCount ? res.data.teamCount : 0;
this.teamMoney = res.data.teamMoney ? res.data.teamMoney : 0;
}
});
},
getRankingList() {
this.loadingType = 1;
uni.showLoading({
title: '加载中...'
});
let userId = this.$queue.getData('userId');
this.$Request.getT('/app/artificer/selectTeamUserList?type=' + this.tabFromIndex + '&page=' + this.page +
'&limit=' + this
.size +
'&userId=' + userId).then(res => {
if (res.code === 0) {
if (this.page === 1) {
this.rankingList = [];
}
res.data.list.forEach(d => {
this.rankingList.push(d);
});
if (res.data.list.length === this.size) {
this.loadingType = 0;
} else {
this.loadingType = 3;
}
} else {
this.loadingType = 2;
}
uni.hideLoading();
});
}
},
onReachBottom: function() {
this.page = this.page + 1;
this.getRankingList();
},
onPullDownRefresh: function() {
this.page = 1;
this.getRankingList();
}
};
</script>
<style lang="scss">
page {
background: #F5F5F5;
}
.bg {
background: #FFFFFF;
}
.view1 {
background-color: #ffffff;
width: 93%;
height: 270upx;
margin-left: 26upx;
border-radius: 20upx;
margin-top: 20upx;
border-radius: 20upx;
image {
width: 586rpx;
height: 88rpx;
margin: 80rpx 50rpx 0rpx;
}
.view1_item {
margin: 60upx 0 0 0;
height: 100upx;
flex: 1;
text-align: center;
.view1_itemmoney {
font-size: 56rpx;
font-family: PingFang SC;
font-weight: 800;
color: #333333;
text {
font-size: 28rpx;
}
}
.view1_itemname {
font-size: 28rpx;
font-family: PingFang SC;
font-weight: 500;
color: #999999;
margin-top: 30rpx;
}
}
}
.title_btn {
height: 78upx;
line-height: 78upx;
color: #333333;
/* background: #f7f7f7; */
}
.bgCol2 {
color: #096f4b;
background: #EAFFF5;
}
.view2 {
background-color: #ffffff;
width: 93%;
height: 100%;
margin-left: 26upx;
border-radius: 20upx;
margin-bottom: 20upx;
margin-top: 20rpx;
}
</style>