This commit is contained in:
daihh
2023-03-29 19:36:40 +08:00
parent 63e6810514
commit 9de7dbb4d2
3 changed files with 65 additions and 11 deletions

View File

@@ -376,6 +376,11 @@ const myStudysFromES=function (data){
return ajax.post('/xboe/school/study/es/search',data); return ajax.post('/xboe/school/study/es/search',data);
} }
/**根据id集合查询传入的是id数组*/
const findByIds=function (ids){
return ajax.postJson('/xboe/school/study/es/list-by-ids',ids);
}
export default { export default {
hasSignup, hasSignup,
signup, signup,
@@ -406,6 +411,7 @@ export default {
myExamList2, myExamList2,
myCourseStudy, myCourseStudy,
myStudysFromES, myStudysFromES,
findByIds,
deleteSignUp, deleteSignUp,
ids, ids,
followIds followIds

View File

@@ -1,7 +1,7 @@
<template> <template>
<div class="study-index" v-loading="loading"> <div class="study-index" v-loading="loading">
<Remark> <Remark>
1.学员个人中心首页,根据需求无需此页直接打开我的任务->我报名的
</Remark> </Remark>
</div> </div>
</template> </template>
@@ -87,7 +87,7 @@
// }) // })
}, },
created() { created() {
//this.$router.push('/uc/study/courses'); this.$router.push('/uc/study/courses');
// this.searchData(); // this.searchData();
// this.getLastStudy(); // this.getLastStudy();
// this.loadRemoteTask(); // this.loadRemoteTask();

View File

@@ -46,8 +46,12 @@
</div> </div>
</div> </div>
<div style="padding-top:6px" class="uc-course-text"><i class="el-icon-time" style="margin-right:4px"></i>报名时间{{ formatsec(Number(item.startTime) * 1000 )}}</div> <div style="padding-top:6px" class="uc-course-text"><i class="el-icon-time" style="margin-right:4px"></i>报名时间{{ formatsec(Number(item.startTime) * 1000 )}}</div>
<div style="width: 80%;margin-top: 20px;display: flex;"> <div v-if="item.courseType==30">
<div style="color: #333333;font-size: 14px;">当前进度</div> <div class="uc-course-text" style="margin-top: 8px;"><i class="el-icon-location-outline" style="margin-right:4px"></i>面授地点{{ item.courseAddress }}</div>
<div class="uc-course-text" style="margin-top: 8px;"><i class="el-icon-timer" style="margin-right:4px"></i>上课时间{{ formatsec(Number(item.attendCourseTime) * 1000 ) }}</div>
</div>
<div v-else style="width: 80%;margin-top: 20px;display: flex;">
<div style="color: #333333;font-size: 14px;"><i class="el-icon-s-operation" style="margin-right:4px"></i>当前进度</div>
<div style="width:170px;padding-top: 5px;"> <div style="width:170px;padding-top: 5px;">
<el-progress :percentage="item.progress" color="#FFA050"></el-progress> <el-progress :percentage="item.progress" color="#FFA050"></el-progress>
</div> </div>
@@ -55,7 +59,7 @@
</div> </div>
<div class="uc-course-btns"> <div class="uc-course-btns">
<div style="text-align: right;"> <div style="text-align: right;">
<!-- <el-button class="del" @click.stop="delItem(item,idx)" type="text" icon="el-icon-delete" size="mini" title="删除"></el-button> --> <el-button class="del" @click.stop="delItem(item,idx)" type="text" icon="el-icon-delete" size="mini" title="删除"></el-button>
<el-dropdown trigger="click" style="display: none;"> <el-dropdown trigger="click" style="display: none;">
<span class="el-dropdown-link"> <span class="el-dropdown-link">
<svg-icon style="margin-right: 0;font-size:26px;" icon-class="spot"></svg-icon> <svg-icon style="margin-right: 0;font-size:26px;" icon-class="spot"></svg-icon>
@@ -67,11 +71,37 @@
</el-dropdown-menu> </el-dropdown-menu>
</el-dropdown> </el-dropdown>
</div> </div>
<span @click.stop="jumpRouter(item)"> <div v-if="item.courseType==30">
<!-- <el-button style="margin-top:30px" v-if="item.progress==0" type="primary" size="small">开始学习</el-button> --> <div v-if="item.applyStatus==10"><!--报名待审核展示为等待审核-->
<el-button style="margin-top:30px" v-if="item.progress<100" type="primary" size="small">继续学习</el-button> <div><el-button style="margin-top:30px" type="primary" disabled size="small">等待审核</el-button></div>
<el-button style="margin-top:30px" v-if="item.progress==100" type="primary" size="small">回顾</el-button> <!-- <div><el-button style="margin-top:30px;text-align: right;" type="text" size="small">取消报名</el-button></div> -->
</span> </div>
<div v-if="item.applyStatus==20"><!--报名取消-->
<div><el-button style="margin-top:30px" type="primary" disabled size="small">已取消</el-button></div>
<div><el-button style="margin-top:30px;text-align: right;" type="text" size="small">重新报名</el-button></div>
</div>
<div v-if="item.applyStatus==30"><!--报名审核通过展示为报名成功-->
<div><el-button style="margin-top:30px" type="primary" disabled size="small">报名成功</el-button></div>
</div>
<div v-if="item.applyStatus==40"><!--审核拒绝展示为报名失败-->
<div><el-button style="margin-top:30px" type="primary" disabled size="small">报名失败</el-button></div>
<div style="margin-top:30px;text-align: right;">
<el-button type="text" size="small">重新报名</el-button>
<el-button type="text" size="small">删除</el-button>
</div>
</div>
<div v-if="item.applyStatus==50"><!--报名已删除展示为报名已删除-->
<div><el-button style="margin-top:30px" type="primary" disabled size="small">报名已删除</el-button></div>
<div><el-button style="margin-top:30px;text-align: right;" type="text" size="small">删除</el-button></div>
</div>
</div>
<div v-else >
<span @click.stop="jumpRouter(item)">
<!-- <el-button style="margin-top:30px" v-if="item.progress==0" type="primary" size="small">开始学习</el-button> -->
<el-button style="margin-top:30px" v-if="item.progress<100" type="primary" size="small">继续学习</el-button>
<el-button style="margin-top:30px" v-if="item.progress==100" type="primary" size="small">回顾</el-button>
</span>
</div>
</div> </div>
</div> </div>
<div v-if="couresList.length > 0 " style="text-align: center;margin-top:57px;"> <div v-if="couresList.length > 0 " style="text-align: center;margin-top:57px;">
@@ -199,11 +229,29 @@ export default {
this.loading=true; this.loading=true;
apiCourseStudy.myStudysFromES(reqData).then(res=>{ apiCourseStudy.myStudysFromES(reqData).then(res=>{
if(res.status==200){ if(res.status==200){
let localCourseIds=[];//本地在线课程的id集合
res.result.list.forEach(item=>{ res.result.list.forEach(item=>{
if(item.courseImage.startsWith('/upload')){ if(item.courseImage.startsWith('/upload')){
item.courseImage=$this.fileUrl+item.courseImage.substring(7) item.courseImage=$this.fileUrl+item.courseImage.substring(7)
} }
}) if(item.source==2){
localCourseIds.push(item.id);
}
});
if(localCourseIds.length>0){
//二次提取学习进度
apiCourseStudy.findByIds(localCourseIds).then(rs2=>{
if(rs2.status==200){
res.result.list.forEach(item=>{
rs2.result.forEach(idItem=>{
if(item.id==idItem.id){
item.progress=idItem.progress;
}
})
})
}
})
}
this.couresList=res.result.list; this.couresList=res.result.list;
this.page.count=res.result.count; this.page.count=res.result.count;
}else{ }else{