fix: bug
This commit is contained in:
+1
-1
@@ -7,5 +7,5 @@ VITE_APP_BASE_API_Url = 'http://25.18.122.65:7001'
|
||||
# VITE_APP_BASE_H5_API_Url = 'http://25.18.122.78:9786'
|
||||
# VITE_APP_BASE_H5_API_Url_TRAEXAM = 'http://25.64.32.154:9604'
|
||||
# VITE_APP_BASE_H5_API_Url_TRAPRACTICE = 'http://25.64.32.156:9603'
|
||||
VITE_APP_BASE_H5_API_Url_TRAAPP = 'http://25.64.32.154:9601'
|
||||
# VITE_APP_BASE_H5_API_Url_TRAAPP = 'http://25.64.32.154:9601'
|
||||
|
||||
|
||||
+65
-59
@@ -1,4 +1,6 @@
|
||||
import { get_base_url } from '@/api/request';
|
||||
import {
|
||||
get_base_url
|
||||
} from '@/api/request';
|
||||
// #ifdef APP-PLUS
|
||||
import showDialog from '@/common/dialogMessage'
|
||||
import common from '@/common/common'
|
||||
@@ -235,7 +237,7 @@ function setValue(key, value) {
|
||||
uni.setStorageSync(key, value);
|
||||
}
|
||||
|
||||
function getValue(key, defaultValue=null) {
|
||||
function getValue(key, defaultValue = null) {
|
||||
return uni.getStorageSync(key) ?? defaultValue
|
||||
}
|
||||
|
||||
@@ -278,65 +280,69 @@ export function setupKeyboardHeightListener(updateCallback) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
export const previewFileFnc = ({fileId, getFileSrc, fileName}) => {
|
||||
let userInfo = getUserInfo()
|
||||
let userParams = '/' + (userInfo?.loginName??'')
|
||||
if (getPhoneEnvBool('AND')) {
|
||||
navigateTo('/pages/index/preview?fileId=' + fileId +'&fileApiSrc=' + getFileSrc);
|
||||
} else {
|
||||
if (isDownloading.value) return
|
||||
const base_url = get_base_url(getFileSrc);
|
||||
let fileUrl = base_url + getFileSrc + fileId + userParams;
|
||||
const localFilePath = '_doc/pdf_view/' + fileName + '.pdf';
|
||||
isDownloading.value = true
|
||||
downloadFileFnc(fileUrl, localFilePath).then((res) => {
|
||||
uni.openDocument({
|
||||
filePath: res,
|
||||
showMenu: true,
|
||||
success: function() {
|
||||
console.log('打开文档成功');
|
||||
}
|
||||
})
|
||||
}).finally(() => {
|
||||
setTimeout(() => {
|
||||
isDownloading.value = false
|
||||
}, 1000)
|
||||
});
|
||||
}
|
||||
let isDownloading = false
|
||||
export const previewFileFnc = ({
|
||||
fileId,
|
||||
getFileSrc,
|
||||
fileName
|
||||
}) => {
|
||||
let userInfo = getUserInfo()
|
||||
let userParams = '/' + (userInfo?.loginName ?? '')
|
||||
if (getPhoneEnvBool('AND')) {
|
||||
navigateTo('/pages/index/preview?fileId=' + fileId + '&fileApiSrc=' + getFileSrc);
|
||||
} else {
|
||||
if (isDownloading) return
|
||||
const base_url = get_base_url(getFileSrc);
|
||||
let fileUrl = base_url + getFileSrc + fileId + userParams;
|
||||
const localFilePath = '_doc/pdf_view/' + fileName + '.pdf';
|
||||
isDownloading = true
|
||||
downloadFileFnc(fileUrl, localFilePath).then((res) => {
|
||||
uni.openDocument({
|
||||
filePath: res,
|
||||
showMenu: true,
|
||||
success: function() {
|
||||
console.log('打开文档成功');
|
||||
}
|
||||
})
|
||||
}).finally(() => {
|
||||
setTimeout(() => {
|
||||
isDownloading = false
|
||||
}, 1000)
|
||||
});
|
||||
}
|
||||
const downloadFileFnc = async (fileUrl, localFilePath) => {
|
||||
try {
|
||||
//#ifdef APP-PLUS
|
||||
return new Promise((resolve, reject) => {
|
||||
console.log('开始下载:', fileUrl);
|
||||
const dtask = plus.downloader.createDownload(
|
||||
fileUrl, {
|
||||
filename: localFilePath
|
||||
},
|
||||
(d, status) => {
|
||||
if (status === 200) {
|
||||
console.log('保存路径:', d.filename);
|
||||
resolve(d.filename);
|
||||
} else {
|
||||
console.error('文件下载失败:', status);
|
||||
reject(new Error(`下载失败,状态码: ${status}`));
|
||||
}
|
||||
}
|
||||
const downloadFileFnc = async (fileUrl, localFilePath) => {
|
||||
try {
|
||||
//#ifdef APP-PLUS
|
||||
return new Promise((resolve, reject) => {
|
||||
console.log('开始下载:', fileUrl);
|
||||
const dtask = plus.downloader.createDownload(
|
||||
fileUrl, {
|
||||
filename: localFilePath
|
||||
},
|
||||
(d, status) => {
|
||||
if (status === 200) {
|
||||
console.log('保存路径:', d.filename);
|
||||
resolve(d.filename);
|
||||
} else {
|
||||
console.error('文件下载失败:', status);
|
||||
reject(new Error(`下载失败,状态码: ${status}`));
|
||||
}
|
||||
);
|
||||
dtask.start();
|
||||
});
|
||||
// #endif
|
||||
//#ifdef H5
|
||||
return new Promise((resolve, reject) => {
|
||||
resolve();
|
||||
});
|
||||
// #endif
|
||||
} catch (error) {
|
||||
console.error('创建目录失败:', error);
|
||||
throw error;
|
||||
}
|
||||
};
|
||||
}
|
||||
);
|
||||
dtask.start();
|
||||
});
|
||||
// #endif
|
||||
//#ifdef H5
|
||||
return new Promise((resolve, reject) => {
|
||||
resolve();
|
||||
});
|
||||
// #endif
|
||||
} catch (error) {
|
||||
console.error('创建目录失败:', error);
|
||||
throw error;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
export default {
|
||||
|
||||
+1
-1
@@ -533,7 +533,7 @@
|
||||
},
|
||||
{
|
||||
"text": "场景",
|
||||
"pagePath": "pages/scene/index"
|
||||
"pagePath": "pages/sparring/index"
|
||||
},
|
||||
{
|
||||
"text": "我的",
|
||||
|
||||
+314
-787
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,845 @@
|
||||
<template>
|
||||
<view class="max_page detail-main">
|
||||
<nav-bar :is_seat="false"></nav-bar>
|
||||
<view class="fixed_search_div">
|
||||
<view class="back_div" @click="common.navigateBack()">
|
||||
<view class="back-icon"></view>
|
||||
</view>
|
||||
<view class="title font_pf">排行榜</view>
|
||||
</view>
|
||||
<view class="detail-body">
|
||||
<view class="body-tabs">
|
||||
<view class="tabs-sty">
|
||||
<view :class="tabAct == index ?'active-tabs-item-sty':'tabs-item-sty'"
|
||||
v-for="(item,index) in tabList" @click="tabChange(index,item)">{{item.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="date-body">
|
||||
<view class="date-sty">
|
||||
<view :class="itemIndex == index ?'active-date-item-sty':'date-item-sty'"
|
||||
v-for="(item,index) in dateTabList" @click="itemFun(index,item)">{{item.name}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="rank-style">
|
||||
<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 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>
|
||||
<view class="content4">{{chartsList[1].dept}}</view>
|
||||
</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 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>
|
||||
<view class="content44">{{chartsList[0].dept}}</view>
|
||||
</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 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>
|
||||
<view class="content444">{{chartsList[2].dept}}</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- table形式排名 -->
|
||||
<!-- <view class="rank-other">
|
||||
<uni-table ref="table">
|
||||
<uni-tr>
|
||||
<uni-th align="center" width="100">排名</uni-th>
|
||||
<uni-th align="left" width="180">用户名/所属机构</uni-th>
|
||||
<uni-th align="center" >{{tableLastName}}</uni-th>
|
||||
</uni-tr>
|
||||
<uni-tr v-for="(item, index) in newChartsList" :key="index">
|
||||
<uni-td :class="item.name == '江月心'?'active-rank-sty':'rank-sty'" align="center">{{ item.rank }}</uni-td>
|
||||
<uni-td align="center">
|
||||
<image src="/static/images/charts/avator.png" class="avator"></image>
|
||||
<view style="float: left;margin-left: 18rpx;">
|
||||
<view :class="item.name == '江月心'?'active-name':'name'">{{ item.name }}</view>
|
||||
<view class="belong">{{ item.belong }}</view>
|
||||
</view>
|
||||
</uni-td>
|
||||
<uni-td class="score-sty" align="center">{{ item.score }}</uni-td>
|
||||
</uni-tr>
|
||||
</uni-table>
|
||||
<view style="width: 100%;height: 200rpx;"></view>
|
||||
</view>
|
||||
<view class="rank-mine">
|
||||
<view class="rank-mine-content">
|
||||
<view style="font-size: 26rpx;font-weight: 400;color: #999999;margin-left: 10rpx;">我的排名</view>
|
||||
<view style="width: 100%;">
|
||||
<view style="width: 100rpx;font-size: 40rpx;color: #0066FF;font-style: italic;;font-weight: 600;float: left;margin-top:30rpx;margin-left: 18rpx;">44</view>
|
||||
<view style="width: 200rpx;float: left;margin-left: 46rpx;margin-top: 12rpx;width: 370rpx;">
|
||||
<image src="/static/images/charts/avator.png" class="my-avator"></image>
|
||||
<view style="font-size: 30rpx;font-weight: 600;color:#000000;">张伟</view>
|
||||
<view style="font-size: 26rpx;font-weight: 400;color: #999999;margin-top:8rpx;">吉林银行大连分行</view>
|
||||
</view>
|
||||
<view style="width: 170rpx;font-size: 32rpx;text-align: center;color: #333333;font-weight: 600;float: left;margin-top: 32rpx;">91</view>
|
||||
</view>
|
||||
</view>
|
||||
</view> -->
|
||||
<!-- list形式排名 -->
|
||||
<uni-list class="rank-other">
|
||||
<uni-list-item>
|
||||
<!-- 自定义 header -->
|
||||
<template v-slot:header>
|
||||
<text class="rank-other-rank-sty rank-uni-sty">排名</text>
|
||||
</template>
|
||||
<!-- 自定义 body -->
|
||||
<template v-slot:body>
|
||||
<text class="rank-other-user-sty rank-uni-sty">用户名/所属机构</text>
|
||||
</template>
|
||||
<!-- 自定义 footer-->
|
||||
<template v-slot:footer>
|
||||
<text class="rank-other-last-sty rank-uni-sty">{{tableLastName}}</text>
|
||||
</template>
|
||||
</uni-list-item>
|
||||
<uni-list-item v-if="chartsList.length < 4">
|
||||
<template v-slot:header>
|
||||
<text style="width:100%;text-align: center;color: #999999;">暂无数据</text>
|
||||
</template>
|
||||
</uni-list-item>
|
||||
<uni-list-item v-for="(item, index) in newChartsList" :key="index" v-else>
|
||||
<!-- 自定义 header -->
|
||||
<template v-slot:header>
|
||||
<text style="width: 20%;text-align: center;margin-top:15rpx"
|
||||
:class="item.userId == userId?'active-rank-sty':'rank-sty'">{{item.position}}</text>
|
||||
</template>
|
||||
<!-- 自定义 body -->
|
||||
<template v-slot:body>
|
||||
<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 style="width: 250rpx;text-align: left;margin-top: 10rpx;" class="belong">{{ item.dept }}</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
<!-- 自定义 footer-->
|
||||
<template v-slot:footer>
|
||||
<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>
|
||||
<uni-list-item class="rank-mine" v-if="!myselfObj.userName">
|
||||
<!-- 自定义 header -->
|
||||
<template v-slot:header>
|
||||
<text class="rank-sty my-rank-title">我的排名</text>
|
||||
<view style="width: 100%;text-align: center;color: #999999;font-size: 28rpx;">暂无排名</view>
|
||||
</template>
|
||||
</uni-list-item>
|
||||
<uni-list-item class="rank-mine" v-else>
|
||||
<!-- 自定义 header -->
|
||||
<template v-slot:header>
|
||||
<text class="rank-sty my-rank-title">我的排名</text>
|
||||
<view class="my-rank-content">{{myselfObj.position}}</view>
|
||||
</template>
|
||||
<!-- 自定义 body -->
|
||||
<template v-slot:body>
|
||||
<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 style="width: 260rpx;text-align: left;margin-top: 5rpx;" class="my-rank-belong">{{myselfObj.dept}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
<!-- 自定义 footer-->
|
||||
<template v-slot:footer>
|
||||
<text class="my-rank-score">{{myselfObj.score}}</text>
|
||||
</template>
|
||||
</uni-list-item>
|
||||
</uni-list>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import {
|
||||
getLeaderBoardStdyTmApi,
|
||||
getLeaderBoardPractCntApi,
|
||||
getLeaderBoardExamCntApi,
|
||||
getLeaderBoardCrsCntApi
|
||||
} from "@/api/leaderBoard.js"
|
||||
// 我的排行榜
|
||||
import { getUserInfo } from '@/common/common';
|
||||
import {
|
||||
reactive,
|
||||
ref,
|
||||
computed,
|
||||
nextTick,
|
||||
onMounted,
|
||||
watch
|
||||
} from 'vue';
|
||||
import common from '@/common/common';
|
||||
const userId = ref("");
|
||||
const itemIndex = ref(0);
|
||||
const learnTimeList = ref({})
|
||||
const practCntList = ref({})
|
||||
const examCntList = ref({})
|
||||
const crsCntList = ref({})
|
||||
const myselfObj = ref({})
|
||||
const tableLastName = ref("学习时长(h)");
|
||||
const taskRef = ref(null);
|
||||
const tabAct = ref(0);
|
||||
const tabDateAct = ref(0);
|
||||
const allChartsList = ref({});
|
||||
const newChartsList = ref([]);
|
||||
const tabList = ref([{
|
||||
name: '学习时长'
|
||||
}, {
|
||||
name: '练习次数'
|
||||
}, {
|
||||
name: '考试次数'
|
||||
}, {
|
||||
name: '通关课程数'
|
||||
}]);
|
||||
const dateTabList = ref([{
|
||||
name: '本年',
|
||||
value: 'annual'
|
||||
}, {
|
||||
name: '本月',
|
||||
value: 'month'
|
||||
}, {
|
||||
name: '本周',
|
||||
value: 'week'
|
||||
}]);
|
||||
const chartsList = ref([]);
|
||||
const tabChange = (index, item) => {
|
||||
itemIndex.value = 0;
|
||||
tabAct.value = index;
|
||||
tableLastName.value = item.name;
|
||||
if (tableLastName.value.includes('学习时长') ) {
|
||||
tableLastName.value = '学习时长(h)'
|
||||
}
|
||||
if (tableLastName.value.includes('学习时长')) {
|
||||
allChartsList.value = learnTimeList.value;
|
||||
chartsList.value = learnTimeList.value.annual?learnTimeList.value.annual.list:[];
|
||||
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
|
||||
myselfObj.value.score = allChartsList.value.annual?allChartsList.value.annual.self.annlStdyTmLen:"";
|
||||
chartsList.value.forEach(item => item.score = item.annlStdyTmLen)
|
||||
} else if (tableLastName.value == '练习次数') {
|
||||
allChartsList.value = practCntList.value;
|
||||
chartsList.value = practCntList.value.annual?practCntList.value.annual.list:[];
|
||||
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
|
||||
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?examCntList.value.annual.list:[];
|
||||
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
|
||||
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?crsCntList.value.annual.list:[];
|
||||
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
|
||||
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();
|
||||
} else {
|
||||
newChartsList.value = chartsList.value;
|
||||
}
|
||||
console.log(tableLastName.value, 'tablelastname')
|
||||
};
|
||||
const itemFun = (index, item) => {
|
||||
itemIndex.value = index;
|
||||
if (item.value == 'annual') {
|
||||
chartsList.value = allChartsList.value.annual ? allChartsList.value.annual.list : [];
|
||||
myselfObj.value = allChartsList.value.annual ? allChartsList.value.annual.self : {};
|
||||
if (tableLastName.value.includes('学习时长')) {
|
||||
chartsList.value.forEach(item => item.score = item.annlStdyTmLen);
|
||||
myselfObj.value.score = myselfObj.value.annlStdyTmLen;
|
||||
} else if (tableLastName.value == '练习次数') {
|
||||
chartsList.value.forEach(item => item.score = item.annlPractCnt);
|
||||
myselfObj.value.score = myselfObj.value.annlPractCnt;
|
||||
} else if (tableLastName.value == '考试次数') {
|
||||
chartsList.value.forEach(item => item.score = item.annlExamCnt);
|
||||
myselfObj.value.score = myselfObj.value.annlExamCnt;
|
||||
} else if (tableLastName.value == '通关课程数') {
|
||||
chartsList.value.forEach(item => item.score = item.annlCrsCnt);
|
||||
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 : {};
|
||||
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;
|
||||
} else if (tableLastName.value == '考试次数') {
|
||||
chartsList.value.forEach(item => item.score = item.thisMonthExamCnt);
|
||||
myselfObj.value.score = myselfObj.value.thisMonthExamCnt;
|
||||
} else if (tableLastName.value == '通关课程数') {
|
||||
chartsList.value.forEach(item => item.score = item.thisMonthCrsCnt);
|
||||
myselfObj.value.score = myselfObj.value.thisMonthCrsCnt;
|
||||
}
|
||||
} 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.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;
|
||||
} else if (tableLastName.value == '考试次数') {
|
||||
chartsList.value.forEach(item => item.score = item.thisWeekExamCnt);
|
||||
myselfObj.value.score = myselfObj.value.thisWeekExamCnt;
|
||||
} else if (tableLastName.value == '通关课程数') {
|
||||
chartsList.value.forEach(item => item.score = item.thisWeekCrsCnt);
|
||||
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(() => {
|
||||
getLeaderBoardStdyTmApi().then(res => {
|
||||
console.log(res, 'getLeaderBoardStdyTmApi')
|
||||
learnTimeList.value = res.body || {};
|
||||
allChartsList.value = learnTimeList.value;
|
||||
chartsList.value = allChartsList.value.annual?allChartsList.value.annual.list:[];
|
||||
myselfObj.value = allChartsList.value.annual?allChartsList.value.annual.self:{};
|
||||
console.log(chartsList.value,'chartsList.value')
|
||||
console.log(myselfObj.value,myselfObj.value,'myselfObj.value')
|
||||
chartsList.value.forEach(item => item.score = item.annlStdyTmLen);
|
||||
myselfObj.value.score = myselfObj.value.annlStdyTmLen;
|
||||
if (chartsList.value.length > 3) {
|
||||
newChartsList.value = chartsList.value.slice(3).concat();
|
||||
} else {
|
||||
newChartsList.value = chartsList.value;
|
||||
}
|
||||
console.log(newChartsList.value, 'newChartsList')
|
||||
})
|
||||
getLeaderBoardPractCntApi().then(res => {
|
||||
console.log(res, 'getLeaderBoardPractCntApi')
|
||||
practCntList.value = res.body || {};
|
||||
console.log(practCntList.value, 'practCntList')
|
||||
})
|
||||
getLeaderBoardExamCntApi().then(res => {
|
||||
console.log(res, 'getLeaderBoardExamCntApi')
|
||||
examCntList.value = res.body || {};
|
||||
console.log(examCntList.value, 'examCntList')
|
||||
})
|
||||
getLeaderBoardCrsCntApi().then(res => {
|
||||
console.log(res, 'getLeaderBoardCrsCntApi')
|
||||
crsCntList.value = res.body || {};
|
||||
console.log(crsCntList.value, 'crsCntList')
|
||||
})
|
||||
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
$bg-margin-left: 50rpx;
|
||||
.my_tabs {
|
||||
// 解决这个圆角的图片,开穿透
|
||||
:deep(.uv-tabs__wrapper__nav__line) {
|
||||
height: 26rpx !important;
|
||||
left: 70rpx;
|
||||
background-size: 28rpx !important;
|
||||
background-repeat: no-repeat !important;
|
||||
}
|
||||
}
|
||||
.detail-body {
|
||||
background: #ffffff;
|
||||
border-radius: 15rpx;
|
||||
z-index: 101;
|
||||
overflow: hidden;
|
||||
|
||||
.body-tab {
|
||||
height: 88rpx;
|
||||
border-bottom: 1rpx solid #BBBBBB;
|
||||
}
|
||||
|
||||
.body-tabs {
|
||||
width: 100%;
|
||||
height: 99rpx;
|
||||
line-height: 96rpx;
|
||||
border-bottom: 1rpx solid #BBBBBB;
|
||||
}
|
||||
}
|
||||
|
||||
.detail-main {
|
||||
background-color: #F6F8FF;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.title {
|
||||
color: #000000;
|
||||
font-size: 34rpx;
|
||||
height: 34rpx;
|
||||
font-weight: 600;
|
||||
line-height: 34rpx;
|
||||
}
|
||||
|
||||
.fixed_search_div {
|
||||
padding: calc(20rpx + var(--status-bar-height)) 15rpx 24rpx 30rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
background-color: #fff;
|
||||
|
||||
.back_div {
|
||||
position: absolute;
|
||||
left: 20rpx;
|
||||
padding: 10rpx;
|
||||
|
||||
.back-icon {
|
||||
position: relative;
|
||||
width: 50rpx;
|
||||
height: 50rpx;
|
||||
cursor: pointer;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.back-icon::before,
|
||||
.back-icon::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
|
||||
.back-icon::after {
|
||||
top: 25%;
|
||||
left: 25%;
|
||||
width: 40%;
|
||||
height: 40%;
|
||||
border-top: 4rpx solid #000000;
|
||||
border-left: 4rpx solid #000000;
|
||||
transform: rotate(-45deg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.date-body {
|
||||
height: 114rpx;
|
||||
line-height: 114rpx;
|
||||
}
|
||||
|
||||
.date-sty {
|
||||
margin-left: 32rpx;
|
||||
height: 60rpx;
|
||||
line-height: 60rpx;
|
||||
display: inline-block;
|
||||
|
||||
.date-item-sty {
|
||||
display: inline-block;
|
||||
width: 56rpx;
|
||||
height: 60rpx;
|
||||
line-height: 60rpx;
|
||||
color: #040404;
|
||||
text-align: center;
|
||||
font-size: 28rpx;
|
||||
margin-left: 42rpx;
|
||||
margin-right: 42rpx;
|
||||
}
|
||||
|
||||
.active-date-item-sty {
|
||||
display: inline-block;
|
||||
width: 140rpx;
|
||||
height: 60rpx;
|
||||
color: #FFFFFF;
|
||||
text-align: center;
|
||||
font-size: 28rpx;
|
||||
border-radius: 38rpx;
|
||||
background-color: #4080FF;
|
||||
}
|
||||
}
|
||||
|
||||
// 墨刀样式
|
||||
// .tabs-sty{
|
||||
// font-size: 28rpx;
|
||||
// font-weight: 600;
|
||||
// display: flex;
|
||||
// flex-direction: row;
|
||||
// align-items: center;
|
||||
// justify-content: center;
|
||||
// position: relative;
|
||||
// }
|
||||
// .tabs-item-sty{
|
||||
// width: 25%;
|
||||
// text-align: center;
|
||||
// height: 100rpx;
|
||||
// justify-content: center;
|
||||
// }
|
||||
// .active-tabs-item-sty{
|
||||
// color: #2572F0;
|
||||
// width: 25%;
|
||||
// text-align: center;
|
||||
// background-color: #E6F7FF;
|
||||
// border-bottom: 2px solid #2572F0;
|
||||
// }
|
||||
// 蓝湖样式
|
||||
.tabs-sty {
|
||||
font-size: 28rpx;
|
||||
font-weight: 600;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.tabs-item-sty {
|
||||
color: #999999;
|
||||
font-weight: 500;
|
||||
width: 25%;
|
||||
text-align: center;
|
||||
height: 100rpx;
|
||||
}
|
||||
|
||||
.active-tabs-item-sty {
|
||||
position: relative;
|
||||
font-size: 30rpx;
|
||||
color: #333333;
|
||||
font-weight: 600;
|
||||
width: 25%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.active-tabs-item-sty::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
width: 90rpx;
|
||||
height: 1rpx;
|
||||
border-bottom: 4rpx solid #4080FF;
|
||||
top: 91rpx;
|
||||
left: 25%;
|
||||
}
|
||||
|
||||
.uni-table th {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.uni-table td {
|
||||
// border: none;
|
||||
}
|
||||
|
||||
.rank-style {
|
||||
width: 100%;
|
||||
|
||||
.rank-top3 {
|
||||
background-color: #FFFFFF;
|
||||
padding: 0 32rpx 36rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.rank-content {
|
||||
text-align: center;
|
||||
border-radius: 32rpx;
|
||||
padding-top: 24rpx;
|
||||
position: relative;
|
||||
|
||||
.crown1 {
|
||||
width: 32rpx;
|
||||
height: 24rpx;
|
||||
position: absolute;
|
||||
top: 10rpx;
|
||||
left: 130rpx;
|
||||
}
|
||||
|
||||
.crown2 {
|
||||
width: 32rpx;
|
||||
height: 24rpx;
|
||||
position: absolute;
|
||||
top: 10rpx;
|
||||
left: 140rpx;
|
||||
}
|
||||
|
||||
.crown3 {
|
||||
width: 32rpx;
|
||||
height: 24rpx;
|
||||
position: absolute;
|
||||
top: 16rpx;
|
||||
left: 130rpx;
|
||||
}
|
||||
|
||||
.top-avator {
|
||||
width: 158rpx;
|
||||
height: 158rpx;
|
||||
}
|
||||
|
||||
.content1 {
|
||||
font-size: 28rpx;
|
||||
color: #737FA6;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.content11 {
|
||||
font-size: 28rpx;
|
||||
color: #AFA455;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.content111 {
|
||||
font-size: 28rpx;
|
||||
color: #B07653;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.content2 {
|
||||
font-size: 32rpx;
|
||||
color: #000000;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.content3 {
|
||||
font-size: 28rpx;
|
||||
color: #436197;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.content33 {
|
||||
font-size: 28rpx;
|
||||
color: #986C1A;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.content333 {
|
||||
font-size: 28rpx;
|
||||
color: #8A4815;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
.content4 {
|
||||
font-size: 24rpx;
|
||||
color: #6682B7;
|
||||
font-weight: 400;
|
||||
width: 158rpx;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.content44 {
|
||||
font-size: 24rpx;
|
||||
color: #986C1A;
|
||||
font-weight: 400;
|
||||
width: 158rpx;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
.content444 {
|
||||
font-size: 24rpx;
|
||||
color: #986C1A;
|
||||
font-weight: 400;
|
||||
width: 158rpx;
|
||||
margin: 0 auto;
|
||||
}
|
||||
}
|
||||
|
||||
.rank-content-backgound-color1 {
|
||||
margin-top: 32rpx;
|
||||
width: 206rpx;
|
||||
// height: 418rpx;
|
||||
padding-bottom: 20rpx;
|
||||
background-color: #E8F3FF;
|
||||
padding-bottom: 10rpx;
|
||||
}
|
||||
|
||||
.rank-content-backgound-color2 {
|
||||
width: 220rpx;
|
||||
// height: 432rpx;
|
||||
padding-bottom: 20rpx;
|
||||
background: linear-gradient(180deg, #FEEFB7 0%, #FADB66 100%);
|
||||
}
|
||||
|
||||
.rank-content-backgound-color3 {
|
||||
margin-top: 42rpx;
|
||||
width: 206rpx;
|
||||
// height: 418rpx;
|
||||
padding-bottom: 20rpx;
|
||||
background: linear-gradient(180deg, #FCDAB7 0%, #F9B16C 100%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.rank-other {
|
||||
width: 100%;
|
||||
|
||||
:deep(.uni-table) {
|
||||
min-width: 0 !important;
|
||||
}
|
||||
:deep(.uni-list--border-top) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.rank-uni-sty {
|
||||
font-weight: 400;
|
||||
font-size: 26rpx;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.rank-other-rank-sty {
|
||||
width: 20%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.rank-other-user-sty {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.rank-other-last-sty {
|
||||
width: 30%;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.rank-sty {
|
||||
font-size: 40rpx;
|
||||
font-weight: 600;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.active-rank-sty {
|
||||
font-size: 40rpx;
|
||||
font-weight: 600;
|
||||
color: #0066FF;
|
||||
}
|
||||
|
||||
.score-sty {
|
||||
font-size: 32rpx;
|
||||
font-weight: 600;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.score-sty-footer {
|
||||
width: 30%;
|
||||
text-align: center;
|
||||
margin-top: 15rpx
|
||||
}
|
||||
|
||||
.avator {
|
||||
width: 80rpx;
|
||||
height: 80rpx;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.name {
|
||||
font-size: 30rpx;
|
||||
font-weight: 600;
|
||||
text-align: left;
|
||||
color: #000000;
|
||||
}
|
||||
|
||||
.active-name {
|
||||
font-size: 30rpx;
|
||||
font-weight: 600;
|
||||
text-align: left;
|
||||
color: #0066FF;
|
||||
}
|
||||
|
||||
.belong {
|
||||
font-size: 26rpx;
|
||||
text-align: left;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
:deep(.uni-table-th-content) {
|
||||
font-weight: 400;
|
||||
font-size: 26rpx;
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
|
||||
.rank-mine {
|
||||
width: 100%;
|
||||
height: 176rpx;
|
||||
background-color: #f5f9ff !important;
|
||||
box-shadow: 0rpx 1rpx 0rpx 0rpx #EFEFEF;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
|
||||
.rank-mine-content {
|
||||
width: 100%;
|
||||
margin-left: 46rpx;
|
||||
margin-top: 14rpx;
|
||||
|
||||
.my-avator {
|
||||
width: 80rpx;
|
||||
height: 80rpx;
|
||||
float: left;
|
||||
margin-right: 18rpx;
|
||||
}
|
||||
}
|
||||
:deep(.uni-list-item__container) {
|
||||
align-items: center;
|
||||
height: 100%;
|
||||
}
|
||||
.my-rank-title {
|
||||
position: absolute;
|
||||
width: 20%;
|
||||
top: 16rpx;
|
||||
left: 32rpx;
|
||||
text-align: center;
|
||||
font-size: 26rpx;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.my-rank-content {
|
||||
width: 20%;
|
||||
text-align: center;
|
||||
font-size: 40rpx;
|
||||
color: #0066FF;
|
||||
font-style: italic;
|
||||
font-weight: 600;
|
||||
margin-top: 20rpx
|
||||
}
|
||||
|
||||
.my-rank-name {
|
||||
font-size: 30rpx;
|
||||
font-weight: 600;
|
||||
color: #000000;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.my-rank-belong {
|
||||
font-size: 26rpx;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
}
|
||||
|
||||
.my-rank-score {
|
||||
width: 30%;
|
||||
text-align: center;
|
||||
font-size: 32rpx;
|
||||
text-align: center;
|
||||
color: #333333;
|
||||
font-weight: 600;
|
||||
margin-top: 15rpx;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -639,7 +639,7 @@
|
||||
common.switchTab('/pages/course/index');
|
||||
break;
|
||||
case 'AI练':
|
||||
common.navigateTo('/pages/sparring/index');
|
||||
common.switchTab('/pages/sparring/index');
|
||||
break;
|
||||
case 'AI考':
|
||||
common.navigateTo('/pages/testingHall/index');
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
<view class="title">AI问答</view>
|
||||
</view>
|
||||
|
||||
<view class="item" @click="common.navigateTo('/pages/sparring/index')">
|
||||
<view class="item" @click="common.switchTab('/pages/sparring/index')">
|
||||
<image class="icon" src="@/static/images/index/navigation_ai.png"></image>
|
||||
<view class="title">AI陪练</view>
|
||||
</view>
|
||||
|
||||
@@ -14,36 +14,38 @@
|
||||
<text class="card-title-age">{{ item.chaAge }}岁</text>
|
||||
<text class="card-title-img">
|
||||
<image class="card-title-icon" v-if="item.gender === 'm'" src="@/static/images/me/man.png"></image>
|
||||
<image class="card-title-icon" v-if="item.gender === 'f'" src="@/static/images/me/wuman.png"></image>
|
||||
<image class="card-title-icon" v-if="item.gender === 'f'" src="@/static/images/me/wuman.png"></image>
|
||||
</text>
|
||||
</view>
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon1.png"></image>
|
||||
身份情况
|
||||
<view class="card-items">
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon1.png"></image>
|
||||
职业身份
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.occupation }}</text>
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.occupation }}</text>
|
||||
</view>
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon2.png"></image>
|
||||
性格特点
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon2.png"></image>
|
||||
性格倾向
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.personality }}</text>
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.personality }}</text>
|
||||
</view>
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon3.png"></image>
|
||||
提问思路
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon3.png"></image>
|
||||
沟通风格
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.thoughtProcess }}</text>
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.thoughtProcess }}</text>
|
||||
</view>
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon4.png"></image>
|
||||
人物描述
|
||||
<view class="card-item">
|
||||
<view class="card-item-title">
|
||||
<image class="card-item-title-icon" src="@/static/images/sparring/role-icon4.png"></image>
|
||||
人物描述
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.chaDesc }}</text>
|
||||
</view>
|
||||
<text class="card-item-desc">{{ item.chaDesc }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</swiper-item>
|
||||
@@ -177,16 +179,18 @@
|
||||
width: 590rpx;
|
||||
height: 100%;
|
||||
border-radius: 24rpx;
|
||||
background: #e5eafd;
|
||||
// background: #e5eafd;
|
||||
background: linear-gradient(234deg, #e2e8fd 0%, #EAECFC 33%, #d9eafd 100%);
|
||||
overflow-x: hidden;
|
||||
overflow-Y: auto;
|
||||
transition: all 0.3s ease;
|
||||
position: relative;
|
||||
padding: 50rpx 23rpx 23rpx;
|
||||
padding: 50rpx 0rpx 23rpx;
|
||||
|
||||
.card-content {
|
||||
padding: 24rpx;
|
||||
padding: 24rpx 0;
|
||||
}
|
||||
|
||||
|
||||
.card-title {
|
||||
display: flex;
|
||||
font-size: 29rpx;
|
||||
@@ -199,44 +203,53 @@
|
||||
text-align: center;
|
||||
margin: 33rpx auto;
|
||||
justify-content: center;
|
||||
|
||||
&-name{
|
||||
margin-right: 20rpx;
|
||||
line-height: 44rpx;
|
||||
}
|
||||
&-age{
|
||||
|
||||
&-name {
|
||||
margin-right: 20rpx;
|
||||
line-height: 44rpx;
|
||||
}
|
||||
&-img{
|
||||
|
||||
&-age {
|
||||
margin-right: 20rpx;
|
||||
line-height: 44rpx;
|
||||
}
|
||||
|
||||
&-img {
|
||||
height: 44rpx;
|
||||
width: 30rpx;
|
||||
padding: 5rpx 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
&-icon{
|
||||
|
||||
&-icon {
|
||||
height: 30rpx;
|
||||
width: 30rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.card-items{
|
||||
padding: 0 24rpx;
|
||||
height: calc(100% - 412rpx);
|
||||
overflow-y: auto;
|
||||
}
|
||||
.card-item {
|
||||
width: 100%;
|
||||
display: block;
|
||||
background: linear-gradient(209deg, #fefeff 0%, #ddeafc 100%);
|
||||
border: 2rpx solid rgba(255, 255, 255, .65);
|
||||
border: 2rpx solid rgba(255, 255, 255, .65);
|
||||
margin-bottom: 15rpx;
|
||||
border-radius: 15rpx;
|
||||
box-sizing: border-box;
|
||||
padding: 23rpx;
|
||||
font-size: 28rpx;
|
||||
line-height: 40rpx;
|
||||
&-title{
|
||||
|
||||
&-title {
|
||||
color: #06f;
|
||||
padding-left: 38rpx;
|
||||
position: relative;
|
||||
margin-bottom: 8rpx;
|
||||
&-icon{
|
||||
|
||||
&-icon {
|
||||
width: 30rpx;
|
||||
height: 30rpx;
|
||||
position: absolute;
|
||||
@@ -245,11 +258,10 @@
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
}
|
||||
&-desc{
|
||||
|
||||
}
|
||||
|
||||
&-desc {}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
.card:not(.active) {
|
||||
@@ -263,5 +275,4 @@
|
||||
overflow: hidden;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
</style>
|
||||
@@ -109,7 +109,7 @@ import { onUnload } from '@dcloudio/uni-app';
|
||||
talkVoiceObj.value.onPlay(()=>{
|
||||
if(isTesting.value){
|
||||
talkVoiceObj.value.pause()
|
||||
isTesting.value = false
|
||||
isTesting.value = false
|
||||
}
|
||||
})
|
||||
talkVoiceObj.value.onEnded(()=>{
|
||||
@@ -121,8 +121,8 @@ import { onUnload } from '@dcloudio/uni-app';
|
||||
})
|
||||
itemVoice.value = unref(dataInfo).talkingVoice
|
||||
talkVoiceObj.value.src = itemVoice.value
|
||||
talkVoiceObj.value.play()
|
||||
isTesting.value = true
|
||||
talkVoiceObj.value.play()
|
||||
talkVoiceObj.value.pause()
|
||||
setTimeout(()=>{
|
||||
setVoiceTime(0)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
</view>
|
||||
</view>
|
||||
</scroll-view>
|
||||
<view class="item-publish">截至时间:{{itemInfo.endTm}}</view>
|
||||
<view class="item-publish">截至时间:{{itemInfo.limitTyp === '01'?'不限制':itemInfo.endTm}}</view>
|
||||
<view class="item-num">陪练次数:{{itemInfo.practiceTimes }}人次</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -106,7 +106,8 @@
|
||||
partnerChatPrompt({
|
||||
execId: props.execId,
|
||||
traId: props.traId,
|
||||
content: props.talkingInfo.talkingText
|
||||
content: props.talkingInfo.talkingText,
|
||||
chaId: roleInfo.value?.chaId
|
||||
}).then(res=>{
|
||||
tipsContent.value = res.body
|
||||
loadingTips.value = false
|
||||
|
||||
@@ -161,7 +161,7 @@
|
||||
height: 436rpx;
|
||||
clip-path: ellipse(650rpx 327rpx at 375rpx 109rpx);
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
position: fixed;
|
||||
top: var(--status-bar-height);
|
||||
left: 0;
|
||||
z-index: 2;
|
||||
|
||||
+1
-1
@@ -76,7 +76,7 @@
|
||||
},
|
||||
{
|
||||
"text": "场景",
|
||||
"pagePath": "pages/scene/index"
|
||||
"pagePath": "pages/sparring/index"
|
||||
},
|
||||
{
|
||||
"text": "我的",
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 82 KiB |
Reference in New Issue
Block a user