From 50a64770eefedb4ec32328de93dcc0fa827da681 Mon Sep 17 00:00:00 2001 From: zcx <377075991@qq.com> Date: Wed, 13 Sep 2023 15:25:02 +0800 Subject: [PATCH] tiku --- public/index.html | 4 +- src/api/question.js | 9 + .../question/components/QuestionAddForm.vue | 174 ++++++++++++++++++ .../question/components/QuestionForm.vue | 2 +- src/views/question/index.vue | 14 +- src/views/sch/place/index.vue | 4 +- 6 files changed, 200 insertions(+), 7 deletions(-) create mode 100644 src/views/question/components/QuestionAddForm.vue diff --git a/public/index.html b/public/index.html index 4bbefa0..a52c9ca 100644 --- a/public/index.html +++ b/public/index.html @@ -95,10 +95,10 @@ <script src="/loading/index.js"></script> <script type="text/javascript"> window._AMapSecurityConfig = { - securityJsCode:'420463f2f8c849ab78b9d29548aff7d3', + securityJsCode:'f653df5a2c5f44ae68faaab6f6a6b8ab', } </script> <script src="http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js"></script> -<script src="https://webapi.amap.com/maps?v=1.4.15&key=ec6b7ebe38f7ff27126f7088d87a9091&plugin=AMap.Autocomplete,AMap.PlaceSearch,AMap.Geocoder,AMap.Scale"></script> +<script src="https://webapi.amap.com/maps?v=1.4.15&key=713d839ff505943b0f18e6df45f3b0dc&plugin=AMap.Autocomplete,AMap.PlaceSearch,AMap.Geocoder,AMap.Scale"></script> </body> </html> diff --git a/src/api/question.js b/src/api/question.js index 1611ba5..0dda73b 100644 --- a/src/api/question.js +++ b/src/api/question.js @@ -24,3 +24,12 @@ export function updateQuestion(data) { }); } +export function addQuestion(data) { + return request({ + url: '/driver-api/tdQuestion/duima/add', + method: 'put', + data: data + }); +} + + diff --git a/src/views/question/components/QuestionAddForm.vue b/src/views/question/components/QuestionAddForm.vue new file mode 100644 index 0000000..130e01f --- /dev/null +++ b/src/views/question/components/QuestionAddForm.vue @@ -0,0 +1,174 @@ +<template> + <el-dialog title="试题" :close-on-click-modal="false" append-to-body :visible.sync="visible" width="800px" @close="closeDialog"> + <div> + <el-form ref="dialogForm" :model="dialogForm" :rules="dataRule" label-position="left" @keyup.enter.native="dialogFormSubmit()"> + <el-row> + <el-col :span="24"> + <el-form-item label="题目" prop="question"> + <el-input v-model="dialogForm.question" maxlength="200" placeholder="请输入题目" clearable /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="24"> + <el-form-item label="选项" prop="question"> + A:<el-input v-model="dialogForm.chooseA" maxlength="200" placeholder="请输入" clearable /> + B:<el-input v-model="dialogForm.chooseB" maxlength="200" placeholder="请输入" clearable /> + C:<el-input v-model="dialogForm.chooseC" maxlength="200" placeholder="请输入" clearable /> + D:<el-input v-model="dialogForm.chooseD" maxlength="200" placeholder="请输入" clearable /> + E:<el-input v-model="dialogForm.chooseE" maxlength="200" placeholder="请输入" clearable /> + F:<el-input v-model="dialogForm.chooseF" maxlength="200" placeholder="请输入" clearable /> + G:<el-input v-model="dialogForm.chooseG" maxlength="200" placeholder="请输入" clearable /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="24"> + <el-form-item label="答案" prop="trueAnswer"> + <span>{{ dialogForm.trueAnswer }}</span> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="24"> + <el-form-item label="科目" prop="subject"> + <span v-if="dialogForm.subject == 1">科一</span> + <span v-if="dialogForm.subject == 4">科四</span> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="8"> + <el-form-item label="精选500题" prop="isVip"> + <el-radio-group v-model="dialogForm.isVip" size="small"> + <el-radio :label="1">是</el-radio> + <el-radio :label="0">否</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="精选600题" prop="isVip2"> + <el-radio-group v-model="dialogForm.isVip2" size="small"> + <el-radio :label="1">是</el-radio> + <el-radio :label="0">否</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="是否易错题" prop="isError"> + <el-radio-group v-model="dialogForm.isError" size="small"> + <el-radio :label="1">是</el-radio> + <el-radio :label="0">否</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="是否新规" prop="isNew"> + <el-radio-group v-model="dialogForm.isNew" size="small"> + <el-radio :label="1">是</el-radio> + <el-radio :label="0">否</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="是否密卷1" prop="isExam1"> + <el-radio-group v-model="dialogForm.isExam1" size="small"> + <el-radio :label="1">是</el-radio> + <el-radio :label="0">否</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + <el-col :span="8"> + <el-form-item label="是否密卷2" prop="isExam2"> + <el-radio-group v-model="dialogForm.isExam2" size="small"> + <el-radio :label="1">是</el-radio> + <el-radio :label="0">否</el-radio> + </el-radio-group> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="24"> + <el-form-item label="考点" prop="examKeys"> + <el-input v-model="dialogForm.examKeys" maxlength="200" placeholder="请输入考点" clearable /> + <span style="color:red;">包含多个考点,以英文";"分割!</span> + </el-form-item> + </el-col> + </el-row> + </el-form> + + </div> + <span slot="footer" class="dialog-footer"> + <el-button plain @click="(visible=false)">取消</el-button> + <el-button v-jclick type="primary" :disabled="!canSubmit" @click="dialogFormSubmit()">确定</el-button> + </span> + </el-dialog> +</template> + +<script> +import { addQuestion } from '@/api/question'; + +export default { + data () { + return { + visible: false, + canSubmit: true, + dialogForm: { + questionId: undefined, + isVip: 0, + isVip2: 0, + isError: 0, + isNew: 0, + isExam1: 0, + isExam2: 0, + examKeys: undefined + }, + dataRule: { + schoolName: [{ required: true, message: '驾校名称不能为空', trigger: 'blur' }], + status: [{ required: true, message: '状态不能为空', trigger: 'blur' }] + } + }; + }, + methods: { + init (info = undefined) { + // debugger + this.visible = true; + this.$nextTick(() => { + this.resetDialogForm(); + // this.$refs['dialogForm'].resetFields(); + if (info) { + this.dialogForm = this.deepClone(info); + } + }); + }, + resetDialogForm () { + this.dialogForm = { + questionId: undefined, + isVip: 0, + isVip2: 0, + isError: 0, + isNew: 0, + isExam1: 0, + isExam2: 0, + examKeys: undefined + }; + }, + closeDialog () { + this.$emit('update:dialogVisible', false); + }, + // 表单提交 + dialogFormSubmit () { + this.$refs.dialogForm.validate((valid) => { + if (valid) { + updateQuestion(this.dialogForm).then(response => { + if (response.code == 200) { + this.$modal.msgSuccess('修改成功'); + // this.visible = true; + } + }); + } + }); + } + } +}; +</script> diff --git a/src/views/question/components/QuestionForm.vue b/src/views/question/components/QuestionForm.vue index dfb682c..a692204 100644 --- a/src/views/question/components/QuestionForm.vue +++ b/src/views/question/components/QuestionForm.vue @@ -4,7 +4,7 @@ <el-form ref="dialogForm" :model="dialogForm" :rules="dataRule" label-position="left" @keyup.enter.native="dialogFormSubmit()"> <el-row> <el-col :span="24"> - <el-form-item label="题库" prop="question"> + <el-form-item label="题目" prop="question"> <span>{{ dialogForm.question }}</span> </el-form-item> </el-col> diff --git a/src/views/question/index.vue b/src/views/question/index.vue index 7560308..6a459e8 100644 --- a/src/views/question/index.vue +++ b/src/views/question/index.vue @@ -41,17 +41,20 @@ <!-- <pagination v-show="total>0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" /> --> <QuestionForm v-if="dialogVisible" ref="dialogForm" :dialog-visible="dialogVisible" @refreshDataList="getList" /> + <QuestionAddForm v-if="dialogAddVisible" ref="dialogAddForm" :dialog-visible="dialogAddVisible" @refreshDataList="getList" /> + </div> </template> <script> import { searchQuestion } from '@/api/question'; import QuestionForm from './components/QuestionForm.vue'; +import QuestionAddForm from './components/QuestionAddForm.vue'; export default { name: 'Question', components: { - QuestionForm + QuestionForm,QuestionAddForm }, data () { return { @@ -64,7 +67,8 @@ export default { queryParams: { question: '' }, - dialogVisible: false + dialogVisible: false, + dialogAddVisible: false }; }, created () { @@ -95,6 +99,12 @@ export default { this.$nextTick(() => { this.$refs.dialogForm.init(item); }); + }, + handleAdd (item) { + this.dialogAddVisible = true; + this.$nextTick(() => { + this.$refs.dialogAddForm.init(item); + }); } } }; diff --git a/src/views/sch/place/index.vue b/src/views/sch/place/index.vue index afeeb37..71dde44 100644 --- a/src/views/sch/place/index.vue +++ b/src/views/sch/place/index.vue @@ -281,7 +281,7 @@ export default { }, // 导入地图 importMap() { - const url = 'https://webapi.amap.com/maps?v=1.4.15&key=f2f35d6adc4a16bb879d303cead56237&callback=onLoad'; + const url = 'https://webapi.amap.com/maps?v=1.4.15&key=0e62be0896c6b8d27d453445f0fb8bc4&callback=onLoad'; var jsapi = document.createElement('script'); jsapi.charset = 'utf-8'; jsapi.src = url; @@ -546,7 +546,7 @@ export default { for (let i = 0; i < this.tableData.length; i++) { const element = this.tableData[i]; const tempSchool = this.schoolList.filter((item) => item.schoolId === element.schoolId)[0]; - if (!tempSchool.showInMap || !element.showInMap) { + if (!element.schoolShow || !element.showInMap) { continue; } const tmpMarker = new AMap.Marker({