mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal.git
synced 2025-12-09 10:56:44 +08:00
Merge branch 'stat' of https://codeup.aliyun.com/6265f483e4166464dc2f9c14/boeu/portal into stat
This commit is contained in:
@@ -55,19 +55,19 @@ const detail = function(id,preview) {
|
||||
const ranking = function(data) {
|
||||
return ajax.post('/xboe/m/course/portal/ranking',data);
|
||||
}
|
||||
/*
|
||||
评分榜
|
||||
/*
|
||||
评分榜
|
||||
@param num 要几条传几条 不传默认五条
|
||||
*/
|
||||
const scorelist=function(num){
|
||||
return ajax.get(`/xboe/m/course/portal/score-list?num=${num}`);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 按课程IDs获取教师
|
||||
* @param {课程IDs} ids
|
||||
* @returns
|
||||
* @param {课程IDs} ids
|
||||
* @returns
|
||||
*/
|
||||
const getTeacherByCourseIDs = function(ids){
|
||||
return ajax.postJson('/xboe/m/course/portal/query-teacher', ids);
|
||||
@@ -81,6 +81,14 @@ const studyCounts=function(num){
|
||||
const courseSearch=function(query){
|
||||
return ajax.post('/xboe/m/course/fulltext/search',query);
|
||||
}
|
||||
|
||||
/**
|
||||
* 课程学习进度的详细信息
|
||||
* @param {String} id
|
||||
*/
|
||||
const detailStudy = function(courseId,aid) {
|
||||
return ajax.get(`/xboe/m/course/portal/detail-study?courseId=${courseId}&aid=${aid}`);
|
||||
}
|
||||
export default {
|
||||
list,
|
||||
pageList,
|
||||
@@ -89,5 +97,6 @@ export default {
|
||||
scorelist,
|
||||
getTeacherByCourseIDs,
|
||||
studyCounts,
|
||||
courseSearch
|
||||
courseSearch,
|
||||
detailStudy
|
||||
}
|
||||
|
||||
@@ -685,7 +685,7 @@
|
||||
height: 370px;
|
||||
padding: 30px 45px;
|
||||
.personal-box{
|
||||
margin-left: 16px;
|
||||
// margin-left: 16px;
|
||||
margin-top: 20px;
|
||||
margin-bottom: 28px;
|
||||
}
|
||||
|
||||
@@ -153,7 +153,7 @@
|
||||
<el-row style="margin-bottom: 20px;">
|
||||
<el-col :span="3">
|
||||
<div class="grid-content bg-purple">
|
||||
课程目录:
|
||||
课程目录:
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="5">
|
||||
@@ -251,10 +251,11 @@
|
||||
<div>
|
||||
<!-- <div v-if="study.detailType == 10"><auditCourse1 :isDetails="true" :isShow="false" :id="study.examineId"></auditCourse1></div>
|
||||
<div v-if="study.detailType == 20"><auditCourse2 :isDetails="true" :isShow="false" :id="study.examineId"></auditCourse2></div> -->
|
||||
<el-table max-height="500" border :data="catalogRecordTree" style="width: 100%">
|
||||
<el-table max-height="500" border :data="this.courseStudyList" style="width: 100%">
|
||||
<el-table-column label="课程目录">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.chapterName}}{{scope.row.chapterName? '--': ''}}{{scope.row.contentName}}
|
||||
<!-- {{scope.row.chapterName}}{{scope.row.chapterName? '--': ''}}{{scope.row.contentName}}-->
|
||||
{{scope.row.contentName}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="status" label="状态">
|
||||
@@ -262,9 +263,10 @@
|
||||
<span>{{scope.row.status == 9? '已完成':'未开始'}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="duration" label="时长(分)">
|
||||
<el-table-column prop="duration" label="进度">
|
||||
<template slot-scope="scope">
|
||||
{{scope.row.duration == 0?'0':scope.row.duration/60}}
|
||||
<!-- {{scope.row.studyDuration == 0?'0':scope.row.studyDuration/60}}-->
|
||||
{{scope.row.studyDuration}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
@@ -349,6 +351,7 @@ export default {
|
||||
resOwnerListMap:[],
|
||||
sysTypeListMap:[],
|
||||
catalogList: [],
|
||||
courseStudyList: [],
|
||||
sysType: "",
|
||||
// sysTypeList: sysTypeList,
|
||||
treeList: [],
|
||||
@@ -468,7 +471,7 @@ export default {
|
||||
}
|
||||
this.catalogTree = treeList;
|
||||
this.catalogList = treeList;
|
||||
|
||||
|
||||
} else {
|
||||
this.$message.error(rs.message);
|
||||
}
|
||||
@@ -553,6 +556,15 @@ export default {
|
||||
this.$message.error(rs.message);
|
||||
}
|
||||
});
|
||||
},
|
||||
getStudyDetail(courseId,aid){
|
||||
apiCoursePortal.detailStudy(courseId,aid).then(res =>{
|
||||
if (res.status == 200) {
|
||||
this.courseStudyList=res.result;
|
||||
}else {
|
||||
this.courseStudyList=[];
|
||||
}
|
||||
});
|
||||
},
|
||||
loadStudyData(courseId) {
|
||||
let $this=this;
|
||||
@@ -636,9 +648,10 @@ export default {
|
||||
status: this.signup.status, //状态
|
||||
name: this.signup.name, //姓名
|
||||
pageIndex: this.study.pageIndex,
|
||||
pageSize: this.study.pageSize
|
||||
pageSize: this.study.pageSize,
|
||||
aid:this.study.aid
|
||||
};
|
||||
|
||||
|
||||
apicourseStudy.findSignup(params).then(res => {
|
||||
if (res.status === 200) {
|
||||
let ids = [];
|
||||
@@ -703,7 +716,8 @@ export default {
|
||||
// this.study.detailType = row.courseType;
|
||||
// this.study.examineId = row.courseId;
|
||||
this.study.detailShow = true;
|
||||
this.getRecordDetail(row.courseId);
|
||||
this.getStudyDetail(row.courseId,row.aid);
|
||||
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -935,7 +935,8 @@
|
||||
position: absolute;
|
||||
right: 8%;
|
||||
top: 105px;
|
||||
background: url('/images/homeWu/personal-bgimg.png');
|
||||
// background: url('/images/homeWu/personal-bgimg.png');
|
||||
background: rgba($color: #fff, $alpha: 0.2);
|
||||
border-radius: 8px;
|
||||
z-index: 999;
|
||||
backdrop-filter: blur(10px);
|
||||
@@ -946,7 +947,6 @@
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
margin: 0 auto;
|
||||
|
||||
::v-deep .el-avatar {
|
||||
width: 68px;
|
||||
height: 68px;
|
||||
|
||||
@@ -391,11 +391,13 @@ export default {
|
||||
}
|
||||
},
|
||||
handleScroll() {
|
||||
let innerw = document.querySelector("#fixd-box");
|
||||
let innerHeight = document.querySelector('#case-list-content').clientHeight
|
||||
let pdfTopBox = document.querySelector('#comments-box')
|
||||
let pdfPreview = document.querySelector('#pdfPreview') //pdf盒子距离顶部的高度
|
||||
let contentDiv = document.querySelector('#content-div').clientWidth;
|
||||
let outerHeight = document.documentElement.clientHeight
|
||||
let outerHeight = document.documentElement.clientHeight;
|
||||
let outerWidth = innerw.clientWidth;
|
||||
let scrollTop = document.documentElement.scrollTop
|
||||
if ((outerHeight + scrollTop + 350) >= innerHeight) {
|
||||
if(this.moreState == 1 && this.course.pageIndex < 4) {
|
||||
@@ -412,7 +414,7 @@ export default {
|
||||
}
|
||||
if(scrollTop > 630) {
|
||||
this.isTopBoxShow = true;
|
||||
document.querySelector('#fixd-box').style.cssText = "position: fixed;top: -4420px;width:245.5px";
|
||||
document.querySelector('#fixd-box').style.cssText = "position: fixed;top: -442px;width:"+outerWidth+"px";
|
||||
} else {
|
||||
document.querySelector('#fixd-box').style.cssText = "position: static";
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div id="case-list-content">
|
||||
<div class="case-banner">
|
||||
<div style="margin-bottom:30px" class="case-banner">
|
||||
<portal-header current="case" textColor="#fff" @emitInput="emitInput"></portal-header>
|
||||
</div>
|
||||
<div class="xcontent2">
|
||||
@@ -476,9 +476,11 @@ export default {
|
||||
this.getCaseData();
|
||||
},
|
||||
handleScroll() {
|
||||
let innerw = document.querySelector("#fixd-box");
|
||||
let innerHeight = document.querySelector("#case-list-content")
|
||||
.clientHeight;
|
||||
let outerHeight = document.documentElement.clientHeight;
|
||||
let outerWidth = innerw.clientWidth;
|
||||
let scrollTop = document.documentElement.scrollTop;
|
||||
if (outerHeight + scrollTop + 350 >= innerHeight) {
|
||||
if (this.moreState == 1) {
|
||||
@@ -487,7 +489,7 @@ export default {
|
||||
}
|
||||
if (scrollTop > 630) {
|
||||
document.querySelector("#fixd-box").style.cssText =
|
||||
"position: fixed;top: -442px;width:410px";
|
||||
"position: fixed;top: -442px;width:"+outerWidth+"px";
|
||||
} else {
|
||||
document.querySelector("#fixd-box").style.cssText = "position: static";
|
||||
}
|
||||
|
||||
@@ -387,8 +387,10 @@ export default {
|
||||
})
|
||||
},
|
||||
handleScroll() {
|
||||
let innerw = document.querySelector(".qa-ranking");
|
||||
let innerHeight = document.querySelector("#answer-detail").clientHeight;
|
||||
let outerHeight = document.documentElement.clientHeight;
|
||||
let outerWidth = innerw.clientWidth;
|
||||
let scrollTop = document.documentElement.scrollTop;
|
||||
if (outerHeight + scrollTop + 350 >= innerHeight) {
|
||||
if (this.moreState == 1) {
|
||||
@@ -397,7 +399,7 @@ export default {
|
||||
}
|
||||
if (scrollTop > 400) {
|
||||
document.querySelector(".qa-ranking").style.cssText =
|
||||
"position: fixed;top: 0;width:410px";
|
||||
"position: fixed;top: 0;width:"+outerWidth+"px";
|
||||
} else {
|
||||
document.querySelector(".qa-ranking").style.cssText =
|
||||
"position: static";
|
||||
|
||||
@@ -263,8 +263,10 @@ export default {
|
||||
this.dialogVisible = true;
|
||||
},
|
||||
handleScroll(){
|
||||
let innerw = document.querySelector("#qa-fixd");
|
||||
let innerHeight = document.querySelector('#qa-list-content').clientHeight
|
||||
let outerHeight = document.documentElement.clientHeight
|
||||
let outerWidth = innerw.clientWidth;
|
||||
let scrollTop = document.documentElement.scrollTop
|
||||
if ((outerHeight + scrollTop + 350) >= innerHeight) {
|
||||
if(this.moreState == 1) {
|
||||
@@ -272,7 +274,7 @@ export default {
|
||||
}
|
||||
}
|
||||
if(scrollTop > 400) {
|
||||
document.querySelector('#qa-fixd').style.cssText = "position: fixed;top: 0px;width:410px;";
|
||||
document.querySelector('#qa-fixd').style.cssText = "position: fixed;top: 0px;width:"+outerWidth+"px";
|
||||
} else {
|
||||
document.querySelector('#qa-fixd').style.cssText = "position: static";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user