|
@@ -26,7 +26,10 @@
|
|
|
@click="$refs.batchPop.openBoxs(tableData, businObj, 2)"
|
|
|
type="success"
|
|
|
>Word批量导入</el-button
|
|
|
- ><el-button size="medium" @click="$refs.batchPop.openBoxs(tableData, businObj, 1)" type="success"
|
|
|
+ ><el-button
|
|
|
+ size="medium"
|
|
|
+ @click="$refs.batchPop.openBoxs(tableData, businObj, 1)"
|
|
|
+ type="success"
|
|
|
>Excel批量导入</el-button
|
|
|
><el-button size="medium" @click="delAll" type="danger"
|
|
|
>批量删除</el-button
|
|
@@ -342,7 +345,7 @@
|
|
|
</el-dialog>
|
|
|
<el-dialog
|
|
|
:visible.sync="diansBoxStatus"
|
|
|
- width="960px"
|
|
|
+ width="1000px"
|
|
|
:show-close="false"
|
|
|
:close-on-click-modal="false"
|
|
|
>
|
|
@@ -357,63 +360,64 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <div class="dis_fos">
|
|
|
- <div>
|
|
|
- <div class="margin_bs">当前总分:{{ getAllpocis }}</div>
|
|
|
- <div class="margin_bs" v-if="examsType === 2">
|
|
|
- 及格分数:<el-input-number
|
|
|
- style="margin: 0px 6px; width: 100px !important"
|
|
|
- v-model="passScore"
|
|
|
- controls-position="right"
|
|
|
- :min="0"
|
|
|
- size="mini"
|
|
|
- ></el-input-number>
|
|
|
- </div>
|
|
|
- <div class="margin_bs" v-if="examsType === 2">
|
|
|
- 答卷时长:
|
|
|
- <el-radio-group v-model="djTimeType">
|
|
|
- <el-radio :label="0">无限时长</el-radio>
|
|
|
- <el-radio :label="1">有限时长</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- <el-input-number
|
|
|
- v-if="djTimeType === 1"
|
|
|
- style="margin: 0px 6px; width: 100px !important"
|
|
|
- v-model="djTime"
|
|
|
- controls-position="right"
|
|
|
- :min="1"
|
|
|
- size="mini"
|
|
|
- ></el-input-number
|
|
|
- ><span v-if="djTimeType === 1">分钟</span>
|
|
|
- </div>
|
|
|
- <div class="margin_bs">
|
|
|
- 答卷次数:
|
|
|
- <el-radio-group v-model="djNumType">
|
|
|
- <el-radio :label="0">无限次</el-radio>
|
|
|
- <el-radio :label="1">有限次</el-radio>
|
|
|
- </el-radio-group>
|
|
|
- <el-input-number
|
|
|
- v-if="djNumType === 1"
|
|
|
- style="margin: 0px 6px; width: 100px !important"
|
|
|
- v-model="djNum"
|
|
|
- controls-position="right"
|
|
|
- :min="1"
|
|
|
- size="mini"
|
|
|
- ></el-input-number>
|
|
|
- </div>
|
|
|
- <div class="margin_bs">
|
|
|
+ <div>
|
|
|
+ <div class="margin_bs">当前总分:{{ getAllpocis }}</div>
|
|
|
+ <div class="margin_bs" v-if="examsType === 2">
|
|
|
+ 及格分数:<el-input-number
|
|
|
+ style="margin: 0px 6px; width: 100px !important"
|
|
|
+ v-model="passScore"
|
|
|
+ controls-position="right"
|
|
|
+ :min="0"
|
|
|
+ size="mini"
|
|
|
+ ></el-input-number>
|
|
|
+ </div>
|
|
|
+ <Paper-sort ref="papersort" v-if="examsType == 2"></Paper-sort>
|
|
|
+ <div class="margin_bs" v-if="examsType === 2">
|
|
|
+ 答卷时长:
|
|
|
+ <el-radio-group v-model="djTimeType">
|
|
|
+ <el-radio :label="0">无限时长</el-radio>
|
|
|
+ <el-radio :label="1">有限时长</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ <el-input-number
|
|
|
+ v-if="djTimeType === 1"
|
|
|
+ style="margin: 0px 6px; width: 100px !important"
|
|
|
+ v-model="djTime"
|
|
|
+ controls-position="right"
|
|
|
+ :min="1"
|
|
|
+ size="mini"
|
|
|
+ ></el-input-number
|
|
|
+ ><span v-if="djTimeType === 1">分钟</span>
|
|
|
+ </div>
|
|
|
+ <div class="margin_bs">
|
|
|
+ 答卷次数:
|
|
|
+ <el-radio-group v-model="djNumType">
|
|
|
+ <el-radio :label="0">无限次</el-radio>
|
|
|
+ <el-radio :label="1">有限次</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ <el-input-number
|
|
|
+ v-if="djNumType === 1"
|
|
|
+ style="margin: 0px 6px; width: 100px !important"
|
|
|
+ v-model="djNum"
|
|
|
+ controls-position="right"
|
|
|
+ :min="1"
|
|
|
+ size="mini"
|
|
|
+ ></el-input-number>
|
|
|
+ </div>
|
|
|
+ <div class="margin_bs dis_fos">
|
|
|
+ <div>
|
|
|
做题类型:
|
|
|
<el-radio-group v-model="examsType">
|
|
|
<el-radio :label="1">练习</el-radio>
|
|
|
<el-radio :label="2">考试</el-radio>
|
|
|
</el-radio-group>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- <div class="margin_bs">
|
|
|
- <el-button size="mini" @click="activeOpens"
|
|
|
- >按选中设置分数</el-button
|
|
|
- ><el-button size="mini" @click="activePicis"
|
|
|
- >按题型设置分数</el-button
|
|
|
- >
|
|
|
+ <div class="margin_bs">
|
|
|
+ <el-button size="mini" @click="activeOpens"
|
|
|
+ >按选中设置分数</el-button
|
|
|
+ ><el-button size="mini" @click="activePicis"
|
|
|
+ >按题型设置分数</el-button
|
|
|
+ >
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<el-table
|
|
@@ -675,6 +679,7 @@ import tableList from "@/components/tableList";
|
|
|
import busIns from "@/components/busIns";
|
|
|
import questionBank from "@/components/questionBank";
|
|
|
import BatchImportPop from "../../BatchImportPop.vue";
|
|
|
+import PaperSort from "../../PaperSort.vue";
|
|
|
export default {
|
|
|
name: "TopicAddPaper",
|
|
|
components: {
|
|
@@ -684,6 +689,7 @@ export default {
|
|
|
busIns,
|
|
|
questionBank,
|
|
|
BatchImportPop,
|
|
|
+ PaperSort,
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
@@ -746,12 +752,12 @@ export default {
|
|
|
prop: "type",
|
|
|
hidden: true,
|
|
|
scope: "topic",
|
|
|
- width:"140px"
|
|
|
+ width: "140px",
|
|
|
},
|
|
|
{
|
|
|
label: "标题前缀",
|
|
|
prop: "prefixName",
|
|
|
- hidden: false,
|
|
|
+ hidden: true,
|
|
|
},
|
|
|
{
|
|
|
label: "题目详细",
|
|
@@ -775,7 +781,7 @@ export default {
|
|
|
prop: "publishStatus",
|
|
|
hidden: true,
|
|
|
scope: "fabStatus",
|
|
|
- width:"140px"
|
|
|
+ width: "140px",
|
|
|
},
|
|
|
],
|
|
|
tableData: [],
|
|
@@ -951,6 +957,7 @@ export default {
|
|
|
localStart: false, //定时器是否已经开始
|
|
|
pageId: "", //试卷ID
|
|
|
uploadStatus: false, //是否同步预览
|
|
|
+ simulateConfigJson: '', //随机抽题目分组排序
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
@@ -1078,7 +1085,7 @@ export default {
|
|
|
this.tableData = this.tableData.filter((item) => {
|
|
|
return !dataIndedx.includes(item.index);
|
|
|
});
|
|
|
- this.$refs.tableList.clearMoreActive()
|
|
|
+ this.$refs.tableList.clearMoreActive();
|
|
|
this.$message({
|
|
|
type: "success",
|
|
|
message: "删除成功!",
|
|
@@ -1092,6 +1099,7 @@ export default {
|
|
|
},
|
|
|
getInfos() {
|
|
|
this.$api.obtainbankexam(this.$route.query.id).then((res) => {
|
|
|
+ console.log(res, "res");
|
|
|
this.businObj = {
|
|
|
businessId: res.data.businessId,
|
|
|
businessName: res.data.businessName,
|
|
@@ -1106,6 +1114,7 @@ export default {
|
|
|
this.djNum = res.data.answerNum;
|
|
|
this.examsType = res.data.doType;
|
|
|
this.passScore = res.data.passScore;
|
|
|
+ this.simulateConfigJson = res.data.simulateConfigJson || '';
|
|
|
});
|
|
|
},
|
|
|
// --------------------------分割线---------------------------
|
|
@@ -1146,10 +1155,11 @@ export default {
|
|
|
return item.index === v.index;
|
|
|
});
|
|
|
this.tableData.splice(index, 1);
|
|
|
- if(this.$refs.tableList.allCheckData.length){
|
|
|
- this.$refs.tableList.allCheckData = this.$refs.tableList.allCheckData.filter(item => {
|
|
|
- return item.index !== v.index
|
|
|
- })
|
|
|
+ if (this.$refs.tableList.allCheckData.length) {
|
|
|
+ this.$refs.tableList.allCheckData =
|
|
|
+ this.$refs.tableList.allCheckData.filter((item) => {
|
|
|
+ return item.index !== v.index;
|
|
|
+ });
|
|
|
}
|
|
|
})
|
|
|
.catch(() => {
|
|
@@ -1677,7 +1687,7 @@ export default {
|
|
|
}
|
|
|
this.disabledBtn = true;
|
|
|
var arrs = [];
|
|
|
- for (let i = this.tableData.length-1; i >= 0; i--) {
|
|
|
+ for (let i = this.tableData.length - 1; i >= 0; i--) {
|
|
|
if (self.tableData[i].questionId) {
|
|
|
await self.uploadApis(self.tableData[i]);
|
|
|
} else {
|
|
@@ -1690,13 +1700,15 @@ export default {
|
|
|
score: self.tableData[i].score,
|
|
|
partScore: self.tableData[i].partScore,
|
|
|
});
|
|
|
- }
|
|
|
+ }
|
|
|
var data = {
|
|
|
examId: this.$route.query.id,
|
|
|
questionList: arrs,
|
|
|
status: 1,
|
|
|
passScore: this.passScore,
|
|
|
doType: this.examsType,
|
|
|
+ simulateConfigJson:
|
|
|
+ this.examsType === 2 ? this.$refs["papersort"].form : null,
|
|
|
};
|
|
|
if (this.djTimeType === 0) {
|
|
|
data.answerTime = 0;
|