From b2ab6a12f2718ecedd933e5a8f9171a6efd73012 Mon Sep 17 00:00:00 2001
From: fuliqi <fuliqi@qq.com>
Date: 星期五, 07 六月 2024 15:54:42 +0800
Subject: [PATCH] 模板试卷增删改查
---
src/views/Manage/TestPaper/index.vue | 52 +++++++++++++++++++------
src/views/Manage/TestPaper/PaperTemplate.vue | 37 +++++++++++++-----
src/api/examPaper.js | 2
3 files changed, 67 insertions(+), 24 deletions(-)
diff --git a/src/api/examPaper.js b/src/api/examPaper.js
index 58a62ef..787676a 100644
--- a/src/api/examPaper.js
+++ b/src/api/examPaper.js
@@ -2,7 +2,7 @@
export default {
pageList: query => post('/api/admin/exam/paper/page', query),
- taskExamPage: query => post('/api/admin/exam/paper/taskExamPage', query),
+ addPaper: query => post('/api/admin/exam/paper/addPaper', query),
edit: query => post('/api/admin/exam/paper/edit', query),
select: id => post('/api/admin/exam/paper/select/' + id),
deletePaper: id => post('/api/admin/exam/paper/delete/' + id)
diff --git a/src/views/Manage/TestPaper/PaperTemplate.vue b/src/views/Manage/TestPaper/PaperTemplate.vue
index 14337bf..14d8482 100644
--- a/src/views/Manage/TestPaper/PaperTemplate.vue
+++ b/src/views/Manage/TestPaper/PaperTemplate.vue
@@ -88,8 +88,8 @@
>
<template slot-scope="scope">
<el-button type="text">棰勮</el-button>
- <el-button type="text">缂栬緫</el-button>
- <el-button type="text" @click="deletePaper(scope.row)" class="link-left">鍒犻櫎</el-button>
+ <el-button type="text" @click="handleUpdate(scope.row)">缂栬緫</el-button>
+ <el-button type="text" @click="deleteTemplate(scope.row)" class="link-left">鍒犻櫎</el-button>
</template>
</el-table-column>
</el-table>
@@ -124,8 +124,8 @@
<el-input-number v-model="form.suggestTime" placeholder="璇疯緭鍏ヨ�冭瘯鏃堕暱"/>
</el-form-item>
<el-form-item label="鏉冮檺" prop="visibility">
- <el-radio v-model="form.visibility" :label="1">绉佹湁</el-radio>
- <el-radio v-model="form.visibility" :label="2">鍏紑</el-radio>
+ <el-radio v-model="form.visibility" :label="'1'">绉佹湁</el-radio>
+ <el-radio v-model="form.visibility" :label="'2'">鍏紑</el-radio>
</el-form-item>
<el-form-item label="澶氶�夐寰楀垎绫诲瀷" prop="deductType" v-show="addedQuestionTypes.includes(2)"><!-- 鏈夊閫夋墠鍑虹幇 -->
<div>
@@ -137,7 +137,7 @@
:value="item.value"
/>
</el-select>
- <el-input-number v-model="form.score" placeholder="璇疯緭鍏ュ閫夊緱鍒嗗垎鏁�"
+ <el-input-number v-model="form.deductTypeScore" placeholder="璇疯緭鍏ュ閫夎瘎鍒�"
v-show="form.deductType === 2 || form.deductType === 3"/>
</div>
</el-form-item>
@@ -233,6 +233,7 @@
} from '@/api/examTemplate'
import subjectApi from '@/api/subject'
import Pagination from "@/components/Pagination"
+import question from "../../../api/question";
export default {
components: {Pagination},
@@ -400,6 +401,8 @@
name: null,
subjectId: null,
suggestTime: null,
+ deductType: null,
+ deductTypeScore: null,
visibility: 1
};
this.addedQuestionTypes = []
@@ -420,6 +423,7 @@
//鏂板妯℃澘
addTemplate() {
this.reset();
+ this.questionReset();
this.title = "鏂板妯℃澘"
this.open = true;
},
@@ -429,15 +433,28 @@
this.questionTitle = "娣诲姞棰樼洰"
this.questionOpen = true;
},
- deletePaper(row) {
+ //鍒犻櫎妯℃澘
+ deleteTemplate(row) {
deleteExamTemplateById(row.id).then(re => {
- if (re.code === 1) {
+ if (re.data.code === 1) {
this.getPage()
this.$message.success("鍒犻櫎鎴愬姛")
} else {
- this.$message.error(re.message)
+ this.$message.error(re.data.message)
}
})
+ },
+ //缂栬緫妯℃澘
+ handleUpdate(row) {
+ this.reset();
+ this.questionReset();
+ this.form = row;
+ this.questionList = row.questionList;
+ if (this.questionList && this.questionList.length > 0) {
+ this.addedQuestionTypes = this.questionList.map(question => question.questionType);
+ }
+ this.title="缂栬緫妯℃澘"
+ this.open = true;
},
getPage() {
this.listLoading = true
@@ -488,13 +505,13 @@
temp.questionList = this.questionList
if (temp.id != null) {
editExamTemplate(temp).then(response => {
- this.$message("淇敼鎴愬姛");
+ this.$message.success("淇敼鎴愬姛");
this.open = false;
this.getPage();
});
} else {
addExamTemplate(temp).then(response => {
- this.$message("鏂板鎴愬姛");
+ this.$message.success("鏂板鎴愬姛");
this.open = false;
this.reset()
this.getPage();
diff --git a/src/views/Manage/TestPaper/index.vue b/src/views/Manage/TestPaper/index.vue
index 2678e79..7af48ad 100644
--- a/src/views/Manage/TestPaper/index.vue
+++ b/src/views/Manage/TestPaper/index.vue
@@ -121,7 +121,7 @@
>
<template slot-scope="scope">
<el-button type="text">棰勮</el-button>
- <el-button type="text">缂栬緫</el-button>
+ <el-button type="text" @click="handleUpdate(scope.row)">缂栬緫</el-button>
<el-button type="text" @click="deletePaper(scope.row)" class="link-left">鍒犻櫎</el-button>
</template>
</el-table-column>
@@ -154,12 +154,30 @@
</el-form-item>
<el-form-item label="璇曞嵎绫诲瀷" prop="paperType">
<el-select v-model="form.paperType" placeholder="璇烽�夋嫨璇曞嵎绫诲瀷" style="width: 200px">
- <el-option label="鍥哄畾璇曞嵎" value="1" />
- <el-option label="闅忓簭璇曞嵎" value="3" />
+ <el-option label="鍥哄畾璇曞嵎" :value= "1" />
+ <el-option label="闅忓簭璇曞嵎" :value= "3" />
</el-select>
+ </el-form-item>
+ <el-form-item label="澶氶�夐寰楀垎绫诲瀷" prop="deductType">
+ <div>
+ <el-select v-model="form.deductType" placeholder="璇烽�夋嫨澶氶�夐寰楀垎绫诲瀷" style="width: 200px;margin-right: 30px">
+ <el-option
+ v-for="item in deductTypeList"
+ :key="item.value"
+ :label="item.name"
+ :value="item.value"
+ />
+ </el-select>
+ <el-input-number v-model="form.deductTypeScore" placeholder="璇疯緭鍏ュ閫夎瘎鍒�"
+ v-show="form.deductType === 2 || form.deductType === 3"/>
+ </div>
</el-form-item>
<el-form-item label="鑰冭瘯鏃堕暱(鍒嗛挓)" prop="suggestTime">
<el-input-number v-model="form.suggestTime" placeholder="璇疯緭鍏ヨ�冭瘯鏃堕暱"/>
+ </el-form-item>
+ <el-form-item label="鏉冮檺" prop="visibility">
+ <el-radio v-model="form.visibility" :label="'1'">绉佹湁</el-radio>
+ <el-radio v-model="form.visibility" :label="'2'">鍏紑</el-radio>
</el-form-item>
<el-button type="primary" @click="toCreate">缂栬緫棰樼洰</el-button>
</el-form>
@@ -196,6 +214,11 @@
pageIndex: 1,
pageSize: 10
},
+ deductTypeList: [
+ {name: '绛旈敊涓嶅緱鍒�', value: 1},
+ {name: '婕忛�夊緱鍥哄畾鍒嗗��,鍖呭惈閿欒閫夐」涓嶅緱鍒�', value: 2},
+ {name: '姣忓涓�棰樺緱鐩稿簲鍒嗗��,鍖呭惈閿欒閫夐」涓嶅緱鍒�', value: 3},
+ ],
form: {},
tableData: [],
subjects: [],
@@ -264,6 +287,13 @@
path: "/manage/paper-template",
});
},
+ //缂栬緫璇曞嵎
+ handleUpdate(row) {
+ this.reset();
+ this.form = row;
+ this.title="缂栬緫璇曞嵎"
+ this.open = true;
+ },
deletePaper (row) {
examPaperApi.deletePaper(row.id).then(re => {
if (re.code === 1) {
@@ -294,25 +324,21 @@
submitForm() {
this.$refs['form'].validate(valid => {
if (valid) {
- if (this.form.deptId && this.form.deptId.length > 0) {
- this.form.deptId = this.form.deptId[this.form.deptId.length - 1]
- }
let temp = {
...this.form,
- category: parseInt(this.form.category)
};
if (temp.id != null) {
- updatePoint(temp).then(response => {
- this.$modal.msgSuccess("淇敼鎴愬姛");
+ examPaperApi.edit(temp).then(response => {
+ this.$message.success("淇敼鎴愬姛");
this.open = false;
- this.getList();
+ this.getPage();
});
} else {
- addPoint(temp).then(response => {
- this.$modal.msgSuccess("鏂板鎴愬姛");
+ examPaperApi.addPaper(temp).then(response => {
+ this.$message.success("鏂板鎴愬姛");
this.open = false;
this.reset()
- this.getList();
+ this.getPage();
});
}
} else {
--
Gitblit v1.8.0