Compare commits
5 Commits
master-062
...
csg-250625
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ea54ea2c20 | ||
|
|
5fe9d2eb96 | ||
|
|
b6562e5c9c | ||
|
|
a0dcd27f8c | ||
|
|
8bc2bc96a8 |
@@ -114,10 +114,6 @@ const studyVideoTime = function(data) {
|
||||
return ajax.post('/xboe/school/study/course/study-video-time',data);
|
||||
}
|
||||
|
||||
const updateStudyVideoTime = function(data) {
|
||||
return ajax.post('/xboe/school/study/course/updateStudyVideoTime',data);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取上一次的学习内容
|
||||
* @returns
|
||||
@@ -412,7 +408,6 @@ export default {
|
||||
studyIndex,
|
||||
studyInfo,
|
||||
studyVideoTime,
|
||||
updateStudyVideoTime,
|
||||
lastStudy,
|
||||
studyContent,
|
||||
appendStudyTime,
|
||||
|
||||
|
Before Width: | Height: | Size: 657 KiB |
BIN
src/assets/images/hotforum/2024.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
src/assets/images/hotforum/2025.png
Normal file
|
After Width: | Height: | Size: 111 KiB |
BIN
src/assets/images/hotforum/2501.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
src/assets/images/hotforum/2502.png
Normal file
|
After Width: | Height: | Size: 244 KiB |
BIN
src/assets/images/hotforum/2503.png
Normal file
|
After Width: | Height: | Size: 186 KiB |
BIN
src/assets/images/hotforum/back25.png
Normal file
|
After Width: | Height: | Size: 1.4 MiB |
BIN
src/assets/images/hotforum/line.png
Normal file
|
After Width: | Height: | Size: 3.0 KiB |
@@ -512,7 +512,6 @@ export default {
|
||||
this.currentProgress = progressVideo;
|
||||
this.barrageTimelineStart = newCurrentTime;
|
||||
this.videoDom.currentTime = newCurrentTime;
|
||||
this.updateProgressText();
|
||||
},
|
||||
/* 提高视频音量
|
||||
*/
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
<!-- </div> -->
|
||||
<!-- 底部 -->
|
||||
<div class="grateful">
|
||||
<img src="../../assets/images/grateful/gratefulFooter20250613.png" alt="" />
|
||||
<img src="../../assets/images/grateful/gratefulFooter.png" alt="" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
179
src/views/hotforum/Index-bak.vue
Normal file
@@ -0,0 +1,179 @@
|
||||
<template>
|
||||
<div class="hot">
|
||||
<div>
|
||||
<div class="center">
|
||||
<div class="item" :style="{marginRight:(i%2==0||i==0)?'49px':'0'}" v-for="item,i in imgData" :key="i">
|
||||
<img class="img" @click="goLearn(item.url)" :src="require(`../../assets/images/hotforum/${item.img}.png`)" alt="">
|
||||
</div>
|
||||
</div>
|
||||
<div style="display: flex;justify-content: center;margin-bottom: 52px;">
|
||||
<img src="../../assets/images/hotforum/foot.png" alt="">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "hotforum",
|
||||
data() {
|
||||
return {
|
||||
imgData:[
|
||||
{img:'01',url:'1265897142383042560'},
|
||||
{img:'02',url:'1265697724606210048'},
|
||||
{img:'003',url:'1280185851054231552'},
|
||||
{img:'04',url:'1321778585966247936'},
|
||||
],
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
goLearn(item){
|
||||
if(item){
|
||||
// this.$router.push({path:'/course/detail',query:{id:item}})
|
||||
window.open(`https://u.boe.com/pc/course/detail?id=${item}`)
|
||||
}
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.hot{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.center{
|
||||
max-width: 1270px;
|
||||
max-height: 700px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 22%;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
.item{
|
||||
width: 610px;
|
||||
height: 330px;
|
||||
background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
background-size: 100%;
|
||||
padding: 14px;
|
||||
padding-top: 31px;
|
||||
margin-bottom: 59px;
|
||||
cursor: pointer;
|
||||
.img{
|
||||
width: 581px;
|
||||
height: 283px;
|
||||
}
|
||||
}
|
||||
}
|
||||
/* 当窗口宽度大于3068px时的样式 */
|
||||
}
|
||||
@media (min-width: 3000px) {
|
||||
.hot{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.center {
|
||||
max-width: 2560px;
|
||||
max-height: 1300px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 30vh;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 1220px;
|
||||
height: 660px;
|
||||
background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
background-size: 100%;
|
||||
padding: 28px;
|
||||
padding-top: 62px;
|
||||
margin-bottom: 59px;
|
||||
|
||||
.img {
|
||||
width: 100%; // 图片宽度占满item宽度
|
||||
height: auto; // 自动调整高度
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@media (min-height: 1500px) {
|
||||
.hot{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.center {
|
||||
max-width: 1068px;
|
||||
max-height: 580px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 30vh;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 500px;
|
||||
height: 271px;
|
||||
background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
background-size: 100%;
|
||||
padding: 14px;
|
||||
padding-top: 26px;
|
||||
margin-bottom: 30px;
|
||||
|
||||
.img {
|
||||
width: 100%; // 图片宽度占满item宽度
|
||||
height: auto; // 自动调整高度
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@media (min-width: 1928px) and (max-width: 3000px) {
|
||||
.hot{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.center {
|
||||
max-width: 1800px;
|
||||
max-height: 1100px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 35vh;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 860px;
|
||||
height: 466px;
|
||||
background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
background-size: 100%;
|
||||
padding: 28px;
|
||||
padding-top: 48px;
|
||||
margin-bottom: 70px;
|
||||
|
||||
.img {
|
||||
width: 100%; // 图片宽度占满item宽度
|
||||
height: auto; // 自动调整高度
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,7 +1,24 @@
|
||||
<template>
|
||||
<div class="hot">
|
||||
<div class="hot25">
|
||||
<div>
|
||||
<div class="center">
|
||||
<div class="title25" style="">
|
||||
<img class="img" src="../../assets/images/hotforum/2025.png" alt="">
|
||||
</div>
|
||||
<div class="center" style="margin-top: 60px;">
|
||||
<div class="item" style="margin-right: 49px;">
|
||||
<img class="img" @click="goLearn('1351506180295131136')" src="../../assets/images/hotforum/2501.jpg" alt="">
|
||||
</div>
|
||||
<div class="item">
|
||||
<img class="img" @click="goLearn('1375146833375027200')" src="../../assets/images/hotforum/2503.png" alt="">
|
||||
</div>
|
||||
</div>
|
||||
<div class="line" style="margin: 0 auto;margin-top: 60px;width: 100%;text-align: center;">
|
||||
<img class="img" src="../../assets/images/hotforum/line.png" alt="">
|
||||
</div>
|
||||
<div class="title24" style="margin: 0 auto;margin-top: 60px;width: 100%;text-align: center;">
|
||||
<img class="img" src="../../assets/images/hotforum/2024.png" alt="">
|
||||
</div>
|
||||
<div class="center" style="margin-top: 60px;">
|
||||
<div class="item" :style="{marginRight:(i%2==0||i==0)?'49px':'0'}" v-for="item,i in imgData" :key="i">
|
||||
<img class="img" @click="goLearn(item.url)" :src="require(`../../assets/images/hotforum/${item.img}.png`)" alt="">
|
||||
</div>
|
||||
@@ -11,11 +28,12 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "hotforum",
|
||||
name: "hotforumNew",
|
||||
data() {
|
||||
return {
|
||||
imgData:[
|
||||
@@ -24,6 +42,10 @@
|
||||
{img:'003',url:'1280185851054231552'},
|
||||
{img:'04',url:'1321778585966247936'},
|
||||
],
|
||||
imgData25:[
|
||||
{img:'2501',url:'1351506180295131136'},
|
||||
{img:'2503',url:'1375146833375027200'},
|
||||
],
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -38,20 +60,22 @@
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.hot{
|
||||
.hot25{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
background: url("../../assets/images/hotforum/back25.png") no-repeat;
|
||||
background-size: cover;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.title25{
|
||||
margin: 0 auto;margin-top: 100px;width: 100%;text-align: center;
|
||||
}
|
||||
.center{
|
||||
max-width: 1270px;
|
||||
max-height: 700px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 22%;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
.item{
|
||||
@@ -71,109 +95,109 @@
|
||||
}
|
||||
/* 当窗口宽度大于3068px时的样式 */
|
||||
}
|
||||
@media (min-width: 3000px) {
|
||||
.hot{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.center {
|
||||
max-width: 2560px;
|
||||
max-height: 1300px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 30vh;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
// @media (min-width: 3000px) {
|
||||
// .hot{
|
||||
// width: 100%;
|
||||
// // max-width: 1920px;
|
||||
// min-height: 100%;
|
||||
// // min-height: 1373px;
|
||||
// background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
// background-size: 100% 100%;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// .center {
|
||||
// max-width: 2560px;
|
||||
// max-height: 1300px;
|
||||
// margin-bottom: 5%;
|
||||
// margin-top: 30vh;
|
||||
// display: flex;
|
||||
// flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 1220px;
|
||||
height: 660px;
|
||||
background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
background-size: 100%;
|
||||
padding: 28px;
|
||||
padding-top: 62px;
|
||||
margin-bottom: 59px;
|
||||
// .item {
|
||||
// width: 1220px;
|
||||
// height: 660px;
|
||||
// background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
// background-size: 100%;
|
||||
// padding: 28px;
|
||||
// padding-top: 62px;
|
||||
// margin-bottom: 59px;
|
||||
|
||||
.img {
|
||||
width: 100%; // 图片宽度占满item宽度
|
||||
height: auto; // 自动调整高度
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@media (min-height: 1500px) {
|
||||
.hot{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.center {
|
||||
max-width: 1068px;
|
||||
max-height: 580px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 30vh;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
// .img {
|
||||
// width: 100%; // 图片宽度占满item宽度
|
||||
// height: auto; // 自动调整高度
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// @media (min-height: 1500px) {
|
||||
// .hot{
|
||||
// width: 100%;
|
||||
// // max-width: 1920px;
|
||||
// min-height: 100%;
|
||||
// // min-height: 1373px;
|
||||
// background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
// background-size: 100% 100%;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// .center {
|
||||
// max-width: 1068px;
|
||||
// max-height: 580px;
|
||||
// margin-bottom: 5%;
|
||||
// margin-top: 30vh;
|
||||
// display: flex;
|
||||
// flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 500px;
|
||||
height: 271px;
|
||||
background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
background-size: 100%;
|
||||
padding: 14px;
|
||||
padding-top: 26px;
|
||||
margin-bottom: 30px;
|
||||
// .item {
|
||||
// width: 500px;
|
||||
// height: 271px;
|
||||
// background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
// background-size: 100%;
|
||||
// padding: 14px;
|
||||
// padding-top: 26px;
|
||||
// margin-bottom: 30px;
|
||||
|
||||
.img {
|
||||
width: 100%; // 图片宽度占满item宽度
|
||||
height: auto; // 自动调整高度
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@media (min-width: 1928px) and (max-width: 3000px) {
|
||||
.hot{
|
||||
width: 100%;
|
||||
// max-width: 1920px;
|
||||
min-height: 100%;
|
||||
// min-height: 1373px;
|
||||
background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
background-size: 100% 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
.center {
|
||||
max-width: 1800px;
|
||||
max-height: 1100px;
|
||||
margin-bottom: 5%;
|
||||
margin-top: 35vh;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
// .img {
|
||||
// width: 100%; // 图片宽度占满item宽度
|
||||
// height: auto; // 自动调整高度
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// @media (min-width: 1928px) and (max-width: 3000px) {
|
||||
// .hot{
|
||||
// width: 100%;
|
||||
// // max-width: 1920px;
|
||||
// min-height: 100%;
|
||||
// // min-height: 1373px;
|
||||
// background: url("../../assets/images/hotforum/back.jpg") no-repeat;
|
||||
// background-size: 100% 100%;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// .center {
|
||||
// max-width: 1800px;
|
||||
// max-height: 1100px;
|
||||
// margin-bottom: 5%;
|
||||
// margin-top: 35vh;
|
||||
// display: flex;
|
||||
// flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 860px;
|
||||
height: 466px;
|
||||
background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
background-size: 100%;
|
||||
padding: 28px;
|
||||
padding-top: 48px;
|
||||
margin-bottom: 70px;
|
||||
// .item {
|
||||
// width: 860px;
|
||||
// height: 466px;
|
||||
// background: url("../../assets/images/hotforum/border.png") no-repeat;
|
||||
// background-size: 100%;
|
||||
// padding: 28px;
|
||||
// padding-top: 48px;
|
||||
// margin-bottom: 70px;
|
||||
|
||||
.img {
|
||||
width: 100%; // 图片宽度占满item宽度
|
||||
height: auto; // 自动调整高度
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// .img {
|
||||
// width: 100%; // 图片宽度占满item宽度
|
||||
// height: auto; // 自动调整高度
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
</style>
|
||||
|
||||
@@ -225,7 +225,7 @@
|
||||
</el-card>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
|
||||
</div>
|
||||
<portal-footer></portal-footer>
|
||||
</div>
|
||||
@@ -653,7 +653,7 @@ export default {
|
||||
itemId:this.coursewareInfo.studyItemId,
|
||||
videoTime:intTime
|
||||
}
|
||||
apicourseStudy.updateStudyVideoTime(postData).then(rs=>{
|
||||
apicourseStudy.studyVideoTime(postData).then(rs=>{
|
||||
if(rs.status!=200){
|
||||
console.log('记录播放时间错误');
|
||||
}
|
||||
@@ -693,7 +693,7 @@ export default {
|
||||
itemId:this.coursewareInfo.studyItemId,
|
||||
videoTime:intTime
|
||||
}
|
||||
apicourseStudy.updateStudyVideoTime(postData).then(rs=>{
|
||||
apicourseStudy.studyVideoTime(postData).then(rs=>{
|
||||
if(rs.status!=200){
|
||||
console.log('记录播放时间错误');
|
||||
}
|
||||
|
||||
@@ -277,15 +277,12 @@
|
||||
<div class="teacher" v-for="(item, idx) in teachers" :key="idx">
|
||||
<div class="teacher-avator" @click="toUserHome(item)" title="点击进入他的主页">
|
||||
<!-- <div class="teacher-text" v-if="item.authorInfo.avatar == ''">{{userAvatarText(item.teacherName)}}</div> -->
|
||||
<div v-if="item.authorInfo && item.authorInfo.avatar">
|
||||
<div v-if="item.authorInfo.avatar !== ''">
|
||||
<el-avatar :src="fileBaseUrl + item.authorInfo.avatar" shape="circle" :size="50"></el-avatar>
|
||||
</div>
|
||||
<div v-else-if="item.photo">
|
||||
<el-avatar :src="item.photo" shape="circle" :size="50"></el-avatar>
|
||||
</div>
|
||||
<div v-else class="teacher-text">
|
||||
<div v-if="item.authorInfo && item.authorInfo.sex === 1"><img src="../../../public/images/Avatarwoman.png" alt=""></div>
|
||||
<div v-else><img src="../../../public/images/Avatarman.png" alt=""></div>
|
||||
<div v-if="item.authorInfo.sex === 1 "><img src="../../../public/images/Avatarman.png" alt=""></div>
|
||||
<div v-else><img src="../../../public/images/Avatarwoman.png" alt=""></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="teacher-info">
|
||||
@@ -470,6 +467,7 @@
|
||||
this.stopStudyTime();//先关闭
|
||||
this.cleanAppendTime();//
|
||||
this.loadData();
|
||||
//console.log(this.$xpage.constants.fileBaseUrl,'this.$xpage.constants.fileBaseUrl');
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['userInfo']),
|
||||
@@ -513,12 +511,14 @@
|
||||
},
|
||||
methods: {
|
||||
handleOpen(key,path){
|
||||
// console.log(key,path,'handleOpen')
|
||||
if(this.isFalse){
|
||||
this.defaultOpeneds = [key]
|
||||
}
|
||||
this.isFalse = false
|
||||
},
|
||||
handleClose(key,path){
|
||||
// console.log(key,path,'handleClose')
|
||||
},
|
||||
toUserHome(tea){
|
||||
this.$router.push({path:this.$xpage.getHomePath(tea.teacherId)})
|
||||
@@ -591,7 +591,9 @@
|
||||
let $this=this;
|
||||
if(this.contentData.id==contentId){
|
||||
this.onPlayerPause()
|
||||
//this.audioPause();
|
||||
this.contentData.lastStudyTime=time;
|
||||
//this.onPlayerPlay();
|
||||
setTimeout(() => {
|
||||
$this.$refs.myVideoPlayer.startPlay(time);
|
||||
}, 10)
|
||||
@@ -608,6 +610,7 @@
|
||||
if(toResContent){
|
||||
|
||||
this.changePlayRes(toResContent);
|
||||
//this.onPlayerPlay();
|
||||
setTimeout(() => {
|
||||
$this.$refs.myVideoPlayer.startPlay(time);
|
||||
}, 10)
|
||||
@@ -618,9 +621,18 @@
|
||||
}
|
||||
}
|
||||
this.playerBoxShow = false;
|
||||
//this.changePlayRes(r);
|
||||
// this.playerBoxShow = false;
|
||||
// this.notePlay = null;
|
||||
// let $this=this;
|
||||
// setTimeout(() => {
|
||||
// $this.notePlay = time;
|
||||
// }, 500)
|
||||
},
|
||||
//笔记组件触发,记录当前播放时间
|
||||
videoLocation() {
|
||||
//this.$store.dispatch("SetIntTimeNote", this.intTimeNote);
|
||||
//console.log(this.contentData.id+'='+this.intTimeNote,'设置视频播放时间')
|
||||
this.$refs.mynote.setVideoTime(this.contentData.id,this.intTimeNote);
|
||||
},
|
||||
coutab(n) {
|
||||
@@ -630,7 +642,9 @@
|
||||
let nowDate = new Date();
|
||||
let ctime = parseInt(nowDate.getTime() / 1000);
|
||||
let beforeUrl = parseInt(nowDate.getTime() / 1000) + '/' + fid;
|
||||
//console.log(beforeUrl,'beforeUrl');
|
||||
let urlSign = encodeURIComponent(encrypt(beforeUrl));
|
||||
//console.log(urlSign,'urlSign');
|
||||
cookies.set('PLAYSIGN_TIME', ctime); //写客户端的cookie保存
|
||||
//以下判断是为了区分本地环境和服务器环境
|
||||
if (process.env.NODE_ENV == 'development') {
|
||||
@@ -638,7 +652,9 @@
|
||||
} else {
|
||||
this.blobUrl = process.env.VUE_APP_BASE_API + '/xboe/m/course/cware/resource?sign=' + urlSign;
|
||||
}
|
||||
// console.log('this.contentData.id:',this.contentData.id)
|
||||
this.blobId = this.contentData.id
|
||||
//console.log(this.blobUrl,'this.blobUrl');
|
||||
},
|
||||
widthOpen(url) {
|
||||
window.open(url, '_blank');
|
||||
@@ -671,6 +687,8 @@
|
||||
this.curriculumData.url = r.content;
|
||||
}
|
||||
this.$refs.mynote.showVideoTimeBtn(true);
|
||||
//let url=process.env.VUE_APP_BASE_API+'/xboe/m/course/file/show?cf='+this.curriculumData.url;
|
||||
//let url=this.fileBaseUrl+this.curriculumData.url;
|
||||
this.createPlayUrl(r.contentRefId, this.curriculumData.url);
|
||||
} else if (r.contentType == 40) {
|
||||
// if (r.content != '' && r.content.indexOf('.pdf') == -1) {
|
||||
@@ -769,6 +787,7 @@
|
||||
});
|
||||
$this.appendStudyOtherTime();
|
||||
}, 15000); //非音视频课程学习,十五秒后记录
|
||||
//this.appendStudyTime();
|
||||
this.isContentType = this.contentData.contentType
|
||||
if (this.contentData.contentType != 50) {
|
||||
this.handleTimeout = setTimeout(function(){
|
||||
@@ -783,23 +802,28 @@
|
||||
|
||||
|
||||
this.$nextTick(function(){
|
||||
if (r.contentType == 10) {
|
||||
console.log('视频处理lastStudyTime',this.contentData.lastStudyTime)
|
||||
console.log('视频处理progressVideo',this.contentData.progressVideo)
|
||||
if(this.contentData.progressVideo){
|
||||
this.$refs.myVideoPlayer.updateProgressByClickBar2(this.contentData.lastStudyTime,this.contentData.progressVideo);
|
||||
// $this.notePlay = this.contentData.lastStudyTime;
|
||||
}
|
||||
|
||||
//let h0=document.getElementById('id_course_player').offsetHeight;
|
||||
let h=$this.$refs.coursePlayer.offsetHeight;
|
||||
//let h1=$this.$refs.coursePlayer.clientHeight;
|
||||
///console.log(h0,h,$this.controlHeight,'$this.controlHeight');
|
||||
//解决获取高度不正的问题
|
||||
if(h>400 && h<500){
|
||||
h=h+40;
|
||||
}else if(h>500){
|
||||
h=h+60;
|
||||
}
|
||||
//$this.controlHeight=h-99;
|
||||
$this.controlHeight=h-95;
|
||||
//console.log(h,$this.controlHeight,'$this.controlHeight');
|
||||
})
|
||||
|
||||
|
||||
//console.log('this.contentData11:',this.contentData,this.curriculumData)
|
||||
// 视频设置禁用处理逻辑,如果用户已全部观看完该视频,则设置为能全部拖动的逻辑,把isDrag设置为true即可,同时删除本地存储的数据
|
||||
if(this.contentData.progressVideo ===1){
|
||||
var obj = JSON.parse(this.contentData.content)
|
||||
@@ -1107,16 +1131,38 @@
|
||||
|
||||
});
|
||||
} else {
|
||||
//console.log('加载课程信息失败:'+res.error);
|
||||
//this.$message.error(res.message);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
onPlayerPlay() {
|
||||
//console.log("开始播放");
|
||||
// if(this.contentData.contentType == 10){
|
||||
// if(this.contentData.status<2){
|
||||
// this.contentData.status = 2;
|
||||
// }
|
||||
// }
|
||||
this.playerBoxShow = false;
|
||||
// this.onPlayerPlayFullscreen()
|
||||
// this.$watermark.set(this.userInfo.name + this.userInfo.loginName);
|
||||
let $this = this;
|
||||
//这里有些不准备,如果文件未能加载,这个事件就是错误的
|
||||
this.isAppendTime=true;
|
||||
this.appendStudyTime();//启动追加学习时长
|
||||
//console.log(this.contentData.status,'this.contentData.status');
|
||||
// if(this.contentData.status<9){
|
||||
// let completeType=this.curriculumData.completeSetup;
|
||||
// //console.log(completeType,'completeType');
|
||||
// if(completeType==0){
|
||||
// //默认5秒后学习完成.
|
||||
// $this.handleTimeout= setTimeout(function() {$this.saveStudyInfo();}, 5000); //5秒后记录学习完成
|
||||
// }else{
|
||||
// //先记录进行中的学习内容
|
||||
// this.saveStudyItem();
|
||||
// }
|
||||
// }
|
||||
},
|
||||
|
||||
onFullscreen(full) {
|
||||
@@ -1148,6 +1194,7 @@
|
||||
}
|
||||
},
|
||||
onPlayerPause() {
|
||||
//console.log("暂停");
|
||||
this.stopStudyTime();
|
||||
},
|
||||
onPlayerEnded() {
|
||||
@@ -1160,6 +1207,8 @@
|
||||
onPlayerPlaying(itme) {
|
||||
this.isAppendTime = true;//可以追加学习时长
|
||||
this.intTimeNote = parseInt(itme);
|
||||
//console.log("当前播放"+itme);
|
||||
//console.log("当前播放11"+itme);
|
||||
if (this.contentData.contentType && this.contentData.contentType == 10) {
|
||||
let intTime = parseInt(itme);
|
||||
//判断是否完成
|
||||
@@ -1189,13 +1238,7 @@
|
||||
this.contentData.lastStudyTime = intTime;
|
||||
let postData = {
|
||||
itemId: this.contentData.studyItemId,
|
||||
videoTime: intTime,
|
||||
id: this.appentId,
|
||||
studyId: this.studyId,
|
||||
courseId: this.contentData.courseId,
|
||||
contentId: this.contentData.id,
|
||||
studyInfo: this.courseInfo.name +"-" +this.contentData.contentName,
|
||||
duration: 10
|
||||
videoTime: intTime
|
||||
};
|
||||
//console.log('this.courseInfo:',this.contentData)
|
||||
if(!this.curriculumData.isDrag && this.contentData.progressVideo !=1){
|
||||
@@ -1203,24 +1246,22 @@
|
||||
var arr = time&&JSON.parse(time) || {}
|
||||
if(arr[this.blobId] && this.contentData.progressVideo<arr[this.blobId]) {
|
||||
postData.progressVideo = arr[this.blobId]
|
||||
// postData.contentId = this.contentData.id
|
||||
// postData.courseId = this.contentData.courseId
|
||||
postData.contentId = this.contentData.id
|
||||
postData.courseId = this.contentData.courseId
|
||||
}
|
||||
}
|
||||
//console.log('记录播放时间')
|
||||
apiStudy.updateStudyVideoTime(postData).then(rs => {
|
||||
apiStudy.studyVideoTime(postData).then(rs => {
|
||||
if (rs.status != 200) {
|
||||
console.log('记录播放时间错误');
|
||||
}else{
|
||||
studyUtil.clearStudyDuration(); //清除本地存储
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
},
|
||||
audioPlaying(item, currentTime) {
|
||||
//console.log("当前播放"+item);
|
||||
let intTime = parseInt(currentTime);
|
||||
console.log("======音频播放"+intTime);
|
||||
this.handleAudioTimeUpdate(intTime)
|
||||
//判断是否完成
|
||||
let completeType = this.curriculumData.completeSetup;
|
||||
@@ -1249,13 +1290,7 @@
|
||||
this.contentData.lastStudyTime = intTime;
|
||||
let postData = {
|
||||
itemId: this.contentData.studyItemId,
|
||||
videoTime: intTime,
|
||||
id: this.appentId,
|
||||
studyId: this.studyId,
|
||||
courseId: this.contentData.courseId,
|
||||
contentId: this.contentData.id,
|
||||
studyInfo: this.courseInfo.name +"-" +this.contentData.contentName,
|
||||
duration: 10
|
||||
videoTime: intTime
|
||||
};
|
||||
//console.log('this.courseInfo:',this.contentData)
|
||||
if(!this.curriculumData.isDrag && this.contentData.progressVideo !=1){
|
||||
@@ -1263,21 +1298,23 @@
|
||||
var arr = time&&JSON.parse(time) || {}
|
||||
if(arr[this.blobId] && this.contentData.progressVideo<arr[this.blobId]) {
|
||||
postData.progressVideo = arr[this.blobId]
|
||||
// postData.contentId = this.contentData.id
|
||||
// postData.courseId = this.contentData.courseId
|
||||
postData.contentId = this.contentData.id
|
||||
postData.courseId = this.contentData.courseId
|
||||
}
|
||||
}
|
||||
//console.log('记录播放时间')
|
||||
apiStudy.updateStudyVideoTime(postData).then(rs => {
|
||||
apiStudy.studyVideoTime(postData).then(rs => {
|
||||
if (rs.status != 200) {
|
||||
console.log('记录播放时间错误');
|
||||
}else{
|
||||
studyUtil.clearStudyDuration(); //清除本地存储
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
audioPlay() {
|
||||
//console.log("开始播放");
|
||||
// if(this.contentData.contentType == 20 && this.contentData.status < 2){
|
||||
// this.contentData.status = 2;
|
||||
// }
|
||||
let $this = this;
|
||||
this.isAppendTime=true;
|
||||
this.appendStudyTime();//启动追加学习时长
|
||||
@@ -1388,6 +1425,7 @@
|
||||
//处理内容的名称
|
||||
this.totalContent = rs.result.contents.length;
|
||||
//加载学习的数据
|
||||
//this.loadStudyData();
|
||||
this.loadStudyData(rs.result);
|
||||
|
||||
} else {
|
||||
@@ -1402,7 +1440,6 @@
|
||||
//对已学习的内容进行比对,重要的字段, 学习内容id,在后缀的
|
||||
let playIndex = -1;
|
||||
this.contentList.forEach((con, conIdx) => {
|
||||
con.progressVideo = con.progressVideo || 0;
|
||||
result.contentStudys.forEach((scon, sconIdx) => {
|
||||
if (scon.contentId == con.id) {
|
||||
//定位显示的内容
|
||||
@@ -1414,8 +1451,9 @@
|
||||
playIndex = conIdx;
|
||||
}
|
||||
}
|
||||
//console.log(scon.contentId,con.id);
|
||||
con.lastStudyTime = scon.lastStudyTime;
|
||||
con.progressVideo = scon.progressVideo || 0;
|
||||
con.progressVideo = scon.progressVideo;
|
||||
//以下判断是为了兼容之前的问题,学习状态
|
||||
if (scon.status) {
|
||||
con.status = scon.status;
|
||||
@@ -1423,17 +1461,23 @@
|
||||
con.status = 9;
|
||||
}
|
||||
con.studyItemId = scon.id; //这个就是学习内容(条目)的id
|
||||
//console.log(scon.id,"scon.id");
|
||||
//console.log(con,"scon.id");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
if (this.courseInfo.type == 10) {
|
||||
///console.log(this.contentList[0],'ccccc11111')
|
||||
this.showRes(this.contentList[0]);
|
||||
} else {
|
||||
//如果没有,就定位第一项内容
|
||||
if (playIndex === -1) {
|
||||
// this.showRes(this.contentList[0]);
|
||||
//console.log(this.catalogTree,'ccccc22222')
|
||||
this.showRes(this.catalogTree[0].children[0])
|
||||
} else {
|
||||
//console.log(this.contentList[0],'ccccc3333')
|
||||
this.showRes(this.contentList[playIndex]);
|
||||
}
|
||||
}
|
||||
@@ -1548,23 +1592,22 @@
|
||||
console.log(rs.message);
|
||||
}
|
||||
});
|
||||
// let postAppendData = {
|
||||
// id: this.appentId,
|
||||
// studyId: this.studyId,
|
||||
// courseId: this.courseInfo.id,
|
||||
// contentId: this.contentData.id,
|
||||
// studyInfo: this.courseInfo.name +"-" +this.contentData.contentName,
|
||||
// duration: duration,
|
||||
// type: 1
|
||||
// };
|
||||
// apiStudy.updateStudyVideoTime(postAppendData).then(rs => {
|
||||
// if (rs.status == 200) {
|
||||
// this.appentId = rs.result;
|
||||
// studyUtil.clearStudyDuration(); //清除本地存储
|
||||
// } else {
|
||||
// console.log(rs.message);
|
||||
// }
|
||||
// });
|
||||
let postAppendData = {
|
||||
id: this.appentId,
|
||||
studyId: this.studyId,
|
||||
courseId: this.courseInfo.id,
|
||||
contentId: this.contentData.id,
|
||||
studyInfo: this.courseInfo.name +"-" +this.contentData.contentName,
|
||||
duration: duration
|
||||
};
|
||||
apiStudy.appendStudyTime(postAppendData).then(rs => {
|
||||
if (rs.status == 200) {
|
||||
this.appentId = rs.result;
|
||||
studyUtil.clearStudyDuration(); //清除本地存储
|
||||
} else {
|
||||
console.log(rs.message);
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
//结束追加学习时长
|
||||
@@ -1604,6 +1647,60 @@
|
||||
this.saveStudyDuration(totalTime)
|
||||
}, this.appentInterval * 1000);
|
||||
},
|
||||
//追加学习时长, flag是否提交到后台
|
||||
// appendStudyTime() {
|
||||
// //console.log('开始追加学习时长',this.isAppendTime);
|
||||
// if (this.studyId == '') {
|
||||
// return;
|
||||
// }
|
||||
// if (!this.contentData.id) {
|
||||
// return;
|
||||
// }
|
||||
// if (!this.isAppendTime) {
|
||||
// this.appendStartTime = null;
|
||||
// return;
|
||||
// }
|
||||
|
||||
// if (this.appendHandle != null) {
|
||||
// window.clearTimeout(this.appendHandle);
|
||||
// }
|
||||
// //首先从本地读取
|
||||
// let duration = studyUtil.getStudyDuration();
|
||||
// //console.log('追加学习时长,当前本地积累的学习时长='+duration);
|
||||
// //追加学习长
|
||||
// let $this = this;
|
||||
// if (this.appendStartTime == null) {
|
||||
// this.appendStartTime = new Date();
|
||||
// this.appendHandle = setTimeout(function() {
|
||||
// $this.appendStudyTime();
|
||||
// }, $this.appentInterval); //设置定时追加学习时长
|
||||
// //保存之前的
|
||||
// if (duration >= 60 ) {
|
||||
// this.saveStudyDuration(duration);
|
||||
// }
|
||||
// return;
|
||||
// }
|
||||
// //如果当前追加开始时间不为空
|
||||
// let now = new Date();
|
||||
// let m = now.getTime() - this.appendStartTime.getTime(); //相差的毫秒数
|
||||
// // console.log(m/1000,'时间');
|
||||
|
||||
// let sen = Math.round(m / 1000); //计算秒数
|
||||
// // console.log('定时器时间',sen);
|
||||
// // 每次添加的是定时器计时的时间
|
||||
// duration = duration + sen;//追加的是秒
|
||||
// if (duration >= 60) { //一分钟保存一次
|
||||
// this.saveStudyDuration(duration);
|
||||
// } else {
|
||||
// studyUtil.setStudyDuration(duration); //添加到本地存储中
|
||||
// }
|
||||
// //重新覆盖时间
|
||||
// this.appendStartTime = new Date();
|
||||
// //启动下次追加学习时长
|
||||
// this.appendHandle = setTimeout(function() {
|
||||
// $this.appendStudyTime();
|
||||
// }, $this.appentInterval);
|
||||
// },
|
||||
|
||||
finishStudyItem() { //设置完成学习的内容,针对于音视频的内容
|
||||
if (!this.contentData.studyItemId) {
|
||||
@@ -1685,6 +1782,7 @@
|
||||
})
|
||||
this.trueFalse = false
|
||||
}
|
||||
// }
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||