mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal.git
synced 2025-12-18 23:36:44 +08:00
fix:补充结尾div标签
This commit is contained in:
@@ -26,8 +26,7 @@
|
||||
<!--
|
||||
<span class="bcourse-score" v-if="courseInfo.score>0">{{toScore(courseInfo.score)}} 分</span>
|
||||
<span class="bcourse-score" v-else>无评分</span>
|
||||
-->
|
||||
</div>
|
||||
--></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="course-content xcontent">
|
||||
@@ -70,7 +69,9 @@
|
||||
<img
|
||||
class="icon-small"
|
||||
v-if="isPraise"
|
||||
:src="require('@/assets/images/icon/praise-active.png')"
|
||||
:src="
|
||||
require('@/assets/images/icon/praise-active.png')
|
||||
"
|
||||
/>
|
||||
<img
|
||||
class="icon-small"
|
||||
@@ -254,7 +255,11 @@
|
||||
<div class="score" style="display: flex">
|
||||
<div
|
||||
v-if="!scoreInfo.has"
|
||||
style="margin-left: 10px; cursor: pointer; padding-top: 18px"
|
||||
style="
|
||||
margin-left: 10px;
|
||||
cursor: pointer;
|
||||
padding-top: 18px;
|
||||
"
|
||||
>
|
||||
<!-- <el-popover placement="top" width="300" trigger="hover"> -->
|
||||
<!-- <div style="text-align:center;line-height:50px;padding:20px 0px">
|
||||
@@ -329,7 +334,9 @@
|
||||
<img
|
||||
class="icon-small"
|
||||
v-if="isTrample"
|
||||
:src="require('@/assets/images/icon/trample-active.png')"
|
||||
:src="
|
||||
require('@/assets/images/icon/trample-active.png')
|
||||
"
|
||||
/>
|
||||
<img
|
||||
class="icon-small"
|
||||
@@ -382,7 +389,11 @@
|
||||
<!-- ai播放器相关 开发阶段先放开 v-if="courseInfo.aiDraft == 1" -->
|
||||
<div
|
||||
@click="heartabthree"
|
||||
v-if="courseInfo.aiSet == 1 && courseInfo.aiDraft == 1 && contentData.contentType == 10"
|
||||
v-if="
|
||||
courseInfo.aiSet == 1 &&
|
||||
courseInfo.aiDraft == 1 &&
|
||||
contentData.contentType == 10
|
||||
"
|
||||
:class="tab == 3 ? 'control-tab-active' : ' '"
|
||||
style="position: relative"
|
||||
>
|
||||
@@ -406,7 +417,9 @@
|
||||
</div>
|
||||
<!-- 课程单元 -->
|
||||
<div class="course-units" v-if="tab == 1">
|
||||
<div style="min-height: 350px; max-height: 650px; overflow-y: auto">
|
||||
<div
|
||||
style="min-height: 350px; max-height: 650px; overflow-y: auto"
|
||||
>
|
||||
<div class="catalog" v-if="courseInfo.type == 20">
|
||||
<div
|
||||
v-for="(item, index) in catalogTree"
|
||||
@@ -425,7 +438,10 @@
|
||||
<el-submenu :index="item.section.id">
|
||||
<template slot="title">
|
||||
<div
|
||||
style="display: flex; justify-content: space-between"
|
||||
style="
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
"
|
||||
>
|
||||
<div
|
||||
style="
|
||||
@@ -460,7 +476,9 @@
|
||||
>
|
||||
<div
|
||||
class="units-info"
|
||||
:class="{ 'units-active': contentData.id == ele.id }"
|
||||
:class="{
|
||||
'units-active': contentData.id == ele.id,
|
||||
}"
|
||||
@click="showRes(ele, i, index, item)"
|
||||
>
|
||||
<el-menu-item
|
||||
@@ -498,7 +516,8 @@
|
||||
<!-- <img v-if="contentData.id == ele.id" :src="`${webBaseUrl}/images/playicon.png`" alt=""> -->
|
||||
<img
|
||||
v-if="
|
||||
contentData.id == ele.id && ele.status == 9
|
||||
contentData.id == ele.id &&
|
||||
ele.status == 9
|
||||
"
|
||||
style="width: 16px; height: 16px"
|
||||
src="@/assets/images/over.png"
|
||||
@@ -506,7 +525,8 @@
|
||||
/>
|
||||
<img
|
||||
v-if="
|
||||
contentData.id == ele.id && ele.status == 0
|
||||
contentData.id == ele.id &&
|
||||
ele.status == 0
|
||||
"
|
||||
style="width: 16px; height: 16px"
|
||||
src="@/assets/images/nowNot.png"
|
||||
@@ -524,7 +544,8 @@
|
||||
/>
|
||||
<img
|
||||
v-if="
|
||||
contentData.id != ele.id && ele.status == 9
|
||||
contentData.id != ele.id &&
|
||||
ele.status == 9
|
||||
"
|
||||
style="width: 16px; height: 16px"
|
||||
src="@/assets/images/notNew.png"
|
||||
@@ -532,7 +553,8 @@
|
||||
/>
|
||||
<img
|
||||
v-if="
|
||||
contentData.id != ele.id && ele.status == 0
|
||||
contentData.id != ele.id &&
|
||||
ele.status == 0
|
||||
"
|
||||
style="width: 16px; height: 16px"
|
||||
src="@/assets/images/not.png"
|
||||
@@ -590,7 +612,11 @@
|
||||
<div style="margin-left: 5px">
|
||||
<span
|
||||
v-if="contentData.id == list.id"
|
||||
style="color: #387df7; font-size: 14px; margin-right: 4px"
|
||||
style="
|
||||
color: #387df7;
|
||||
font-size: 14px;
|
||||
margin-right: 4px;
|
||||
"
|
||||
>学习中</span
|
||||
>
|
||||
<img
|
||||
@@ -657,8 +683,16 @@
|
||||
</div>
|
||||
<!-- ai播放器相关 -->
|
||||
<!-- ai文稿 -->
|
||||
<div class="ai-script" v-if="contentData.contentType == 10 && tab == 3">
|
||||
<ai-script ref="aiscript" :blobId="blobId" :isDrag="curriculumData.isDrag" @changeCurrentTime="changeCurrentTime"></ai-script>
|
||||
<div
|
||||
class="ai-script"
|
||||
v-if="contentData.contentType == 10 && tab == 3"
|
||||
>
|
||||
<ai-script
|
||||
ref="aiscript"
|
||||
:blobId="blobId"
|
||||
:isDrag="curriculumData.isDrag"
|
||||
@changeCurrentTime="changeCurrentTime"
|
||||
></ai-script>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -676,11 +710,21 @@
|
||||
<div
|
||||
@click="coutab(4)"
|
||||
v-if="courseInfo.aiSet == 1 && courseInfo.aiAbstract == 1"
|
||||
style="position: relative;"
|
||||
style="position: relative"
|
||||
:class="courestab == 4 ? 'course-info-tab-active' : ''"
|
||||
>
|
||||
AI摘要<span class=""></span>
|
||||
<img style="position: absolute;top: -18px;right: -23px;width: 36px;height: 24px;" src="@/assets/images/course/courseNew.png" alt="">
|
||||
<img
|
||||
style="
|
||||
position: absolute;
|
||||
top: -18px;
|
||||
right: -23px;
|
||||
width: 36px;
|
||||
height: 24px;
|
||||
"
|
||||
src="@/assets/images/course/courseNew.png"
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
<div
|
||||
@click="coutab(2)"
|
||||
@@ -707,7 +751,9 @@
|
||||
srcset=""
|
||||
/>
|
||||
目标人群:
|
||||
<div class="course-info-text">{{ courseInfo.forUsers }}</div>
|
||||
<div class="course-info-text">
|
||||
{{ courseInfo.forUsers }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="course-info-row">
|
||||
<img
|
||||
@@ -757,10 +803,21 @@
|
||||
<!-- ai播放器相关 -->
|
||||
<div
|
||||
v-show="courestab == 4"
|
||||
style="padding-left: 17px; padding-top: 20px;background-color: #fff;"
|
||||
style="
|
||||
padding-left: 17px;
|
||||
padding-top: 20px;
|
||||
background-color: #fff;
|
||||
"
|
||||
>
|
||||
<div style="padding: 30px;line-height: 24px;letter-spacing: 0.3px;color: rgba(102, 102, 102, 1);">
|
||||
{{ courseInfo.summaryContent || '' }}
|
||||
<div
|
||||
style="
|
||||
padding: 30px;
|
||||
line-height: 24px;
|
||||
letter-spacing: 0.3px;
|
||||
color: rgba(102, 102, 102, 1);
|
||||
"
|
||||
>
|
||||
{{ courseInfo.summaryContent || "" }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -793,7 +850,7 @@
|
||||
:size="50"
|
||||
></el-avatar>
|
||||
</div>
|
||||
<!-- <div v-else class="teacher-text">
|
||||
<!-- <div v-else class="teacher-text">
|
||||
<div v-if="item.authorInfo.sex === 1">
|
||||
<img src="../../../public/images/Avatarman.png" alt="" />
|
||||
</div>
|
||||
@@ -802,13 +859,23 @@
|
||||
</div>
|
||||
</div>-->
|
||||
<div v-else-if="item.photo">
|
||||
<el-avatar :src="item.photo" shape="circle" :size="50"></el-avatar>
|
||||
<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 && item.authorInfo.sex === 1">
|
||||
<img
|
||||
src="../../../public/images/Avatarwoman.png"
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
<div v-else>
|
||||
<img src="../../../public/images/Avatarman.png" alt="" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="teacher-info">
|
||||
<div class="teacher-name">
|
||||
@@ -851,6 +918,7 @@
|
||||
</el-dialog>
|
||||
<!-- <div><portal-footer></portal-footer></div> -->
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
// ai播放器相关
|
||||
@@ -1027,7 +1095,7 @@ export default {
|
||||
},
|
||||
computed: {
|
||||
// ai播放器相关
|
||||
...mapGetters(["userInfo", 'selectableLang']),
|
||||
...mapGetters(["userInfo", "selectableLang"]),
|
||||
catalogTree() {
|
||||
let treeList = [];
|
||||
this.completed = [];
|
||||
@@ -1066,12 +1134,12 @@ export default {
|
||||
// ai播放器相关
|
||||
// 处理从AI文稿组件传递过来的时间跳转事件
|
||||
changeCurrentTime(time) {
|
||||
console.log(time,'time')
|
||||
console.log(time, "time");
|
||||
this.$refs.myVideoPlayer && this.$refs.myVideoPlayer.seekToTime(time);
|
||||
},
|
||||
...mapMutations({
|
||||
SET_selectableLang: 'video/SET_selectableLang',
|
||||
SET_courseInfo: 'video/SET_courseInfo',
|
||||
SET_selectableLang: "video/SET_selectableLang",
|
||||
SET_courseInfo: "video/SET_courseInfo",
|
||||
}),
|
||||
handleOpen(key, path) {
|
||||
if (this.isFalse) {
|
||||
@@ -1191,8 +1259,8 @@ export default {
|
||||
let ctime = parseInt(nowDate.getTime() / 1000);
|
||||
let beforeUrl = parseInt(nowDate.getTime() / 1000) + "/" + fid;
|
||||
let urlSign = encodeURIComponent(encrypt(beforeUrl));
|
||||
console.log(fid, 'fid');
|
||||
console.log(u, 'u');
|
||||
console.log(fid, "fid");
|
||||
console.log(u, "u");
|
||||
cookies.set("PLAYSIGN_TIME", ctime); //写客户端的cookie保存
|
||||
//以下判断是为了区分本地环境和服务器环境
|
||||
if (process.env.NODE_ENV == "development") {
|
||||
@@ -1404,10 +1472,14 @@ export default {
|
||||
},
|
||||
// ai播放器相关 - 视频处理
|
||||
handleAIVideo(list = [], r) {
|
||||
console.log('触发了-----------list', list);
|
||||
console.log("触发了-----------list", list);
|
||||
this.SET_selectableLang(list);
|
||||
this.SET_courseInfo(this.courseInfo);
|
||||
if (this.courseInfo.aiSet && this.courseInfo.aiAbstract == 1 && this.courseInfo.summaryContent) {
|
||||
if (
|
||||
this.courseInfo.aiSet &&
|
||||
this.courseInfo.aiAbstract == 1 &&
|
||||
this.courseInfo.summaryContent
|
||||
) {
|
||||
this.coutab(4);
|
||||
}
|
||||
console.log("ai处理", this.selectableLang);
|
||||
|
||||
Reference in New Issue
Block a user