|
@@ -235,10 +235,10 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- <div class="body_student" :style="{width: mlDialog ? 'calc(100% - '+`${!['2'].includes(tType)?classRoomHelperWidth:'10px'}`+' - 20% - 40px)' : 'calc(100% - '+`${!['2'].includes(tType)?classRoomHelperWidth:'10px'}`+' - 10px)', left: mlDialog ? 'calc(20% + 35px)' : '10px' }">
|
|
|
- <div class="new_topFixed" :style="{width: mlDialog ? 'calc(100% - '+`${!['2'].includes(tType)?classRoomHelperWidth:'10px'}`+' - 20% - 40px)' : 'calc(100% - '+`${!['2'].includes(tType)?classRoomHelperWidth:'10px'}`+' - 10px)', left: mlDialog ? 'calc(20% + 35px)' : '10px' }"></div>
|
|
|
- <div class="new_top" :style="{width: mlDialog ? 'calc(100% - '+`${!['2'].includes(tType)?classRoomHelperWidth:'10px'}`+' - 20% - 47px)' : 'calc(100% - '+`${!['2'].includes(tType)?classRoomHelperWidth:'10px'}`+' - 18px)', left: mlDialog ? 'calc(20% + 35px)' : '10px' }">
|
|
|
- <div class="courseIndex" :style="{width: (orgArray.includes(org) || oidArray.includes(oid)) && !['2'].includes(tType) ? '100%' : 'calc(100% - 745px)'}">
|
|
|
+ <div class="body_student" :style="{width: mlDialog ? 'calc(100% - '+`${classRoomHelperWidth}`+' - 20% - 40px)' : 'calc(100% - '+`${classRoomHelperWidth}`+' - 10px)', left: mlDialog ? 'calc(20% + 35px)' : '10px' }">
|
|
|
+ <div class="new_topFixed" :style="{width: mlDialog ? 'calc(100% - '+`${classRoomHelperWidth}`+' - 20% - 40px)' : 'calc(100% - '+`${classRoomHelperWidth}`+' - 10px)', left: mlDialog ? 'calc(20% + 35px)' : '10px' }"></div>
|
|
|
+ <div class="new_top" :style="{width: mlDialog ? 'calc(100% - '+`${classRoomHelperWidth}`+' - 20% - 47px)' : 'calc(100% - '+`${classRoomHelperWidth}`+' - 18px)', left: mlDialog ? 'calc(20% + 35px)' : '10px' }">
|
|
|
+ <div class="courseIndex" :style="{width: (orgArray.includes(org) || oidArray.includes(oid))? '100%' : 'calc(100% - 745px)'}">
|
|
|
<div>任务{{ taskCount + 1 }}</div>
|
|
|
<el-tooltip
|
|
|
effect="light"
|
|
@@ -256,7 +256,7 @@
|
|
|
</el-tooltip>
|
|
|
</div>
|
|
|
<!-- v-show="org !== '1973f6c7-1561-11ee-91d8-005056b86db5' || org !== '777559d2-7239-11ee-b98c-005056b86db5'" -->
|
|
|
- <div class="btnAll" v-show="!orgArray.includes(org) && !oidArray.includes(oid) || ['2'].includes(tType)">
|
|
|
+ <div class="btnAll" v-show="!orgArray.includes(org) && !oidArray.includes(oid)">
|
|
|
<div class="btnLeft">
|
|
|
<el-tooltip effect="light" content="刷新" placement="top">
|
|
|
<div class="reBtnIcon" @click="refreshCourse">
|
|
@@ -620,8 +620,9 @@
|
|
|
|
|
|
<iframe
|
|
|
style="width: 100%; height: 100%; border: none"
|
|
|
+ :key="diffKey"
|
|
|
allow="camera *; microphone *;display-capture;midi;encrypted-media;"
|
|
|
- v-if="pptImgUrl1.indexOf('knowledge.cocorobo.cn')!=-1 || pptImgUrl1.indexOf('cloud.cocorobo.cn')!=-1 || pptImgUrl1.indexOf('app.cocorobo.cn')!=-1"
|
|
|
+ v-if="pptImgUrl1.indexOf('cocorobo')!=-1"
|
|
|
:src="pptImgUrl1"
|
|
|
></iframe>
|
|
|
<iframe
|
|
@@ -632,6 +633,16 @@
|
|
|
:src="pptImgUrl1"
|
|
|
></iframe>
|
|
|
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="wheel"
|
|
|
+ v-if="showType === 16"
|
|
|
+ style="width: 95%; margin: 0 auto"
|
|
|
+ >
|
|
|
+ <iframe
|
|
|
+ style="width: 100%; height: 100%; border: none"
|
|
|
+ :src="pptImgUrl1"
|
|
|
+ ></iframe>
|
|
|
</div>
|
|
|
<div
|
|
|
class="wheel"
|
|
@@ -826,6 +837,24 @@
|
|
|
/>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div class="navListItem" v-if="vitem.type == 16">
|
|
|
+ <div
|
|
|
+ class="navText"
|
|
|
+ @click="checkHtml(vitem, vindex)"
|
|
|
+ :class="isClickNav == vindex ? 'isClickNav' : ''"
|
|
|
+ >
|
|
|
+ {{ vitem.name }}
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ class="downIcon"
|
|
|
+ @click="checkFileFull1(vitem.type, vitem)"
|
|
|
+ >
|
|
|
+ <img
|
|
|
+ src="../../assets/icon/newIcon/allScreen.png"
|
|
|
+ alt
|
|
|
+ />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<div class="fileC_box" v-if="fileC[0].length > 0">
|
|
|
<div class="fileC_title">以下文件不支持预览</div>
|
|
@@ -4436,7 +4465,7 @@
|
|
|
cursor: pointer;
|
|
|
"
|
|
|
>
|
|
|
- {{ index + 1 + "、" + item.teststitle }}
|
|
|
+ {{ index + 1 + "、" }} <span v-html="renderedFormula(item.teststitle)"></span>
|
|
|
</div>
|
|
|
</el-tooltip>
|
|
|
</div>
|
|
@@ -8567,21 +8596,37 @@
|
|
|
</div>
|
|
|
<!-- v-show="org == '1973f6c7-1561-11ee-91d8-005056b86db5' || org == '777559d2-7239-11ee-b98c-005056b86db5' || org == '884c5665-a453-46f3-b7b6-01d575290aa9'" -->
|
|
|
<classRoomHelper v-if="!['2'].includes(tType)" @studentFreePreview="studentFreePreview" @OpenJobPreview="OpenJobPreview" :videoStart="videoStart" :IsFollow="IsFollow" :sIsOpen="sIsOpen" :IsLookOpen="IsLookOpen" :splitScreenData="splitScreenData" @splitScreenBehavior="splitScreenBehavior" @startRecording="startRecording" @stopRecording="stopRecording" :fileList="vChapterData[taskCount]" :worksStudent="worksStudent" :courseType="parseInt(courseType)" :taskCount="taskCount" :tcid="tcid" :navList="navList" v-show="orgArray.includes(org) || oidArray.includes(oid)" ref="classRoomHelperRef" :courseDetail="courseDetail" :tType="tType" @setWidth="setClassRoomHelperWidth" @refresh="refreshCourse" @goStep="nextOrpreSteps" @authority="juriVisible = true" @review="setPz" @backPage="goTo(
|
|
|
- '/courseDetail?userid=' +
|
|
|
- userid +
|
|
|
- '&oid=' +
|
|
|
- oid +
|
|
|
- '&org=' +
|
|
|
- org +
|
|
|
- '&cid=' +
|
|
|
- classId +
|
|
|
- '&courseId=' +
|
|
|
- id +
|
|
|
- '&tType=' +
|
|
|
- tType +
|
|
|
- '&screenType=' +
|
|
|
- screenType
|
|
|
- )"></classRoomHelper>
|
|
|
+ '/courseDetail?userid=' +
|
|
|
+ userid +
|
|
|
+ '&oid=' +
|
|
|
+ oid +
|
|
|
+ '&org=' +
|
|
|
+ org +
|
|
|
+ '&cid=' +
|
|
|
+ classId +
|
|
|
+ '&courseId=' +
|
|
|
+ id +
|
|
|
+ '&tType=' +
|
|
|
+ tType +
|
|
|
+ '&screenType=' +
|
|
|
+ screenType
|
|
|
+ )"></classRoomHelper>
|
|
|
+ <studentClassRoomHelper v-else-if="['2'].includes(tType)" @studentFreePreview="studentFreePreview" @OpenJobPreview="OpenJobPreview" :videoStart="videoStart" :IsFollow="IsFollow" :sIsOpen="sIsOpen" :IsLookOpen="IsLookOpen" :splitScreenData="splitScreenData" @splitScreenBehavior="splitScreenBehavior" @startRecording="startRecording" @stopRecording="stopRecording" :fileList="vChapterData[taskCount]" :worksStudent="worksStudent" :courseType="parseInt(courseType)" :taskCount="taskCount" :tcid="tcid" :navList="navList" v-show="orgArray.includes(org) || oidArray.includes(oid)" :courseDetail="courseDetail" :tType="tType" @setWidth="setClassRoomHelperWidth" @refresh="refreshCourse" @goStep="nextOrpreSteps" @authority="juriVisible = true" @review="setPz" @backPage="goTo(
|
|
|
+ '/courseDetail?userid=' +
|
|
|
+ userid +
|
|
|
+ '&oid=' +
|
|
|
+ oid +
|
|
|
+ '&org=' +
|
|
|
+ org +
|
|
|
+ '&cid=' +
|
|
|
+ classId +
|
|
|
+ '&courseId=' +
|
|
|
+ id +
|
|
|
+ '&tType=' +
|
|
|
+ tType +
|
|
|
+ '&screenType=' +
|
|
|
+ screenType
|
|
|
+ )"></studentClassRoomHelper>
|
|
|
<div
|
|
|
class="pButton"
|
|
|
@click="(pzDialog = true), selectPz()"
|
|
@@ -10466,40 +10511,7 @@
|
|
|
>
|
|
|
退出全屏
|
|
|
</el-button>
|
|
|
- <div
|
|
|
- class="wheel"
|
|
|
- v-if="
|
|
|
- (fulltype == 2 || fulltype == 4) &&
|
|
|
- fullUrl.indexOf(
|
|
|
- 'https://view.officeapps.live.com/op/view.aspx?src='
|
|
|
- ) != -1
|
|
|
- "
|
|
|
- style="width: 100%;height:100%; margin: 0 auto"
|
|
|
- >
|
|
|
- <iframe
|
|
|
- style="width: 100%; height: 100%; border: none"
|
|
|
- :src="fullUrl"
|
|
|
- ></iframe>
|
|
|
- </div>
|
|
|
- <iframe
|
|
|
- style="width: 100%; height: 100%; border: none"
|
|
|
- allow="camera *; microphone *;display-capture;midi;encrypted-media;"
|
|
|
- v-else-if="(fulltype == 2 || fulltype == 4) && (fullUrl.indexOf('knowledge.cocorobo.cn')!=-1 || fullUrl.indexOf('cloud.cocorobo.cn')!=-1) || fullUrl.indexOf('app.cocorobo.cn')!=-1"
|
|
|
- :src="fullUrl"
|
|
|
- ></iframe>
|
|
|
- <iframe
|
|
|
- style="width: 100%; height: 100%; border: none"
|
|
|
- security="restricted"
|
|
|
- v-else-if="(fulltype == 2 || fulltype == 4)"
|
|
|
- sandbox="allow-top-navigation allow-same-origin allow-forms allow-scripts allow-popups"
|
|
|
- :src="fullUrl"
|
|
|
- ></iframe>
|
|
|
- <pdf
|
|
|
- v-else-if="fulltype == 3"
|
|
|
- :pdfUrl="fullUrl"
|
|
|
- style="width: 100%; height: 100%; overflow: auto"
|
|
|
- ></pdf>
|
|
|
- <div
|
|
|
+ <div
|
|
|
class="wheel"
|
|
|
v-if="fulltype == 1"
|
|
|
style="
|
|
@@ -10526,6 +10538,47 @@
|
|
|
></div>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
+ <div
|
|
|
+ class="wheel"
|
|
|
+ v-else-if="
|
|
|
+ (fulltype == 2 || fulltype == 4) &&
|
|
|
+ fullUrl.indexOf(
|
|
|
+ 'https://view.officeapps.live.com/op/view.aspx?src='
|
|
|
+ ) != -1
|
|
|
+ "
|
|
|
+ style="width: 100%;height:100%; margin: 0 auto"
|
|
|
+ >
|
|
|
+ <iframe
|
|
|
+ style="width: 100%; height: 100%; border: none"
|
|
|
+ :src="fullUrl"
|
|
|
+ ></iframe>
|
|
|
+ </div>
|
|
|
+ <iframe
|
|
|
+ style="width: 100%; height: 100%; border: none"
|
|
|
+ allow="camera *; microphone *;display-capture;midi;encrypted-media;"
|
|
|
+ v-else-if="(fulltype == 2 || fulltype == 4) && (fullUrl.indexOf('knowledge.cocorobo.cn')!=-1 || fullUrl.indexOf('cloud.cocorobo.cn')!=-1) || fullUrl.indexOf('app.cocorobo.cn')!=-1"
|
|
|
+ :src="fullUrl"
|
|
|
+ ></iframe>
|
|
|
+ <iframe
|
|
|
+ style="width: 100%; height: 100%; border: none"
|
|
|
+ security="restricted"
|
|
|
+ v-else-if="(fulltype == 2 || fulltype == 4)"
|
|
|
+ sandbox="allow-top-navigation allow-same-origin allow-forms allow-scripts allow-popups"
|
|
|
+ :src="fullUrl"
|
|
|
+ ></iframe>
|
|
|
+ <pdf
|
|
|
+ v-else-if="fulltype == 3"
|
|
|
+ :pdfUrl="fullUrl"
|
|
|
+ style="width: 100%; height: 100%; overflow: auto"
|
|
|
+ ></pdf>
|
|
|
+ <iframe
|
|
|
+ style="width: 100%; height: 100%; border: none"
|
|
|
+ security="restricted"
|
|
|
+ v-if="(fulltype == 16)"
|
|
|
+ sandbox="allow-top-navigation allow-same-origin allow-forms allow-scripts allow-popups"
|
|
|
+ :src="fullUrl"
|
|
|
+ ></iframe>
|
|
|
+
|
|
|
</div>
|
|
|
<!-- <div slot="footer">
|
|
|
<el-button @click="fullDialogVisible = false">关 闭</el-button>
|
|
@@ -12552,6 +12605,7 @@ import correctText from '../components/correctText.vue'
|
|
|
import scoreItem from '../scoreList/scoreItem.vue'
|
|
|
import scoreZong from '../scoreZong/index.vue'
|
|
|
import classRoomHelper from '../classRoomHelper/index.vue'
|
|
|
+import studentClassRoomHelper from '../classRoomHelper/studentIndex.vue'
|
|
|
import MarkdownIt from "markdown-it";
|
|
|
import statisticalAnalysis from '../components/statisticalAnalysis.vue'
|
|
|
import choseWorksDetailDialog from '../components/choseWorksDetailDialog.vue'
|
|
@@ -12562,7 +12616,8 @@ import appStoreC from "../components/appStoreC.vue";
|
|
|
import cocoFlowDia from "../components/cocoFlowDia.vue";
|
|
|
import { myMixin } from "@/mixins/mixin.js"
|
|
|
import { tools as toolsList } from "@/common/tools2.js";
|
|
|
-
|
|
|
+import katex from 'katex'
|
|
|
+import 'katex/dist/katex.min.css'
|
|
|
let converter = OpenCC.Converter({
|
|
|
from: "hk",
|
|
|
to: "cn"
|
|
@@ -12648,10 +12703,12 @@ export default {
|
|
|
statisticalAnalysis,
|
|
|
choseWorksDetailDialog,
|
|
|
appStoreC,
|
|
|
- cocoFlowDia
|
|
|
+ cocoFlowDia,
|
|
|
+ studentClassRoomHelper
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ homeWorkLoading:false,
|
|
|
toolsList: toolsList,
|
|
|
wordCloudKey: 0,
|
|
|
bg: null,
|
|
@@ -13029,7 +13086,8 @@ export default {
|
|
|
behavior:null,
|
|
|
},
|
|
|
confirmOpenDig:false,
|
|
|
- confirmOpenDigData:''
|
|
|
+ confirmOpenDigData:'',
|
|
|
+ diffKey:"1"
|
|
|
};
|
|
|
},
|
|
|
methods: {
|
|
@@ -13548,6 +13606,8 @@ export default {
|
|
|
type: 7,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks", params)
|
|
|
.then((res) => {
|
|
@@ -13556,6 +13616,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'选择匹配',data: JSON.stringify(this.selectAnswer.answer),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.dialogVisibleSelect = false;
|
|
|
// this.selectAnswer = {};
|
|
@@ -13565,6 +13628,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'选择匹配',data: JSON.stringify(this.selectAnswer.answer),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -13621,6 +13688,8 @@ export default {
|
|
|
type: 9,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks", params)
|
|
|
.then((res) => {
|
|
@@ -13629,6 +13698,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'排序',data: JSON.stringify(this.sentenceList),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.dialogVisibleSentence = false;
|
|
|
// this.selectAnswer = {};
|
|
@@ -13638,6 +13710,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'排序',data: JSON.stringify(this.sentenceList),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -13705,6 +13781,8 @@ export default {
|
|
|
type: 10,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks", params)
|
|
|
.then((res) => {
|
|
@@ -13713,6 +13791,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'表格',data:JSON.stringify(this.tableJson),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.dialogVisibleTable = false;
|
|
|
// this.selectAnswer = {};
|
|
@@ -13722,6 +13803,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'表格',data:JSON.stringify(this.tableJson),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -13786,6 +13871,8 @@ export default {
|
|
|
atool: 52,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks3-2", params)
|
|
|
.then((res) => {
|
|
@@ -13794,6 +13881,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'文档',data:JSON.stringify(this.wordJson),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.dialogVisibleWord = false;
|
|
|
// this.selectAnswer = {};
|
|
@@ -13803,6 +13893,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'文档',data:JSON.stringify(this.wordJson),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -13864,6 +13958,8 @@ export default {
|
|
|
type: typesql,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorksR", params)
|
|
|
.then((res) => {
|
|
@@ -13872,6 +13968,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'作业提交',data: this.studyJuri[0].cover[0].url,type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.studyJuri[0].cover = [];
|
|
|
this.dialogVisible = false;
|
|
@@ -13880,6 +13979,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'作业提交',data: this.studyJuri[0].cover[0].url,type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -13907,6 +14010,8 @@ export default {
|
|
|
content: JSON.stringify(_files),
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorksPl", params)
|
|
|
.then((res) => {
|
|
@@ -13915,6 +14020,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'批量上传',data: JSON.stringify(_files),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.plworkFile = [];
|
|
|
this.dialogVisiblePl = false;
|
|
@@ -13923,6 +14031,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'批量上传',data: JSON.stringify(_files),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -13960,6 +14072,8 @@ export default {
|
|
|
text: "",
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks5", params)
|
|
|
.then((res) => {
|
|
@@ -13967,6 +14081,10 @@ export default {
|
|
|
message: "提交成功",
|
|
|
type: "success",
|
|
|
});
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'学生分组',data:JSON.stringify({
|
|
|
type: typesql,
|
|
|
groupIndex: this.groupIndex,
|
|
@@ -13979,6 +14097,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'学生分组',data:JSON.stringify({
|
|
|
type: typesql,
|
|
|
groupIndex: this.groupIndex,
|
|
@@ -14005,6 +14127,8 @@ export default {
|
|
|
text: "",
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks5", params)
|
|
|
.then((res) => {
|
|
@@ -14012,6 +14136,10 @@ export default {
|
|
|
message: "提交成功",
|
|
|
type: "success",
|
|
|
});
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'英语写作',
|
|
|
data: JSON.stringify(this.myAnList),
|
|
|
type: "course_tool_sub" }, "success")
|
|
@@ -14025,6 +14153,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'英语写作',
|
|
|
data: JSON.stringify(this.myAnList),
|
|
|
type: "course_tool_sub" }, err)
|
|
@@ -16958,6 +17090,9 @@ export default {
|
|
|
this.getHomeWork();
|
|
|
this.getCourseDetail(2);
|
|
|
this.$forceUpdate();
|
|
|
+ if (this.courseDetail.userid == this.userid && this.IsFollow) {
|
|
|
+ this.setCTask();
|
|
|
+ }
|
|
|
},
|
|
|
openTask(s, n, i) {
|
|
|
if (this.IsFollow && this.tType == 2) {
|
|
@@ -17067,6 +17202,9 @@ export default {
|
|
|
this.selectPz();
|
|
|
this.getHomeWork();
|
|
|
this.getCourseDetail(2);
|
|
|
+ if (this.courseDetail.userid == this.userid && this.IsFollow) {
|
|
|
+ this.setCTask();
|
|
|
+ }
|
|
|
if(flag){
|
|
|
this.insertMemorandum(`进入<span class="variable">任务${n+1}${this.navList[s].task[n].taskName?':'+this.navList[s].task[n].taskName:''}</span>`)
|
|
|
}else{
|
|
@@ -17104,6 +17242,8 @@ export default {
|
|
|
type: 3,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks", params)
|
|
|
.then((res) => {
|
|
@@ -17112,6 +17252,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'问答',data:JSON.stringify(this.answerList),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.answerList = [];
|
|
|
this.answerDialogVisible = false;
|
|
@@ -17122,6 +17265,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'问答',data:JSON.stringify(this.answerList),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -17595,9 +17742,9 @@ export default {
|
|
|
_this.selectSLook();
|
|
|
_this.getPick();
|
|
|
|
|
|
- if (_this.courseDetail.userid == _this.userid && _this.IsFollow) {
|
|
|
- _this.setCTask();
|
|
|
- }
|
|
|
+ // if (_this.courseDetail.userid == _this.userid && _this.IsFollow) {
|
|
|
+ // _this.setCTask();
|
|
|
+ // }
|
|
|
if (_this.dialogVisibleGroup) {
|
|
|
_this.groupJson =
|
|
|
_this.chapInfoList[_this.courseType].chapterInfo[0].taskJson[
|
|
@@ -17621,9 +17768,9 @@ export default {
|
|
|
_this.selectSLook();
|
|
|
_this.getPick();
|
|
|
// _this.getSplitScreenData();//获取分屏数据
|
|
|
- if (_this.courseDetail.userid == _this.userid && _this.IsFollow) {
|
|
|
- _this.setCTask();
|
|
|
- }
|
|
|
+ // if (_this.courseDetail.userid == _this.userid && _this.IsFollow) {
|
|
|
+ // _this.setCTask();
|
|
|
+ // }
|
|
|
if (_this.dialogVisibleGroup) {
|
|
|
_this.groupJson =
|
|
|
_this.chapInfoList[_this.courseType].chapterInfo[0].taskJson[
|
|
@@ -18333,6 +18480,7 @@ export default {
|
|
|
url = "https://" + url;
|
|
|
}
|
|
|
this.pptImgUrl1 = "";
|
|
|
+ this.diffKey = new Date().getTime();
|
|
|
|
|
|
setTimeout(() => {
|
|
|
this.pptImgUrl1 = url;
|
|
@@ -18348,6 +18496,12 @@ export default {
|
|
|
this.$forceUpdate();
|
|
|
this.insertMemorandum(`查看文件<span class="variable">任务${this.taskCount+1}:${this.vChapterData[this.taskCount][i].name}</span>`)
|
|
|
},
|
|
|
+ checkHtml(f, i){
|
|
|
+ this.showType = 16;
|
|
|
+ this.pptImgUrl1 = f.url;
|
|
|
+ this.isClickNav = i;
|
|
|
+ this.$forceUpdate();
|
|
|
+ },
|
|
|
async downFile(f, i) {
|
|
|
this.isClickNav = "";
|
|
|
this.pptImgUrl1 = "";
|
|
@@ -18402,6 +18556,8 @@ export default {
|
|
|
type: 6,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks", params)
|
|
|
.then((res) => {
|
|
@@ -18410,6 +18566,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'个人评价',data: JSON.stringify(this.eScore),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.eScore = { eBzText: "", eStar: [] };
|
|
|
this.studentEvalDialogVisible = false;
|
|
@@ -18418,6 +18577,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'个人评价',data: JSON.stringify(this.eScore),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -18477,6 +18640,8 @@ export default {
|
|
|
type: 2,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks", params)
|
|
|
.then((res) => {
|
|
@@ -18485,6 +18650,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'问卷调查',data:JSON.stringify(this.askList),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.askList = [];
|
|
|
this.dialogVisible5 = false;
|
|
@@ -18494,6 +18662,9 @@ export default {
|
|
|
})
|
|
|
.catch((err) => {
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'问卷调查',data:JSON.stringify(this.askList),type: "course_tool_sub" }, err)
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
@@ -18569,6 +18740,8 @@ export default {
|
|
|
type: 8,
|
|
|
},
|
|
|
];
|
|
|
+ if (this.homeWorkLoading) return this.$message.info('点击过快,请稍后...')
|
|
|
+ this.homeWorkLoading = true
|
|
|
this.ajax
|
|
|
.post(this.$store.state.api + "addCourseWorks", params)
|
|
|
.then((res) => {
|
|
@@ -18577,6 +18750,9 @@ export default {
|
|
|
type: "success",
|
|
|
});
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'选择题',data:JSON.stringify(this.askList),type: "course_tool_sub" }, "success")
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
|
|
|
this.askList = [];
|
|
|
this.dialogVisibleChoice = false;
|
|
@@ -18587,6 +18763,10 @@ export default {
|
|
|
.catch((err) => {
|
|
|
this.$message.error("提交失败");
|
|
|
console.error(err);
|
|
|
+ setTimeout(() => {
|
|
|
+ this.homeWorkLoading = false
|
|
|
+ }, 500);
|
|
|
+
|
|
|
this.addOp3('1', "", { courseid: this.id,tool:'选择题',data:JSON.stringify(this.askList),type: "course_tool_sub" }, err)
|
|
|
|
|
|
});
|
|
@@ -19727,11 +19907,17 @@ export default {
|
|
|
this.fullDialogVisible = true;
|
|
|
if (t == 6) {
|
|
|
this.fulltype = 1;
|
|
|
+ console.log('checkFileFull1',f);
|
|
|
+
|
|
|
this.fullUrl = JSON.parse(JSON.stringify(f));
|
|
|
+
|
|
|
} else if (t == 8) {
|
|
|
this.fulltype = 2;
|
|
|
this.fullUrl = f.url;
|
|
|
- }else if (t == 15) {
|
|
|
+ } else if (t == 16) {
|
|
|
+ this.fulltype = 16;
|
|
|
+ this.fullUrl = f.url;
|
|
|
+ } else if (t == 15) {
|
|
|
this.fulltype = 4;
|
|
|
this.fullUrl = f.url;
|
|
|
} else if (
|
|
@@ -21023,13 +21209,13 @@ export default {
|
|
|
if (!document.fullscreenElement) {
|
|
|
this.enterFullScreen();
|
|
|
}
|
|
|
- if (this.timer2) {
|
|
|
- clearInterval(this.timer2);
|
|
|
- this.timer2 = null;
|
|
|
- }
|
|
|
- this.timer2 = setInterval(()=> {
|
|
|
- this.getSplitScreenData();//获取分屏数据
|
|
|
- }, 1000);
|
|
|
+ // if (this.timer2) {
|
|
|
+ // clearInterval(this.timer2);
|
|
|
+ // this.timer2 = null;
|
|
|
+ // }
|
|
|
+ // this.timer2 = setInterval(()=> {
|
|
|
+ // this.getSplitScreenData();//获取分屏数据
|
|
|
+ // }, 1000);
|
|
|
|
|
|
this.$message.success("分屏模式已开启");
|
|
|
},
|
|
@@ -21080,13 +21266,13 @@ export default {
|
|
|
this.splitScreenData.uid = "";
|
|
|
this.splitScreenData.behavior = null;
|
|
|
this.$message.error("已结束分屏模式");
|
|
|
- if (this.timer2) {
|
|
|
- clearInterval(this.timer2);
|
|
|
- this.timer2 = null;
|
|
|
- }
|
|
|
- this.timer2 = setInterval(()=> {
|
|
|
- this.getSplitScreenData();//获取分屏数据
|
|
|
- }, 5000);
|
|
|
+ // if (this.timer2) {
|
|
|
+ // clearInterval(this.timer2);
|
|
|
+ // this.timer2 = null;
|
|
|
+ // }
|
|
|
+ // this.timer2 = setInterval(()=> {
|
|
|
+ // this.getSplitScreenData();//获取分屏数据
|
|
|
+ // }, 5000);
|
|
|
this.$confirm("教师已结束分屏,确定后自由预览。", "提示", {
|
|
|
confirmButtonText: '确定', //确认按钮的文字
|
|
|
showCancelButton: false, //是否显示取消按钮
|
|
@@ -21353,6 +21539,16 @@ export default {
|
|
|
this.updateSplitScreenData(1);
|
|
|
},
|
|
|
computed: {
|
|
|
+ renderedFormula() {
|
|
|
+ return function(val){
|
|
|
+ try {
|
|
|
+ return katex.renderToString(val,{ throwOnError: false });
|
|
|
+ } catch (e) {
|
|
|
+ console.error('KaTeX渲染错误:', e);
|
|
|
+ return val;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
isAndroid() {
|
|
|
return /Android/i.test(navigator.userAgent);
|
|
|
},
|
|
@@ -23354,10 +23550,10 @@ export default {
|
|
|
justify-content: center;
|
|
|
}
|
|
|
|
|
|
-.answerBg > div:nth-child(1) {
|
|
|
- /* font-size: 22px;
|
|
|
- padding: 25px 0 10px; */
|
|
|
-}
|
|
|
+/* .answerBg > div:nth-child(1) {
|
|
|
+ font-size: 22px;
|
|
|
+ padding: 25px 0 10px;
|
|
|
+} */
|
|
|
|
|
|
.answerContent {
|
|
|
width: 215px;
|
|
@@ -23526,8 +23722,8 @@ export default {
|
|
|
width: 400px;
|
|
|
}
|
|
|
|
|
|
-.e_add_btn {
|
|
|
-}
|
|
|
+/* .e_add_btn {
|
|
|
+} */
|
|
|
|
|
|
.e_add_content {
|
|
|
display: flex;
|
|
@@ -24123,7 +24319,9 @@ export default {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
}
|
|
|
-
|
|
|
+.tool_right_box >>> .katex {
|
|
|
+ font-size: 16px;
|
|
|
+}
|
|
|
.tool_right_box + .tool_right_box {
|
|
|
margin-top: 10px;
|
|
|
}
|
|
@@ -24919,8 +25117,8 @@ ol {
|
|
|
top: -25px;
|
|
|
}
|
|
|
|
|
|
-.group_workBox {
|
|
|
-}
|
|
|
+/* .group_workBox {
|
|
|
+} */
|
|
|
|
|
|
.group_workBox + .group_workBox {
|
|
|
margin-top: 20px;
|
|
@@ -25043,8 +25241,8 @@ ol {
|
|
|
border-radius: 5px;
|
|
|
}
|
|
|
|
|
|
-.groupBox {
|
|
|
-}
|
|
|
+/* .groupBox {
|
|
|
+} */
|
|
|
|
|
|
.groupContent + .groupContent {
|
|
|
margin-top: 30px;
|
|
@@ -25410,11 +25608,11 @@ ol {
|
|
|
overflow: hidden;
|
|
|
transition: all 0.5s;
|
|
|
}
|
|
|
-.toolChild {
|
|
|
+/* .toolChild { */
|
|
|
/* margin: 0 0 0 17px;
|
|
|
padding: 0 0 0 20px;
|
|
|
border-left: 1px solid #d7d7d7; */
|
|
|
-}
|
|
|
+/* } */
|
|
|
|
|
|
.toolChild > div + div{
|
|
|
margin-top:5px;
|