|
@@ -181,6 +181,19 @@
|
|
|
<div>思维导图</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div
|
|
|
+ v-if="
|
|
|
+ tools[ppage - 1].tools &&
|
|
|
+ tools[ppage - 1].tools.indexOf(28) != -1
|
|
|
+ "
|
|
|
+ @click="checkTools(28)"
|
|
|
+ class="toolCss"
|
|
|
+ >
|
|
|
+ <div class="toolImg">
|
|
|
+ <img src="../assets/icon/thirdToolList/translation.png" alt />
|
|
|
+ <div>翻译</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<div
|
|
|
v-if="
|
|
|
tools[ppage - 1].tools &&
|
|
@@ -266,6 +279,23 @@
|
|
|
ref="mind"
|
|
|
></iframe>
|
|
|
</div>
|
|
|
+ <div v-if="toolCount == 28" class="tools_child_box">
|
|
|
+ <div class="tools_title">
|
|
|
+ <span>翻译</span>
|
|
|
+ <div>
|
|
|
+ <img
|
|
|
+ src="../assets/full.png"
|
|
|
+ class="full"
|
|
|
+ @click="fullTools"
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <iframe
|
|
|
+ style="width: 100%; height: 100%; border: none"
|
|
|
+ src="//dict.youdao.com/"
|
|
|
+ ref="mind"
|
|
|
+ ></iframe>
|
|
|
+ </div>
|
|
|
<div v-if="toolCount == 6" class="tools_child_box">
|
|
|
<div class="tools_title">
|
|
|
<span>协同文档</span>
|
|
@@ -334,7 +364,9 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="nextStepBox">
|
|
|
- <div class="nextStepOne" @click="isBlock = 4">返回</div>
|
|
|
+ <div class="nextStepOne" @click="(isBlock = 4), (full = false)">
|
|
|
+ 返回
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div
|
|
|
class="nextStepOne"
|
|
@@ -409,7 +441,7 @@
|
|
|
bottom: 0;
|
|
|
"
|
|
|
>
|
|
|
- <el-button @click="isBlock = 0">取消</el-button>
|
|
|
+ <!-- <el-button @click="isBlock = 0">取消</el-button> -->
|
|
|
<el-button type="primary" @click="addWork(6)">确定</el-button>
|
|
|
</span>
|
|
|
</div>
|
|
@@ -504,9 +536,9 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="nextStepBox">
|
|
|
+ <!-- <div class="nextStepBox">
|
|
|
<div class="nextStepOne" @click="isBlock = 0">关闭</div>
|
|
|
- </div>
|
|
|
+ </div> -->
|
|
|
</div>
|
|
|
<div
|
|
|
class="answerBox"
|
|
@@ -525,9 +557,9 @@
|
|
|
></video-player>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="nextStepBox" style="margin-top: 5%">
|
|
|
+ <!-- <div class="nextStepBox" style="margin-top: 5%">
|
|
|
<div class="nextStepOne" @click="isBlock = 0">关闭</div>
|
|
|
- </div>
|
|
|
+ </div> -->
|
|
|
</div>
|
|
|
</div>
|
|
|
<div
|
|
@@ -548,6 +580,29 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div
|
|
|
+ class="answerBox"
|
|
|
+ :class="{ fullStyle: full }"
|
|
|
+ v-if="isBlock == 9"
|
|
|
+ >
|
|
|
+ <div style="height: 70%; width: 100%">
|
|
|
+ <div class="wheel">
|
|
|
+ <div class="workd_media" style="height: 100%">
|
|
|
+ <audio
|
|
|
+ style="margin: 0 auto; display: block"
|
|
|
+ :src="audioUrl"
|
|
|
+ controls="controls"
|
|
|
+ ref="audio"
|
|
|
+ >
|
|
|
+ Your browser does not support the audio element.
|
|
|
+ </audio>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- <div class="nextStepBox" style="margin-top: 5%">
|
|
|
+ <div class="nextStepOne" @click="isBlock = 0">关闭</div>
|
|
|
+ </div> -->
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -610,6 +665,32 @@
|
|
|
确定
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog
|
|
|
+ :visible.sync="dialogVisiblePick"
|
|
|
+ :append-to-body="true"
|
|
|
+ width="500px"
|
|
|
+ class="dialog_diy"
|
|
|
+ >
|
|
|
+ <div style="text-align: center; padding: 20px 0 50px 0; font-size: 18px">
|
|
|
+ 你被老师点名起来回答了!!!
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ style="
|
|
|
+ width: 200px;
|
|
|
+ background: #4d8ae0;
|
|
|
+ height: 35px;
|
|
|
+ margin: 0 auto;
|
|
|
+ text-align: center;
|
|
|
+ line-height: 35px;
|
|
|
+ color: #fff;
|
|
|
+ border-radius: 5px;
|
|
|
+ cursor: pointer;
|
|
|
+ "
|
|
|
+ @click="pick"
|
|
|
+ >
|
|
|
+ 确定
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
<div v-html="iframeInnerHtml" ref="iframeIh" class="iframeBox"></div>
|
|
|
</div>
|
|
|
</template>
|
|
@@ -641,6 +722,7 @@ export default {
|
|
|
mr: require("../assets/kc1.png"),
|
|
|
timu: [],
|
|
|
dialogVisible: false,
|
|
|
+ dialogVisiblePick: false,
|
|
|
answerBox: "",
|
|
|
isNoHomeWork: false,
|
|
|
answer: [
|
|
@@ -665,6 +747,14 @@ export default {
|
|
|
toolCount: 0,
|
|
|
tools: [
|
|
|
"",
|
|
|
+ // {
|
|
|
+ // file: [
|
|
|
+ // {
|
|
|
+ // name: "音频1.MP3",
|
|
|
+ // src: "https://ccrb.s3.cn-northwest-1.amazonaws.com.cn/%E6%9F%B3%E8%BD%BB%E9%A2%82%20-%20%E6%BA%AF%EF%BC%88%E9%92%A2%E7%90%B4%E7%89%88%EF%BC%891661673251415.mp3",
|
|
|
+ // },
|
|
|
+ // ],
|
|
|
+ // }
|
|
|
"",
|
|
|
{
|
|
|
file: [
|
|
@@ -692,7 +782,7 @@ export default {
|
|
|
},
|
|
|
{ tools: [9] },
|
|
|
"",
|
|
|
- { tools: [3] },
|
|
|
+ { tools: [3, 28] },
|
|
|
{ tools: [16] },
|
|
|
{ tools: [14] },
|
|
|
"",
|
|
@@ -724,6 +814,8 @@ export default {
|
|
|
imgFile: "",
|
|
|
imgFileUp: [],
|
|
|
videoList: [],
|
|
|
+ videoList2: [],
|
|
|
+ audioUrl: "",
|
|
|
fileList: [],
|
|
|
playerOptions: {
|
|
|
playbackRates: [0.7, 1.0, 1.5, 2.0], //播放速度
|
|
@@ -1021,16 +1113,19 @@ export default {
|
|
|
// this.$message.error("请填写简要描述");
|
|
|
// return;
|
|
|
// }
|
|
|
+ var _str = "";
|
|
|
+ if (type == 6) {
|
|
|
+ _str = "您已经提交了评价了,如果您再提交将覆盖上次提交的评价!";
|
|
|
+ } else {
|
|
|
+ _str = "您已经提交了该作业了,如果您再提交将覆盖上次提交的作业!";
|
|
|
+ }
|
|
|
+
|
|
|
if (this.isNoHomeWork == true || this.isAnswer == true) {
|
|
|
- this.$confirm(
|
|
|
- "您已经提交了该作业了,如果您再提交将覆盖上次提交的作业!",
|
|
|
- "提示",
|
|
|
- {
|
|
|
- confirmButtonText: "确定",
|
|
|
- cancelButtonText: "取消",
|
|
|
- type: "warning",
|
|
|
- }
|
|
|
- )
|
|
|
+ this.$confirm(_str, "提示", {
|
|
|
+ confirmButtonText: "确定",
|
|
|
+ cancelButtonText: "取消",
|
|
|
+ type: "warning",
|
|
|
+ })
|
|
|
.then(() => {
|
|
|
this.addSWork(type);
|
|
|
})
|
|
@@ -1198,6 +1293,7 @@ export default {
|
|
|
selectFile() {
|
|
|
this.fileList = [];
|
|
|
this.videoList = [];
|
|
|
+ this.videoList2 = [];
|
|
|
var a = ["PDF", "DOC", "DOCX", "PPT", "PPTX", "XLSX", "XLS"];
|
|
|
var b = this.tools[this.ppage - 1].file;
|
|
|
for (var i = 0; i < b.length; i++) {
|
|
@@ -1209,11 +1305,21 @@ export default {
|
|
|
) != -1
|
|
|
) {
|
|
|
this.fileList.push(b[i]);
|
|
|
+ } else if (
|
|
|
+ b[i].src
|
|
|
+ .split(".")
|
|
|
+ [b[i].src.split(".").length - 1].toLocaleUpperCase() == "MP3"
|
|
|
+ ) {
|
|
|
+ this.videoList2.push(b[i]);
|
|
|
} else {
|
|
|
this.videoList.push(b[i]);
|
|
|
}
|
|
|
}
|
|
|
- this.playVideo();
|
|
|
+ if (this.videoList.length) {
|
|
|
+ this.playVideo();
|
|
|
+ } else if (this.videoList2.length) {
|
|
|
+ this.playVideo2();
|
|
|
+ }
|
|
|
},
|
|
|
openFile(u) {
|
|
|
this.pptImgUrl = "https://view.officeapps.live.com/op/view.aspx?src=" + u;
|
|
@@ -1228,6 +1334,10 @@ export default {
|
|
|
}
|
|
|
this.isBlock = 6;
|
|
|
},
|
|
|
+ playVideo2() {
|
|
|
+ this.audioUrl = this.videoList2[0].src;
|
|
|
+ this.isBlock = 9;
|
|
|
+ },
|
|
|
switchVideo(media) {
|
|
|
this.playerO = {};
|
|
|
this.playerOptions.poster = "";
|
|
@@ -1240,7 +1350,7 @@ export default {
|
|
|
return;
|
|
|
}
|
|
|
if (page == this.pageTotal) {
|
|
|
- this.isBlock = 3;
|
|
|
+ // this.isBlock = 3;
|
|
|
} else {
|
|
|
this.isBlock = 0;
|
|
|
if (
|
|
@@ -1308,12 +1418,34 @@ export default {
|
|
|
}
|
|
|
this.selectSWork();
|
|
|
},
|
|
|
-
|
|
|
+ pick() {
|
|
|
+ let params = [
|
|
|
+ {
|
|
|
+ h: "",
|
|
|
+ cid: this.cid,
|
|
|
+ },
|
|
|
+ ];
|
|
|
+ this.ajax
|
|
|
+ .post(this.$store.state.api + "updatePPTHandle", params)
|
|
|
+ .then((res) => {
|
|
|
+ this.dialogVisiblePick = false;
|
|
|
+ })
|
|
|
+ .catch((err) => {
|
|
|
+ console.error(err);
|
|
|
+ });
|
|
|
+ },
|
|
|
setPage() {
|
|
|
this.ajax
|
|
|
.get(this.$store.state.api + "selectPptPage", "")
|
|
|
.then((res) => {
|
|
|
if (res.data[0].length > 0) {
|
|
|
+ if (
|
|
|
+ res.data[0][0].handle &&
|
|
|
+ JSON.parse(res.data[0][0].handle).type == 2 &&
|
|
|
+ JSON.parse(res.data[0][0].handle).userid == this.userid
|
|
|
+ ) {
|
|
|
+ this.dialogVisiblePick = true;
|
|
|
+ }
|
|
|
if (this.ppage == res.data[0][0].page && this.isBlock !== 0) {
|
|
|
return;
|
|
|
} else {
|