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({