|
@@ -10,10 +10,16 @@
|
|
|
</div>
|
|
|
|
|
|
<div class="part-box part-box-pad">
|
|
|
- <p class="tips-info mb-1">
|
|
|
- <i class="el-icon-warning"></i> 客观题标答只能输入大写字母ABCDE...
|
|
|
- ,判断题正确请输入A,错误输入B
|
|
|
- </p>
|
|
|
+ <div class="box-justify mb-1">
|
|
|
+ <p class="tips-info">
|
|
|
+ <i class="el-icon-warning"></i> 客观题标答只能输入大写字母ABCDE...
|
|
|
+ ,判断题正确请输入A,错误输入B
|
|
|
+ </p>
|
|
|
+
|
|
|
+ <div>
|
|
|
+ <el-button type="primary" @click="toImport">导入标答</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
<el-table
|
|
|
ref="TableList"
|
|
|
:data="tableData"
|
|
@@ -151,6 +157,22 @@
|
|
|
>
|
|
|
<el-button @click="cancel">取消</el-button>
|
|
|
</div>
|
|
|
+
|
|
|
+ <!-- ImportFile -->
|
|
|
+ <import-file
|
|
|
+ ref="ImportFile"
|
|
|
+ title="导入客观题标答"
|
|
|
+ :upload-url="uploadUrl"
|
|
|
+ :format="['xls', 'xlsx']"
|
|
|
+ :upload-data="{
|
|
|
+ examId: basicInfo.examId,
|
|
|
+ paperNumber: basicInfo.paperNumber,
|
|
|
+ }"
|
|
|
+ :download-handle="downloadHandle"
|
|
|
+ :download-filename="dfilename"
|
|
|
+ :auto-upload="false"
|
|
|
+ @upload-success="initData"
|
|
|
+ ></import-file>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -159,12 +181,17 @@ import { QUESTION_SCORE_TYPE } from "@/constants/enumerate";
|
|
|
import {
|
|
|
markObjectiveQuestionList,
|
|
|
markObjectiveQuestionSave,
|
|
|
+ markObjectiveQuestionExport,
|
|
|
} from "../../api";
|
|
|
+import ImportFile from "@/components/ImportFile.vue";
|
|
|
+import { downloadByApi } from "@/plugins/download";
|
|
|
+
|
|
|
import { mapState } from "vuex";
|
|
|
import { omit } from "lodash";
|
|
|
|
|
|
export default {
|
|
|
name: "mark-param-objective-answer",
|
|
|
+ components: { ImportFile },
|
|
|
data() {
|
|
|
return {
|
|
|
loading: false,
|
|
@@ -175,6 +202,10 @@ export default {
|
|
|
NONE: "全对给分",
|
|
|
ALL: "任选给分",
|
|
|
},
|
|
|
+ // import
|
|
|
+ uploadUrl: "/api/admin/mark/question/objective/import",
|
|
|
+ dfilename: "客观题标答导入模板.xlsx",
|
|
|
+ downloading: false,
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
@@ -343,6 +374,27 @@ export default {
|
|
|
cancel() {
|
|
|
this.$emit("cancel");
|
|
|
},
|
|
|
+ // toImport
|
|
|
+ async downloadHandle() {
|
|
|
+ if (this.downloading) return;
|
|
|
+ this.downloading = true;
|
|
|
+
|
|
|
+ const res = await downloadByApi(() => {
|
|
|
+ return markObjectiveQuestionExport({
|
|
|
+ examId: this.basicInfo.examId,
|
|
|
+ paperNumber: this.basicInfo.paperNumber,
|
|
|
+ });
|
|
|
+ }).catch((e) => {
|
|
|
+ this.$message.error(e || "下载失败,请重新尝试!");
|
|
|
+ });
|
|
|
+ this.downloading = false;
|
|
|
+
|
|
|
+ if (!res) return;
|
|
|
+ this.$message.success("下载成功!");
|
|
|
+ },
|
|
|
+ toImport() {
|
|
|
+ this.$refs.ImportFile.open();
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
</script>
|