|
@@ -931,7 +931,7 @@
|
|
|
openTools(itemTaskIndex, 41, toolIndex)
|
|
|
">
|
|
|
<img src="../../../assets/icon/thirdToolList/select.png" alt />
|
|
|
- <div style="margin: 5px 0">选择填空</div>
|
|
|
+ <div style="margin: 5px 0">选择匹配</div>
|
|
|
</div>
|
|
|
<div class="check" @click="
|
|
|
addTools(41, itemTaskIndex, toolIndex)
|
|
@@ -948,7 +948,7 @@
|
|
|
openTools(itemTaskIndex, 47, toolIndex)
|
|
|
">
|
|
|
<img src="../../../assets/icon/fourthToolList/conSentences.png" alt />
|
|
|
- <div style="margin: 5px 0">连词成句</div>
|
|
|
+ <div style="margin: 5px 0">排序</div>
|
|
|
</div>
|
|
|
<div class="check" @click="
|
|
|
addTools(47, itemTaskIndex, toolIndex)
|
|
@@ -2595,7 +2595,7 @@
|
|
|
<div class="tool">
|
|
|
<div class="whiteBIcon" @click="openTools(itemTaskIndex, 41, toolIndex)">
|
|
|
<img src="../../../assets/icon/thirdToolList/select.png" alt />
|
|
|
- <div style="margin: 5px 0">选择填空</div>
|
|
|
+ <div style="margin: 5px 0">选择匹配</div>
|
|
|
</div>
|
|
|
<div class="check" @click="addTools(41, itemTaskIndex, toolIndex)">
|
|
|
<img src="../../../assets/icon/checkNo.png" alt v-if="itemTool.tool.indexOf(41) == -1" />
|
|
@@ -2607,7 +2607,7 @@
|
|
|
<div class="tool">
|
|
|
<div class="whiteBIcon" @click="openTools(itemTaskIndex, 47, toolIndex)">
|
|
|
<img src="../../../assets/icon/fourthToolList/conSentences.png" alt />
|
|
|
- <div style="margin: 5px 0">连词成句</div>
|
|
|
+ <div style="margin: 5px 0">排序</div>
|
|
|
</div>
|
|
|
<div class="check" @click="addTools(47, itemTaskIndex, toolIndex)">
|
|
|
<img src="../../../assets/icon/checkNo.png" alt v-if="itemTool.tool.indexOf(47) == -1" />
|
|
@@ -3039,7 +3039,7 @@
|
|
|
<div class="tool">
|
|
|
<div class="whiteBIcon" @click="openTools(itemTaskIndex, 41, toolIndex)">
|
|
|
<img src="../../../assets/icon/thirdToolList/select.png" alt />
|
|
|
- <div style="margin: 5px 0">选择填空</div>
|
|
|
+ <div style="margin: 5px 0">选择匹配</div>
|
|
|
</div>
|
|
|
<div class="check" @click="addTools(41, itemTaskIndex, toolIndex)">
|
|
|
<img src="../../../assets/icon/checkNo.png" alt v-if="itemTool.tool.indexOf(41) == -1" />
|
|
@@ -3051,7 +3051,7 @@
|
|
|
<div class="tool">
|
|
|
<div class="whiteBIcon" @click="openTools(itemTaskIndex, 47, toolIndex)">
|
|
|
<img src="../../../assets/icon/fourthToolList/conSentences.png" alt />
|
|
|
- <div style="margin: 5px 0">连词成句</div>
|
|
|
+ <div style="margin: 5px 0">排序</div>
|
|
|
</div>
|
|
|
<div class="check" @click="addTools(47, itemTaskIndex, toolIndex)">
|
|
|
<img src="../../../assets/icon/checkNo.png" alt v-if="itemTool.tool.indexOf(47) == -1" />
|
|
@@ -3964,13 +3964,13 @@
|
|
|
<el-button type="primary">确 定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
|
- <el-dialog title="选择填空" :visible.sync="dialogVisibleSelect" :append-to-body="true" width="800px"
|
|
|
+ <el-dialog title="选择匹配" :visible.sync="dialogVisibleSelect" :append-to-body="true" width="800px"
|
|
|
:before-close="handleClose" class="dialog_diy dialog_diy3">
|
|
|
<div v-if="selectJson">
|
|
|
<div class="select_box1" v-if="selectSteps == 1">
|
|
|
<div class="select_box1_img">
|
|
|
<div class="select_box1_title">
|
|
|
- <span>上传题目图片</span><span>提示:请将题目以图片的方式上传</span>
|
|
|
+ <span>上传题目图片</span><span>提示:请将所有题目上传为一张图片。</span>
|
|
|
</div>
|
|
|
<div class="select_box1_add_img">
|
|
|
<div class="uploadFm" @click="addImg($event)" v-if="!selectJson.url">
|
|
@@ -3978,7 +3978,7 @@
|
|
|
<img src="../../../assets/icon/addPoster.png" alt="" />
|
|
|
</div>
|
|
|
<div class="isSysPic" v-else>
|
|
|
- <img :src="selectJson.url" alt="" />
|
|
|
+ <img :src="selectJson.url" alt="" @click="previewImg(selectJson.url)"/>
|
|
|
<div class="deletePic" @click="deleteSelectPic">
|
|
|
<img src="../../../assets/icon/delete.png" alt="" />
|
|
|
</div>
|
|
@@ -3987,7 +3987,7 @@
|
|
|
</div>
|
|
|
<div class="select_box1_select">
|
|
|
<div class="select_box1_title">
|
|
|
- <span>添加选项</span><span>提示:请输入题目选项</span>
|
|
|
+ <span>添加选项</span><span>提示:请输入以上题目的选项内容,此选项为所有题目共享。</span>
|
|
|
</div>
|
|
|
<div class="select_box1_select_box">
|
|
|
<el-input v-for="(item2, checkIndex) in selectJson.select" :key="checkIndex"
|
|
@@ -4004,10 +4004,10 @@
|
|
|
</div>
|
|
|
<div v-if="selectSteps == 2">
|
|
|
<div class="select_box2">
|
|
|
- <div class="select_box2_title">设置答案</div>
|
|
|
+ <div class="select_box2_title">设置每道题目的正确选项</div>
|
|
|
<div class="select_box2_box">
|
|
|
<div class="select_box2_img">
|
|
|
- <img :src="selectJson.url" alt="" />
|
|
|
+ <img :src="selectJson.url" alt="" @click="previewImg(selectJson.url)"/>
|
|
|
</div>
|
|
|
<div class="select_box2_answer">
|
|
|
<div class="select_answer_title">根据题目选择对应答案</div>
|
|
@@ -4067,9 +4067,9 @@
|
|
|
<div>
|
|
|
<div class="sentenBox">
|
|
|
<div class="addSen" @click="addSt">添加题目</div>
|
|
|
- <div v-for="(st, stIndex) in sentenceList" :key="stIndex" style="padding-bottom: 20px">
|
|
|
+ <div v-for="(st, stIndex) in sentenceList" :key="stIndex" class="sentenContent">
|
|
|
<div class="sentenTopBox">
|
|
|
- <div class="sentenTop">
|
|
|
+ <div class="sentenTop" :index="stIndex+1">
|
|
|
<div>题目设置</div>
|
|
|
<div>
|
|
|
<el-input placeholder="请输入卡片内容" v-model="st.sentenceTitle"></el-input>
|
|
@@ -4256,7 +4256,7 @@
|
|
|
<span class="groupn">第{{ index + 1 }}组名称:</span>
|
|
|
<el-input v-model="item.name" placeholder="请输入名称..." style="width: 250px"></el-input>
|
|
|
<div class="groupBtn">
|
|
|
- <el-button type="primary" size="small" @click="addGroup(index)">
|
|
|
+ <el-button type="primary" size="small" @click="addGroup(index)" v-if="groupJson.group.length - 1 == index">
|
|
|
添加</el-button>
|
|
|
<el-button type="primary" size="small" @click="deleteGroup(index)"
|
|
|
v-if="groupJson.group && groupJson.group.length > 1">删除</el-button>
|
|
@@ -4988,7 +4988,6 @@ export default {
|
|
|
},
|
|
|
deleteSentence(i) {
|
|
|
var _this = this;
|
|
|
- if (_this.time()) {
|
|
|
_this
|
|
|
.$confirm("确定删除此题目吗?", "提示", {
|
|
|
confirmButtonText: "确定",
|
|
@@ -5002,7 +5001,6 @@ export default {
|
|
|
.catch(() => {
|
|
|
return;
|
|
|
});
|
|
|
- }
|
|
|
},
|
|
|
deleteS(s, i, j) {
|
|
|
this.sentenceList[i].addSentence.splice(j, 1);
|
|
@@ -7684,9 +7682,9 @@ export default {
|
|
|
}
|
|
|
if (
|
|
|
(aj[i].type == "2" && !aj[i].answer.length) ||
|
|
|
- (aj[i].type == "1" && aj[i].answer !== 0 && !aj[i].answer)
|
|
|
+ (aj[i].type == "1" && ((typeof aj[i].answer == 'object' && !aj[i].answer.length) || (aj[i].answer !== 0 && !aj[i].answer)))
|
|
|
) {
|
|
|
- this.$message.error("有题目未选择答案请选择答案");
|
|
|
+ this.$message.error(`题目${i+1},未设置正确选项,请设置。`);
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
@@ -7994,6 +7992,17 @@ export default {
|
|
|
if (!this.selectJson.select.length) {
|
|
|
this.$message.error("请添加选项");
|
|
|
return;
|
|
|
+ }else{
|
|
|
+ for (var z = 0; z < this.selectJson.select.length; z++) {
|
|
|
+ let checkC = this.selectJson.select[z];
|
|
|
+ for (var z2 = z+1; z2 < this.selectJson.select.length; z2++) {
|
|
|
+ let checkC2 = this.selectJson.select[z2];
|
|
|
+ if (checkC == checkC2) {
|
|
|
+ this.$message.error(`选项${z+1}和选项${z2+1}重复了,请修改!`);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
var a = 1;
|
|
|
for (var i = 0; i < this.selectJson.select.length; i++) {
|
|
@@ -8750,6 +8759,14 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
addSen(i) {
|
|
|
+ if(!this.sentenceList[i].sentenceTitle){
|
|
|
+ this.$message.error("请填写卡片内容!");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ if(this.sentenceList[i].addSentence.indexOf(this.sentenceList[i].sentenceTitle) !== -1){
|
|
|
+ this.$message.error("不能添加重复的卡片内容!");
|
|
|
+ return;
|
|
|
+ }
|
|
|
this.sentenceList[i].addSentence.push(this.sentenceList[i].sentenceTitle);
|
|
|
// this.isPushTitleList.push(this.sentenceTitle);
|
|
|
this.sentenceList[i].sentenceTitle = "";
|
|
@@ -11971,6 +11988,16 @@ ol {
|
|
|
background-size: 60%;
|
|
|
}
|
|
|
|
|
|
+.sentenBox > .sentenContent{
|
|
|
+ padding-bottom: 10px;
|
|
|
+ width: 97%;
|
|
|
+ margin: 0 auto;
|
|
|
+}
|
|
|
+
|
|
|
+.sentenBox > .sentenContent + .sentenContent{
|
|
|
+ border-top: 1px solid #cbcbcb;
|
|
|
+}
|
|
|
+
|
|
|
.addSen {
|
|
|
background: #409efe;
|
|
|
width: 90px;
|
|
@@ -11990,7 +12017,19 @@ ol {
|
|
|
flex-wrap: nowrap;
|
|
|
align-items: center;
|
|
|
}
|
|
|
-
|
|
|
+.sentenTop::before{
|
|
|
+ content:attr(index);
|
|
|
+ background: #3681fc;
|
|
|
+ border-radius: 50%;
|
|
|
+ color: #fff;
|
|
|
+ width: 25px;
|
|
|
+ height: 25px;
|
|
|
+ min-width: 25px;
|
|
|
+ min-height: 25px;
|
|
|
+ text-align: center;
|
|
|
+ line-height: 25px;
|
|
|
+ margin-right: 5px;
|
|
|
+}
|
|
|
.sentenTop>div:nth-child(2) {
|
|
|
width: 300px;
|
|
|
margin: 0 15px;
|
|
@@ -12008,7 +12047,7 @@ ol {
|
|
|
}
|
|
|
|
|
|
.cardList {
|
|
|
- padding: 30px 0 20px 0;
|
|
|
+ padding: 20px 0 20px 0;
|
|
|
display: flex;
|
|
|
flex-direction: row;
|
|
|
flex-wrap: wrap;
|
|
@@ -12430,4 +12469,16 @@ ol {
|
|
|
width: fit-content;
|
|
|
margin: 0 10px 0 10px;
|
|
|
}
|
|
|
+
|
|
|
+.moveBtn2 .chapter_upload_down,
|
|
|
+.moveBtn2 .chapter_upload_up{
|
|
|
+ width: 16px;
|
|
|
+ height: 16px;
|
|
|
+}
|
|
|
+
|
|
|
+.moveBtn2 .chapter_upload_up::after,
|
|
|
+.moveBtn2 .chapter_upload_down::after{
|
|
|
+ width: 10px;
|
|
|
+ height: 10px;
|
|
|
+}
|
|
|
</style>
|