我的排行榜-功能优化

This commit is contained in:
yixiudong
2025-08-20 10:52:45 +08:00
parent 4e5c17fe3d
commit ba28a9c690
+51 -27
View File
@@ -25,7 +25,8 @@
<view class="rank-top3">
<view class="rank-content rank-content-backgound-color1" v-if="chartsList.length > 1">
<image src="/static/images/charts/02.svg" class="crown1"></image>
<image src="/static/images/charts/avator.png" class="top-avator"></image>
<image v-if="chartsList[1].imgAddr" :src="chartsList[1].imgAddr" class="top-avator"></image>
<image v-else src="/static/images/charts/avator.png" class="top-avator"></image>
<view class="content1">top·2</view>
<view class="content2">{{chartsList[1].userName}}</view>
<view class="content3">{{chartsList[1].score}}</view>
@@ -33,7 +34,8 @@
</view>
<view class="rank-content rank-content-backgound-color2" v-if="chartsList.length > 0">
<image src="/static/images/charts/01.svg" class="crown2"></image>
<image src="/static/images/charts/avator.png" class="top-avator"></image>
<image v-if="chartsList[0].imgAddr" :src="chartsList[0].imgAddr" class="top-avator"></image>
<image v-else src="/static/images/charts/avator.png" class="top-avator"></image>
<view class="content11">top·1</view>
<view class="content2">{{chartsList[0].userName}}</view>
<view class="content33">{{chartsList[0].score}}</view>
@@ -41,7 +43,8 @@
</view>
<view class="rank-content rank-content-backgound-color3" v-if="chartsList.length > 2">
<image src="/static/images/charts/03.svg" class="crown3"></image>
<image src="/static/images/charts/avator.png" class="top-avator"></image>
<image v-if="chartsList[2].imgAddr" :src="chartsList[2].imgAddr" class="top-avator"></image>
<image v-else src="/static/images/charts/avator.png" class="top-avator"></image>
<view class="content111">top·3</view>
<view class="content2">{{chartsList[2].userName}}</view>
<view class="content333">{{chartsList[2].score}}</view>
@@ -113,17 +116,18 @@
</template>
<!-- 自定义 body -->
<template v-slot:body>
<view style="width: 50%;text-align: center;">
<image :src="item.imgAddr" class="avator"></image>
<view style="width: 55%;text-align: center;margin-left: 10rpx;">
<image v-if="item.imgAddr" :src="item.imgAddr" class="avator"></image>
<image v-else src="/static/images/charts/avator.png" class="avator"></image>
<view style="float: left;margin-left: 18rpx;">
<view :class="item.userId == userId?'active-name':'name'">{{ item.userName }}</view>
<view class="belong">{{ item.dept }}</view>
<view style="width: 250rpx;text-align: left;margin-top: 10rpx;" class="belong">{{ item.dept }}</view>
</view>
</view>
</template>
<!-- 自定义 footer-->
<template v-slot:footer>
<text class="score-sty score-sty-footer">{{ item.score }}</text>
<text style="text-align: center;" class="score-sty score-sty-footer">{{ item.score }}</text>
</template>
</uni-list-item>
<view style="width: 100%;height: 200rpx;"></view>
@@ -142,11 +146,12 @@
</template>
<!-- 自定义 body -->
<template v-slot:body>
<view style="width: 50%;text-align: center;">
<image src="/static/images/charts/avator.png" class="avator"></image>
<view style="width: 65%;text-align: center;margin-top: 30rpx;">
<image v-if="myselfObj.imgAddr" :src="myselfObj.imgAddr" class="avator" style="margin-top: 4rpx;"></image>
<image v-else src="/static/images/charts/avator.png" class="avator" style="margin-top: 4rpx;"></image>
<view style="float: left;margin-left: 18rpx;">
<view class="my-rank-name">{{myselfObj.userName}}</view>
<view class="my-rank-belong">{{myselfObj.dept}}</view>
<view style="width: 260rpx;text-align: left;margin-top: 5rpx;" class="my-rank-belong">{{myselfObj.dept}}</view>
</view>
</view>
</template>
@@ -169,6 +174,7 @@
getLeaderBoardCrsCntApi
} from "@/api/leaderBoard.js"
// 我的排行榜
import { getUserInfo } from '@/common/common';
import {
reactive,
ref,
@@ -178,7 +184,7 @@
watch
} from 'vue';
import common from '@/common/common';
const userId = ("USER001");
const userId = ref("");
const itemIndex = ref(0);
const learnTimeList = ref([])
const practCntList = ref([])
@@ -215,30 +221,33 @@
itemIndex.value = 0;
tabAct.value = index;
tableLastName.value = item.name;
if (tableLastName.value == '学习时长') {
if (tableLastName.value.includes('学习时长') ) {
tableLastName.value = '学习时长(h)'
}
if (tableLastName.value == '学习时长') {
if (tableLastName.value.includes('学习时长')) {
allChartsList.value = learnTimeList.value;
chartsList.value = learnTimeList.value.annual.list || [];
chartsList.value = learnTimeList.value.annual?learnTimeList.value.annual.list:[];
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
myselfObj.value.score = allChartsList.value.annual.self.annlStdyTmLen;
myselfObj.value.score = allChartsList.value.annual?allChartsList.value.annual.self.annlStdyTmLen:"";
chartsList.value.forEach(item => item.score = item.annlStdyTmLen)
} else if (tableLastName.value == '练习次数') {
} else if (tableLastName.value == '练习次数') {
allChartsList.value = practCntList.value;
chartsList.value = practCntList.value.annual.list || [];
chartsList.value = practCntList.value.annual?practCntList.value.annual.list:[];
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
myselfObj.value.score = allChartsList.value.annual.self.annlPractCnt;
myselfObj.value.score = allChartsList.value.annual?allChartsList.value.annual.self.annlPractCnt:"";
chartsList.value.forEach(item => item.score = item.annlPractCnt);
} else if (tableLastName.value == '考试次数') {
allChartsList.value = examCntList.value;
chartsList.value = examCntList.value.annual.list || [];
chartsList.value = examCntList.value.annual?examCntList.value.annual.list:[];
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
myselfObj.value.score = allChartsList.value.annual.self.annlExamCnt;
myselfObj.value.score = allChartsList.value.annual?allChartsList.value.annual.self.annlExamCnt:"";
chartsList.value.forEach(item => item.score = item.annlExamCnt);
} else if (tableLastName.value == '通关课程数') {
allChartsList.value = crsCntList.value;
chartsList.value = crsCntList.value.annual.list || [];
chartsList.value = crsCntList.value.annual?crsCntList.value.annual.list:[];
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
myselfObj.value.score = allChartsList.value.annual.self.annlCrsCnt;
myselfObj.value.score = allChartsList.value.annual?allChartsList.value.annual.self.annlCrsCnt:"";
chartsList.value.forEach(item => item.score = item.annlCrsCnt);
}
if (chartsList.value.length > 3) {
newChartsList.value = chartsList.value.slice(3).concat();
@@ -266,11 +275,16 @@
myselfObj.value.score = myselfObj.value.annlCrsCnt;
}
} else if (item.value == 'month') {
console.log('month')
chartsList.value = allChartsList.value.month ? allChartsList.value.month.list : [];
myselfObj.value = allChartsList.value.month ? allChartsList.value.month.self : {};
if (tableLastName.value == '学习时长') {
console.log(chartsList.value,'chartsList.value')
console.log(myselfObj.value,'myselfObj.value')
if (tableLastName.value.includes('学习时长')) {
chartsList.value.forEach(item => item.score = item.thisMonthStdyTmLen);
myselfObj.value.score = myselfObj.value.thisMonthStdyTmLen;
console.log(chartsList.value,'chartsList.valueMonth')
console.log(myselfObj.value,'myselfObj.valueMonth')
} else if (tableLastName.value == '练习次数') {
chartsList.value.forEach(item => item.score = item.thisMonthPractCnt);
myselfObj.value.score = myselfObj.value.thisMonthPractCnt;
@@ -284,9 +298,11 @@
} else if (item.value == 'week') {
chartsList.value = allChartsList.value.week ? allChartsList.value.week.list : [];
myselfObj.value = allChartsList.value.week ? allChartsList.value.week.self : {};
if (tableLastName.value == '学习时长') {
if (tableLastName.value.includes('学习时长')) {
chartsList.value.forEach(item => item.score = item.thisWeekStdyTmLen);
myselfObj.value.score = myselfObj.value.thisWeekStdyTmLen;
console.log(chartsList.value,'chartsList.valueWeek')
console.log(myselfObj.value,'myselfObj.valueWeek')
} else if (tableLastName.value == '练习次数') {
chartsList.value.forEach(item => item.score = item.thisWeekPractCnt);
myselfObj.value.score = myselfObj.value.thisWeekPractCnt;
@@ -298,7 +314,15 @@
myselfObj.value.score = myselfObj.value.thisWeekCrsCnt;
}
}
if (chartsList.value.length > 3) {
newChartsList.value = chartsList.value.slice(3).concat();
} else {
newChartsList.value = chartsList.value;
}
}
const userInfo = computed(() => getUserInfo())
userId.value = userInfo.value.userId;
console.log(userId.value,'userId')
onMounted(() => {
//挡板数据代码
@@ -381,8 +405,8 @@
allChartsList.value = learnTimeList.value;
chartsList.value = allChartsList.value.annual?allChartsList.value.annual.list:[];
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
// chartsList.value[0].dept = "吉林银行吉林分行"
// myselfObj.value.dept = "吉林银行吉林分行"
chartsList.value[0].dept = "吉林银行吉林分行"
myselfObj.value.dept = "吉林银行吉林分行"
console.log(chartsList.value,'chartsList.value')
console.log(myselfObj.value,myselfObj.value,'myselfObj.value')
chartsList.value.forEach(item => item.score = item.annlStdyTmLen);
@@ -862,7 +886,7 @@
color: #0066FF;
font-style: italic;
font-weight: 600;
margin-top: 15rpx
margin-top: 20rpx
}
.my-rank-name {