|
@@ -1,17 +1,8 @@
|
|
|
<template>
|
|
|
<div class="pb_content" style="overflow: unset">
|
|
|
<div class="pb_content_body" style="display: flex; min-height: 800px">
|
|
|
- <div
|
|
|
- style="
|
|
|
- width: 20%;
|
|
|
- margin-right: 10px;
|
|
|
- background: #fff;
|
|
|
- padding-right: 10px;
|
|
|
- "
|
|
|
- >
|
|
|
- <div class="courseTitle">
|
|
|
- {{ courseDetail.title }}
|
|
|
- </div>
|
|
|
+ <div style="width: 20%; margin-right: 10px; background: #fff; padding-right: 10px">
|
|
|
+ <div class="courseTitle">{{ courseDetail.title }}</div>
|
|
|
<div class="ml">目录</div>
|
|
|
<div v-for="(item, stageIndex) in navList" :key="stageIndex">
|
|
|
<div class="blue_box_one" @click="get(stageIndex)">
|
|
@@ -19,22 +10,14 @@
|
|
|
<div>{{ item.dyName }}</div>
|
|
|
</div>
|
|
|
<div class="twoChild" :class="{ navActive: item.isOpen }">
|
|
|
- <div
|
|
|
- class="navChild"
|
|
|
- v-for="(nav, navIndex) in item.task"
|
|
|
- :key="navIndex"
|
|
|
- >
|
|
|
+ <div class="navChild" v-for="(nav, navIndex) in item.task" :key="navIndex">
|
|
|
<div
|
|
|
class="navTask"
|
|
|
@click="openTask(stageIndex, navIndex, nav.id)"
|
|
|
:class="{ openTaskActive: nav.id == navId }"
|
|
|
>
|
|
|
- <div class="vedioNav" style="margin: 0">
|
|
|
- 任务{{ navIndex + 1 }}
|
|
|
- </div>
|
|
|
- <div class="navTaskname">
|
|
|
- {{ nav.taskName }}
|
|
|
- </div>
|
|
|
+ <div class="vedioNav" style="margin: 0">任务{{ navIndex + 1 }}</div>
|
|
|
+ <div class="navTaskname">{{ nav.taskName }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -51,14 +34,7 @@
|
|
|
style="position: absolute; right: 0"
|
|
|
class="returnBtn"
|
|
|
@click.stop="
|
|
|
- goTo(
|
|
|
- '/courseDetail?userid=' +
|
|
|
- userid +
|
|
|
- '&oid=' +
|
|
|
- oid +
|
|
|
- '&courseId=' +
|
|
|
- id
|
|
|
- )
|
|
|
+ goTo('/courseDetail?userid=' + userid + '&oid=' + oid + '&courseId=' + id)
|
|
|
"
|
|
|
>
|
|
|
返回
|
|
@@ -67,8 +43,7 @@
|
|
|
|
|
|
<div
|
|
|
class="study_top"
|
|
|
- v-for="(task, index) in chapInfoList[courseType].chapterInfo[0]
|
|
|
- .taskJson"
|
|
|
+ v-for="(task, index) in chapInfoList[courseType].chapterInfo[0].taskJson"
|
|
|
:key="index"
|
|
|
>
|
|
|
<div class="checkbox">
|
|
@@ -76,10 +51,7 @@
|
|
|
{{ index + 1 }} {{ task.task }}
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- class="project_box"
|
|
|
- style="margin-top: 15px; margin-bottom: 20px"
|
|
|
- >
|
|
|
+ <div class="project_box" style="margin-top: 15px; margin-bottom: 20px">
|
|
|
<div
|
|
|
style="
|
|
|
display: flex;
|
|
@@ -91,11 +63,9 @@
|
|
|
<div class="queTop">
|
|
|
<!-- <div class="question">
|
|
|
<img src="../assets/icon/homeWork.png" alt="" />
|
|
|
- </div> -->
|
|
|
+ </div>-->
|
|
|
<div class="queTitle">
|
|
|
- <div style="color: #000">
|
|
|
- {{ task.task ? task.task : "暂无名称" }}
|
|
|
- </div>
|
|
|
+ <div style="color: #000">{{ task.task ? task.task : "暂无名称" }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div style="padding: 20px" v-if="task.taskDetail != ''">
|
|
@@ -106,7 +76,7 @@
|
|
|
cols=""
|
|
|
style="width: 70.5% !important; height: 90px"
|
|
|
v-model="chapInfo.taskDetail"
|
|
|
- ></textarea> -->
|
|
|
+ ></textarea>-->
|
|
|
{{ task.taskDetail ? task.taskDetail : "暂无描述" }}
|
|
|
</div>
|
|
|
</div>
|
|
@@ -129,28 +99,20 @@
|
|
|
</div>
|
|
|
<!-- <div v-else style="margin: 0px 25% 0px 35%">
|
|
|
<img src="../assets/icon/noVedio.png" alt="" />
|
|
|
- </div> -->
|
|
|
+ </div>-->
|
|
|
<div
|
|
|
class="vedioList"
|
|
|
:class="vedio.length == 0 ? 'listNoVedio' : ''"
|
|
|
v-if="
|
|
|
(vedio.length && vedio[index] && vedio[index].length > 0) ||
|
|
|
- (textList.length &&
|
|
|
- textList[index] &&
|
|
|
- textList[index].length > 0) ||
|
|
|
+ (textList.length && textList[index] && textList[index].length > 0) ||
|
|
|
(chapToolList.length &&
|
|
|
chapToolList[index] &&
|
|
|
chapToolList[index].length > 0) ||
|
|
|
- (lineList.length &&
|
|
|
- lineList[index] &&
|
|
|
- lineList[index].length > 0)
|
|
|
+ (lineList.length && lineList[index] && lineList[index].length > 0)
|
|
|
"
|
|
|
>
|
|
|
- <div
|
|
|
- v-show="
|
|
|
- vedio.length && vedio[index] && vedio[index].length > 0
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-show="vedio.length && vedio[index] && vedio[index].length > 0">
|
|
|
<div class="vedioNav">视频</div>
|
|
|
<div
|
|
|
class="media"
|
|
@@ -167,7 +129,7 @@
|
|
|
: mr
|
|
|
: mr
|
|
|
"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
@click="lookVedio(media.url)"
|
|
|
/>
|
|
|
<div class="vedioName">{{ media.name }}</div>
|
|
@@ -175,9 +137,7 @@
|
|
|
</div>
|
|
|
<div
|
|
|
v-show="
|
|
|
- textList.length &&
|
|
|
- textList[index] &&
|
|
|
- textList[index].length > 0
|
|
|
+ textList.length && textList[index] && textList[index].length > 0
|
|
|
"
|
|
|
class="newNav"
|
|
|
v-for="(text, textIndex) in textList[index]"
|
|
@@ -209,9 +169,7 @@
|
|
|
</div>
|
|
|
<div
|
|
|
v-show="
|
|
|
- lineList.length &&
|
|
|
- lineList[index] &&
|
|
|
- lineList[index].length > 0
|
|
|
+ lineList.length && lineList[index] && lineList[index].length > 0
|
|
|
"
|
|
|
class="newNav"
|
|
|
v-for="(lines, lineIndex) in lineList[index]"
|
|
@@ -228,7 +186,7 @@
|
|
|
>
|
|
|
<!-- {{
|
|
|
lineList.length > 0 ? lines.url : ""
|
|
|
- }} -->
|
|
|
+ }}-->
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -241,22 +199,14 @@
|
|
|
class="vedioList hangVedioList"
|
|
|
v-if="
|
|
|
(vedio.length && vedio[index] && vedio[index].length > 0) ||
|
|
|
- (textList.length &&
|
|
|
- textList[index] &&
|
|
|
- textList[index].length > 0) ||
|
|
|
+ (textList.length && textList[index] && textList[index].length > 0) ||
|
|
|
(chapToolList.length &&
|
|
|
chapToolList[index] &&
|
|
|
chapToolList[index].length > 0) ||
|
|
|
- (lineList.length &&
|
|
|
- lineList[index] &&
|
|
|
- lineList[index].length > 0)
|
|
|
+ (lineList.length && lineList[index] && lineList[index].length > 0)
|
|
|
"
|
|
|
>
|
|
|
- <div
|
|
|
- v-show="
|
|
|
- vedio.length && vedio[index] && vedio[index].length > 0
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-show="vedio.length && vedio[index] && vedio[index].length > 0">
|
|
|
<div class="vedioNav">视频</div>
|
|
|
<div
|
|
|
class="media"
|
|
@@ -273,7 +223,7 @@
|
|
|
: mr
|
|
|
: mr
|
|
|
"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
@click="lookVedio(media.url)"
|
|
|
/>
|
|
|
<div class="vedioName">{{ media.name }}</div>
|
|
@@ -281,9 +231,7 @@
|
|
|
</div>
|
|
|
<div
|
|
|
v-show="
|
|
|
- textList.length &&
|
|
|
- textList[index] &&
|
|
|
- textList[index].length > 0
|
|
|
+ textList.length && textList[index] && textList[index].length > 0
|
|
|
"
|
|
|
class="newNav"
|
|
|
v-for="(text, textIndex) in textList[index]"
|
|
@@ -308,19 +256,14 @@
|
|
|
>
|
|
|
<div class="vedioNav">工具</div>
|
|
|
<div>
|
|
|
- <div
|
|
|
- class="noNavText"
|
|
|
- @click="lookTools(index, toolsIndex)"
|
|
|
- >
|
|
|
+ <div class="noNavText" @click="lookTools(index, toolsIndex)">
|
|
|
{{ chapToolList[index].length > 0 ? tools.name : "" }}
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div
|
|
|
v-show="
|
|
|
- lineList.length &&
|
|
|
- lineList[index] &&
|
|
|
- lineList[index].length > 0
|
|
|
+ lineList.length && lineList[index] && lineList[index].length > 0
|
|
|
"
|
|
|
class="newNav"
|
|
|
v-for="(lines, lineIndex) in lineList[index]"
|
|
@@ -337,7 +280,7 @@
|
|
|
>
|
|
|
<!-- {{
|
|
|
lineList.length > 0 ? lines.url : ""
|
|
|
- }} -->
|
|
|
+ }}-->
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -351,7 +294,7 @@
|
|
|
>
|
|
|
<div class="queTop">
|
|
|
<div class="question" style="width: 30px">
|
|
|
- <img src="../assets/icon/fileIcon.png" alt="" />
|
|
|
+ <img src="../assets/icon/fileIcon.png" alt />
|
|
|
</div>
|
|
|
<div class="queTitle">
|
|
|
<div>附件</div>
|
|
@@ -364,7 +307,7 @@
|
|
|
:key="fileIndex"
|
|
|
@click="downFile(f, fileIndex)"
|
|
|
>
|
|
|
- <img :src="require('../assets/file.png')" alt="" />
|
|
|
+ <img :src="require('../assets/file.png')" alt />
|
|
|
<div>{{ f.name }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -373,7 +316,7 @@
|
|
|
<div class="project_box">
|
|
|
<div class="queTop">
|
|
|
<div class="question" style="width: 30px">
|
|
|
- <img src="../assets/icon/toolIcon.png" alt="" />
|
|
|
+ <img src="../assets/icon/toolIcon.png" alt />
|
|
|
</div>
|
|
|
<div class="queTitle">
|
|
|
<div>工具</div>
|
|
@@ -397,7 +340,7 @@
|
|
|
"
|
|
|
>
|
|
|
<!-- v-for="(itemTool, indexTool) in toolTypeList"
|
|
|
- :key="indexTool" -->
|
|
|
+ :key="indexTool"-->
|
|
|
<div
|
|
|
class="addPoint"
|
|
|
v-for="(tooC, toolCIndex) in tool.tool"
|
|
@@ -406,7 +349,7 @@
|
|
|
<div v-if="tooC == 8">
|
|
|
<img
|
|
|
src="../assets/icon/secondToolList/library.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
/>
|
|
|
<div style="margin: 5px 0">素材库</div>
|
|
@@ -415,7 +358,7 @@
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/secondToolList/whiteBoard.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">电子白板</div>
|
|
|
</div>
|
|
@@ -423,7 +366,7 @@
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/secondToolList/note.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">便签</div>
|
|
|
</div>
|
|
@@ -431,7 +374,7 @@
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/secondToolList/mindMapping.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">思维导图</div>
|
|
|
</div>
|
|
@@ -439,7 +382,7 @@
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/secondToolList/doc.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">协同文档</div>
|
|
|
</div>
|
|
@@ -447,7 +390,7 @@
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/secondToolList/mindNetwork.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">思维网格</div>
|
|
|
</div>
|
|
@@ -455,7 +398,7 @@
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/thirdToolList/ask.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">问卷调查</div>
|
|
|
</div>
|
|
@@ -463,15 +406,31 @@
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/thirdToolList/score.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">量规评分</div>
|
|
|
</div>
|
|
|
- <div v-if="tooC == 9">
|
|
|
+ <!-- <div v-if="tooC == 10">
|
|
|
+ <img
|
|
|
+ @click="addTools(tooC, toolIndex)"
|
|
|
+ src="../assets/icon/thirdToolList/time.png"
|
|
|
+ alt
|
|
|
+ />
|
|
|
+ <div style="margin: 5px 0">倒计时</div>
|
|
|
+ </div>
|
|
|
+ <div v-if="tooC == 15">
|
|
|
+ <img
|
|
|
+ @click="addTools(tooC, toolIndex)"
|
|
|
+ src="../assets/icon/thirdToolList/answer.png"
|
|
|
+ alt
|
|
|
+ />
|
|
|
+ <div style="margin: 5px 0">问答工具</div>
|
|
|
+ </div> -->
|
|
|
+ <div v-if="tooC == 16">
|
|
|
<img
|
|
|
@click="addTools(tooC, toolIndex)"
|
|
|
src="../assets/icon/thirdToolList/work.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">作业提交</div>
|
|
|
</div>
|
|
@@ -482,9 +441,7 @@
|
|
|
v-if="tool.toolDetail != ''"
|
|
|
>
|
|
|
<div style="margin: 0 0 20px 0">工具描述</div>
|
|
|
- <div>
|
|
|
- {{ tool.toolDetail != "" ? tool.toolDetail : "暂无描述" }}
|
|
|
- </div>
|
|
|
+ <div>{{ tool.toolDetail != "" ? tool.toolDetail : "暂无描述" }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -529,7 +486,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- </div> -->
|
|
|
+ </div>-->
|
|
|
</div>
|
|
|
</div>
|
|
|
<el-dialog
|
|
@@ -551,17 +508,16 @@
|
|
|
rows="7"
|
|
|
placeholder="输入文字描述..."
|
|
|
v-model="studyJuri[0].content"
|
|
|
- >
|
|
|
- </el-input>
|
|
|
+ ></el-input>
|
|
|
<div class="marginT">
|
|
|
<div>上传图片</div>
|
|
|
<div class="chapter_add" @click="addImg($event)">
|
|
|
<div class="up_photo">
|
|
|
- <img src="../assets/photo.png" alt="" />
|
|
|
+ <img src="../assets/photo.png" alt />
|
|
|
</div>
|
|
|
<input
|
|
|
type="file"
|
|
|
- accept="image/png,image/gif,image/jpeg"
|
|
|
+ accept="image/png, image/gif, image/jpeg"
|
|
|
style="display: none"
|
|
|
@change="beforeUpload1($event, 1)"
|
|
|
/>
|
|
@@ -582,11 +538,11 @@
|
|
|
:key="cIndex"
|
|
|
class="upCover"
|
|
|
>
|
|
|
- <img :src="c.url != null && c.url != '' ? c.url : mr" alt="" />
|
|
|
+ <img :src="c.url != null && c.url != '' ? c.url : mr" alt />
|
|
|
<span class="picName">{{ c.name }}</span>
|
|
|
|
|
|
<div class="deleteWord" @click="clean(1)">
|
|
|
- <img src="../assets/icon/delete.png" alt="" />
|
|
|
+ <img src="../assets/icon/delete.png" alt />
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -595,11 +551,11 @@
|
|
|
<div>上传视频</div>
|
|
|
<div class="chapter_add" @click="addImg($event)">
|
|
|
<div class="up_photo">
|
|
|
- <img src="../assets/vidio.png" alt="" />
|
|
|
+ <img src="../assets/vidio.png" alt />
|
|
|
</div>
|
|
|
<input
|
|
|
type="file"
|
|
|
- accept="video/mp4,video/quicktime,video/x-msvideo"
|
|
|
+ accept="video/mp4, video/quicktime, video/x-msvideo"
|
|
|
style="display: none"
|
|
|
@change="beforeUpload2($event, 2)"
|
|
|
/>
|
|
@@ -631,10 +587,10 @@
|
|
|
v-for="(v, vIndex) in studyJuri[0].upVedio"
|
|
|
:key="vIndex"
|
|
|
>
|
|
|
- <img src="../assets/uploadMp4.png" alt="" />
|
|
|
+ <img src="../assets/uploadMp4.png" alt />
|
|
|
<span>{{ v.name }}</span>
|
|
|
<div class="deleteWord" @click="clean(2)">
|
|
|
- <img src="../assets/icon/delete.png" alt="" />
|
|
|
+ <img src="../assets/icon/delete.png" alt />
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -646,9 +602,7 @@
|
|
|
</div>
|
|
|
<div v-if="proVisible" class="mask">
|
|
|
<div class="progressBox">
|
|
|
- <div class="lbox">
|
|
|
- <img src="../assets/loading.gif" />上传中,请稍后
|
|
|
- </div>
|
|
|
+ <div class="lbox"><img src="../assets/loading.gif" />上传中,请稍后</div>
|
|
|
<el-progress
|
|
|
:text-inside="true"
|
|
|
:stroke-width="20"
|
|
@@ -658,7 +612,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<el-dialog :visible.sync="pictureDialog" size="tiny">
|
|
|
- <img width="100%" :src="dialogImageUrl" alt="" />
|
|
|
+ <img width="100%" :src="dialogImageUrl" alt />
|
|
|
</el-dialog>
|
|
|
<el-dialog
|
|
|
title="查看问卷调查"
|
|
@@ -742,16 +696,11 @@
|
|
|
</el-form-item>
|
|
|
<div>富文本内容</div>
|
|
|
<!-- <editor-bar v-model="AttText.text" @change="change"></editor-bar> -->
|
|
|
- <div
|
|
|
- v-html="text.url"
|
|
|
- style="font-size: 18px; padding: 40px 0 0 0"
|
|
|
- ></div>
|
|
|
+ <div v-html="text.url" style="font-size: 18px; padding: 40px 0 0 0"></div>
|
|
|
</el-form>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
<!-- <el-button @click="clearAttText">取 消</el-button> -->
|
|
|
- <el-button type="primary" @click="dialogVisible1 = false"
|
|
|
- >确定</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="dialogVisible1 = false">确定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<el-dialog
|
|
@@ -763,125 +712,83 @@
|
|
|
class="dialog_diy toolsCss"
|
|
|
>
|
|
|
<div class="toolHeng">
|
|
|
- <div
|
|
|
- class="filebox"
|
|
|
- style="min-width: 480px; flex-wrap: nowrap; width: 100%"
|
|
|
- >
|
|
|
+ <div class="filebox" style="min-width: 480px; flex-wrap: nowrap; width: 100%">
|
|
|
<div style="display: flex; flex-flow: row wrap; width: 70%">
|
|
|
<div class="addPoint">
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(8) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(8) != -1 : undefined">
|
|
|
<img
|
|
|
src="../assets/icon/secondToolList/library.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
@click="addTools(8)"
|
|
|
/>
|
|
|
<div style="margin: 5px 0">素材库</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(1) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(1) != -1 : undefined">
|
|
|
<img
|
|
|
@click="addTools(1)"
|
|
|
src="../assets/icon/secondToolList/whiteBoard.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">电子白板</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(2) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(2) != -1 : undefined">
|
|
|
<img
|
|
|
@click="addTools(2)"
|
|
|
src="../assets/icon/secondToolList/note.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">便签</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(3) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(3) != -1 : undefined">
|
|
|
<img
|
|
|
@click="addTools(3)"
|
|
|
src="../assets/icon/secondToolList/mindMapping.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">思维导图</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(6) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(6) != -1 : undefined">
|
|
|
<img
|
|
|
@click="addTools(6)"
|
|
|
src="../assets/icon/secondToolList/doc.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">协同文档</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(7) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(7) != -1 : undefined">
|
|
|
<img
|
|
|
@click="addTools(7)"
|
|
|
src="../assets/icon/secondToolList/mindNetwork.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">思维网格</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(4) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(4) != -1 : undefined">
|
|
|
<img
|
|
|
@click="addTools(4)"
|
|
|
src="../assets/icon/thirdToolList/ask.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">问卷调查</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- v-if="
|
|
|
- chapTools.url ? chapTools.url.indexOf(5) != -1 : undefined
|
|
|
- "
|
|
|
- >
|
|
|
+ <div v-if="chapTools.url ? chapTools.url.indexOf(5) != -1 : undefined">
|
|
|
<img
|
|
|
@click="addTools(5)"
|
|
|
src="../assets/icon/thirdToolList/score.png"
|
|
|
- alt=""
|
|
|
+ alt
|
|
|
/>
|
|
|
<div style="margin: 5px 0">量规评分</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div
|
|
|
- style="padding: 0 0 20px 30px; width: 30%"
|
|
|
- v-if="chapTools.name != ''"
|
|
|
- >
|
|
|
+ <div style="padding: 0 0 20px 30px; width: 30%" v-if="chapTools.name != ''">
|
|
|
<div style="margin: 0 0 20px 0">工具描述</div>
|
|
|
- <div>
|
|
|
- {{ chapTools.name != "" ? chapTools.name : "暂无描述" }}
|
|
|
- </div>
|
|
|
+ <div>{{ chapTools.name != "" ? chapTools.name : "暂无描述" }}</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<span slot="footer" class="dialog-footer">
|
|
|
- <el-button type="primary" @click="dialogVisible2 = false"
|
|
|
- >确定</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="dialogVisible2 = false">确定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
<el-dialog
|
|
@@ -891,12 +798,7 @@
|
|
|
:before-close="handleClose"
|
|
|
class="dialog_diy"
|
|
|
>
|
|
|
- <iframe
|
|
|
- :src="pptImgUrl"
|
|
|
- frameborder="0"
|
|
|
- width="100%"
|
|
|
- height="600"
|
|
|
- ></iframe>
|
|
|
+ <iframe :src="pptImgUrl" frameborder="0" width="100%" height="600"></iframe>
|
|
|
</el-dialog>
|
|
|
<el-dialog
|
|
|
title="提示"
|
|
@@ -909,14 +811,70 @@
|
|
|
<div>此功能暂未开放!</div>
|
|
|
<el-button type="primary" @click="dialogVisible4 = false">确定</el-button>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog
|
|
|
+ title="问答"
|
|
|
+ :visible.sync="answerDialogVisible"
|
|
|
+ :append-to-body="true"
|
|
|
+ width="800px"
|
|
|
+ :before-close="handleClose"
|
|
|
+ class="dialog_diy"
|
|
|
+ >
|
|
|
+ <div>
|
|
|
+ <div
|
|
|
+ style="
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: nowrap;
|
|
|
+ flex-direction: column;
|
|
|
+ position: relative;
|
|
|
+ "
|
|
|
+ >
|
|
|
+ <div class="queTop">
|
|
|
+ <div class="question">
|
|
|
+ <img src="../assets/icon/question.png" alt />
|
|
|
+ </div>
|
|
|
+ <div class="queTitle">
|
|
|
+ <div>提问:</div>
|
|
|
+ <div>{{ answerQ }}</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="ediBottom">
|
|
|
+ <editor-bar
|
|
|
+ style="width: 100%; padding: 10px 0 20px 0px; margin: 0"
|
|
|
+ v-model="questionAnswer"
|
|
|
+ @change="change"
|
|
|
+ ></editor-bar>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div slot="footer">
|
|
|
+ <el-button @click="answerDialogVisible = false">取 消</el-button>
|
|
|
+ <el-button type="primary" @click="addQuestion">提 交</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+ <el-dialog
|
|
|
+ title="倒计时"
|
|
|
+ :visible.sync="timeDialogVisible"
|
|
|
+ :append-to-body="true"
|
|
|
+ width="800px"
|
|
|
+ :before-close="handleClose"
|
|
|
+ class="dialog_diy"
|
|
|
+ >
|
|
|
+ <div>
|
|
|
+ <Time v-if="timeDialogVisible"></Time>
|
|
|
+ </div>
|
|
|
+ <div slot="footer">
|
|
|
+ <el-button @click="timeDialogVisible = false">关 闭</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import "../common/aws-sdk-2.235.1.min.js";
|
|
|
import EditorBar from "../components/tools/wangEnduit.vue";
|
|
|
+import Time from "../components/tools/time.vue";
|
|
|
export default {
|
|
|
- components: { EditorBar },
|
|
|
+ components: { EditorBar, Time },
|
|
|
data() {
|
|
|
return {
|
|
|
dialogVisible: false,
|
|
@@ -986,6 +944,7 @@ export default {
|
|
|
proVisible: false,
|
|
|
progress: 0,
|
|
|
questionAnswer: "",
|
|
|
+ answerQ: "", //问答标题
|
|
|
wbCount: 0,
|
|
|
wordCount: 0,
|
|
|
mindCount: 0,
|
|
@@ -995,6 +954,8 @@ export default {
|
|
|
mindNetWorkCount: 0,
|
|
|
libraryCount: 0,
|
|
|
workCount: 0,
|
|
|
+ timeCount: 0,
|
|
|
+ answerCount: 0,
|
|
|
dialogImageUrl: "",
|
|
|
pictureDialog: false,
|
|
|
toolTypeList: [],
|
|
@@ -1004,6 +965,8 @@ export default {
|
|
|
dialogVisible4: false,
|
|
|
isNoHomeWork: false,
|
|
|
dialogVisible5: false,
|
|
|
+ answerDialogVisible: false,
|
|
|
+ timeDialogVisible: false,
|
|
|
radio: [],
|
|
|
isAsk: false,
|
|
|
askJson: {
|
|
@@ -1355,8 +1318,7 @@ export default {
|
|
|
.then((res) => {
|
|
|
loading.close();
|
|
|
// element.imgUrl = JSON.parse(element.chapters).poster;
|
|
|
- var a = JSON.parse(res.data[0][0].chapters)[t].chapterInfo[0]
|
|
|
- .taskJson;
|
|
|
+ var a = JSON.parse(res.data[0][0].chapters)[t].chapterInfo[0].taskJson;
|
|
|
// // var a = JSON.parse(res.data[0][0].chapters)[t].chapterInfo[0]
|
|
|
// // .chapterData;
|
|
|
var b = [
|
|
@@ -1420,8 +1382,7 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
var d = JSON.parse(JSON.stringify(this.playerOptions));
|
|
|
- d.sources[0].src =
|
|
|
- this.vedio[i].length > 0 ? this.vedio[i][0].url : this.mr;
|
|
|
+ d.sources[0].src = this.vedio[i].length > 0 ? this.vedio[i][0].url : this.mr;
|
|
|
this.playerO[i] = d;
|
|
|
}
|
|
|
this.courseDetail = res.data[0][0];
|
|
@@ -1454,10 +1415,8 @@ export default {
|
|
|
|
|
|
this.$nextTick(function () {
|
|
|
setTimeout(() => {
|
|
|
- var a =
|
|
|
- document.getElementsByClassName("video-player")[0].offsetHeight;
|
|
|
- document.getElementsByClassName("vedioList")[0].style.height =
|
|
|
- a + "px";
|
|
|
+ var a = document.getElementsByClassName("video-player")[0].offsetHeight;
|
|
|
+ document.getElementsByClassName("vedioList")[0].style.height = a + "px";
|
|
|
}, 500);
|
|
|
});
|
|
|
// this.addToolsType(0);
|
|
@@ -1490,17 +1449,9 @@ export default {
|
|
|
},
|
|
|
isAssetTypeAnImage(ext) {
|
|
|
return (
|
|
|
- [
|
|
|
- "png",
|
|
|
- "jpg",
|
|
|
- "jpeg",
|
|
|
- "bmp",
|
|
|
- "gif",
|
|
|
- "webp",
|
|
|
- "psd",
|
|
|
- "svg",
|
|
|
- "tiff",
|
|
|
- ].indexOf(ext) !== -1
|
|
|
+ ["png", "jpg", "jpeg", "bmp", "gif", "webp", "psd", "svg", "tiff"].indexOf(
|
|
|
+ ext
|
|
|
+ ) !== -1
|
|
|
);
|
|
|
},
|
|
|
switchVideo(media) {
|
|
@@ -1525,12 +1476,9 @@ export default {
|
|
|
downFile(f, i) {
|
|
|
var a = ["PPT", "PPTX", "PDF", "XLSX", "XLS", "DOC", "DOCX"];
|
|
|
if (
|
|
|
- a.indexOf(
|
|
|
- f.url.split(".")[f.url.split(".").length - 1].toLocaleUpperCase()
|
|
|
- ) != -1
|
|
|
+ a.indexOf(f.url.split(".")[f.url.split(".").length - 1].toLocaleUpperCase()) != -1
|
|
|
) {
|
|
|
- this.pptImgUrl =
|
|
|
- "https://view.officeapps.live.com/op/view.aspx?src=" + f.url;
|
|
|
+ this.pptImgUrl = "https://view.officeapps.live.com/op/view.aspx?src=" + f.url;
|
|
|
this.dialogVisible3 = true;
|
|
|
} else {
|
|
|
window.open(this.file[i].url);
|
|
@@ -1721,8 +1669,12 @@ export default {
|
|
|
this.mindNetWorkCount = res.data[0][i].count;
|
|
|
} else if (res.data[0][i].tools == 8) {
|
|
|
this.libraryCount = res.data[0][i].count;
|
|
|
- } else if (res.data[0][i].tools == 9) {
|
|
|
+ } else if (res.data[0][i].tools == 16) {
|
|
|
this.workCount = res.data[0][i].count;
|
|
|
+ } else if (res.data[0][i].tools == 10) {
|
|
|
+ this.timeCount = res.data[0][i].count;
|
|
|
+ } else if (res.data[0][i].tools == 15) {
|
|
|
+ this.answerCount = res.data[0][i].count;
|
|
|
}
|
|
|
}
|
|
|
})
|
|
@@ -1790,18 +1742,15 @@ export default {
|
|
|
this.toolsCount(a, t);
|
|
|
}
|
|
|
if (!this.dialogVisible2) {
|
|
|
- this.askJson.askJson =
|
|
|
- this.chapInfo.chapterInfo[0].taskJson[this.taskCount].toolChoose[
|
|
|
- i
|
|
|
- ].askJson[0];
|
|
|
- this.askJson.askTitle =
|
|
|
- this.chapInfo.chapterInfo[0].taskJson[this.taskCount].toolChoose[
|
|
|
- i
|
|
|
- ].askTitle;
|
|
|
- this.askJson.askCount =
|
|
|
- this.chapInfo.chapterInfo[0].taskJson[this.taskCount].toolChoose[
|
|
|
- i
|
|
|
- ].askCount;
|
|
|
+ this.askJson.askJson = this.chapInfo.chapterInfo[0].taskJson[
|
|
|
+ this.taskCount
|
|
|
+ ].toolChoose[i].askJson[0];
|
|
|
+ this.askJson.askTitle = this.chapInfo.chapterInfo[0].taskJson[
|
|
|
+ this.taskCount
|
|
|
+ ].toolChoose[i].askTitle;
|
|
|
+ this.askJson.askCount = this.chapInfo.chapterInfo[0].taskJson[
|
|
|
+ this.taskCount
|
|
|
+ ].toolChoose[i].askCount;
|
|
|
} else {
|
|
|
this.askJson.askJson = this.chapTools.askJson.askJson[0];
|
|
|
this.askJson.askTitle = this.chapTools.askJson.askTitle;
|
|
@@ -1837,7 +1786,7 @@ export default {
|
|
|
this.toolsCount(a, t);
|
|
|
}
|
|
|
window.parent.postMessage({ tools: "7" }, "*");
|
|
|
- } else if (t == 9) {
|
|
|
+ } else if (t == 16) {
|
|
|
if (this.workCount > 0) {
|
|
|
this.updateCount(this.workCount, t);
|
|
|
} else {
|
|
@@ -1846,7 +1795,7 @@ export default {
|
|
|
this.toolsCount(a, t);
|
|
|
}
|
|
|
this.dialogVisible = true;
|
|
|
- } else {
|
|
|
+ } else if (t == 8) {
|
|
|
if (this.libraryCount > 0) {
|
|
|
this.updateCount(this.libraryCount, t);
|
|
|
} else {
|
|
@@ -1855,6 +1804,28 @@ export default {
|
|
|
this.toolsCount(a, t);
|
|
|
}
|
|
|
window.parent.postMessage({ tools: "8" }, "*");
|
|
|
+ } else if (t == 10) {
|
|
|
+ if (this.timeCount > 0) {
|
|
|
+ this.updateCount(this.timeCount, t);
|
|
|
+ } else {
|
|
|
+ this.timeCount++;
|
|
|
+ a = this.timeCount;
|
|
|
+ this.toolsCount(a, t);
|
|
|
+ }
|
|
|
+ this.timeDialogVisible = true;
|
|
|
+ } else if (t == 15) {
|
|
|
+ if (this.answerCount > 0) {
|
|
|
+ this.updateCount(this.answerCount, t);
|
|
|
+ } else {
|
|
|
+ this.answerCount++;
|
|
|
+ a = this.answerCount;
|
|
|
+ this.toolsCount(a, t);
|
|
|
+ }
|
|
|
+ this.answerQ = this.chapInfo.chapterInfo[0].taskJson[this.taskCount].toolChoose[i]
|
|
|
+ .answerQ
|
|
|
+ ? this.chapInfo.chapterInfo[0].taskJson[this.taskCount].toolChoose[i].answerQ
|
|
|
+ : "";
|
|
|
+ this.answerDialogVisible = true;
|
|
|
}
|
|
|
},
|
|
|
toolsCount(a, t) {
|
|
@@ -2459,6 +2430,7 @@ export default {
|
|
|
justify-content: flex-start;
|
|
|
align-items: center;
|
|
|
border-bottom: 1px solid #eeeeee;
|
|
|
+ box-sizing: border-box;
|
|
|
}
|
|
|
.question {
|
|
|
width: 40px;
|
|
@@ -2546,7 +2518,7 @@ export default {
|
|
|
margin: 0 15px 0 0;
|
|
|
}
|
|
|
.ediBottom {
|
|
|
- margin-left: 20px;
|
|
|
+ /* margin-left: 20px; */
|
|
|
}
|
|
|
.binfo_input {
|
|
|
font: inherit;
|