lrf402788946 4 vuotta sitten
vanhempi
commit
ea90b3ada8

+ 2 - 2
src/views/techolchat/list/detail-model/parts-models/seven.vue

@@ -7,7 +7,7 @@
             <template v-for="(f, fi) in fields">
             <template v-for="(f, fi) in fields">
               <el-col v-if="f.type === 'checkbox'" :span="12" :key="`seven-${f.model}-${fi}`">
               <el-col v-if="f.type === 'checkbox'" :span="12" :key="`seven-${f.model}-${fi}`">
                 <el-form-item :label="f.label">
                 <el-form-item :label="f.label">
-                  <el-select v-model="form[f.model]" filterable multiple>
+                  <el-select v-model="form[f.model]" filterable multiple placeholder="">
                     <el-option v-for="(c, ci) in getList(f.list)" :key="`seven-${f.model}-${fi}-c-${ci}`" :label="c" :value="c"></el-option>
                     <el-option v-for="(c, ci) in getList(f.list)" :key="`seven-${f.model}-${fi}-c-${ci}`" :label="c" :value="c"></el-option>
                   </el-select>
                   </el-select>
                 </el-form-item>
                 </el-form-item>
@@ -19,7 +19,7 @@
                       <el-row>
                       <el-row>
                         <el-col :span="24">{{ child.label }}</el-col>
                         <el-col :span="24">{{ child.label }}</el-col>
                         <el-col :span="24">
                         <el-col :span="24">
-                          <el-select v-model="form[child.model]">
+                          <el-select v-model="form[child.model]" placeholder="">
                             <el-option
                             <el-option
                               v-for="(c, ci) in getList(child.list)"
                               v-for="(c, ci) in getList(child.list)"
                               :key="`seven-${f.model}-${fi}-children-${child.model}-c-${ci}`"
                               :key="`seven-${f.model}-${fi}-children-${child.model}-c-${ci}`"

+ 0 - 2
src/views/techolchat/list/detail-model/parts-models/thr.vue

@@ -58,10 +58,8 @@ export default {
     },
     },
     // 修改disabled
     // 修改disabled
     toChange() {
     toChange() {
-      console.log('in function:');
       const d1 = _.get(this.form, 'charge');
       const d1 = _.get(this.form, 'charge');
       const d2 = _.get(this.form, 'gnum');
       const d2 = _.get(this.form, 'gnum');
-      console.log(d1, d2);
       let obj = {};
       let obj = {};
       if (d1 === '无技术团队') {
       if (d1 === '无技术团队') {
         const r = three.find(f => f.model === 'group');
         const r = three.find(f => f.model === 'group');

+ 1 - 3
src/views/techolchat/list/detail-model/parts-models/two.vue

@@ -39,9 +39,7 @@ export default {
       question: two,
       question: two,
     };
     };
   },
   },
-  created() {
-    console.log(this.question);
-  },
+  created() {},
   methods: {
   methods: {
     // 获取列表
     // 获取列表
     getList(type) {
     getList(type) {

+ 39 - 3
src/views/techolchat/list/detail-model/questionnaire-models.vue

@@ -84,6 +84,7 @@
 </template>
 </template>
 
 
 <script>
 <script>
+const fields = require('./fields');
 import one from './parts-models/one.vue';
 import one from './parts-models/one.vue';
 import two from './parts-models/two.vue';
 import two from './parts-models/two.vue';
 import thr from './parts-models/thr.vue';
 import thr from './parts-models/thr.vue';
@@ -92,6 +93,7 @@ import five from './parts-models/five.vue';
 import six from './parts-models/six.vue';
 import six from './parts-models/six.vue';
 import seven from './parts-models/seven.vue';
 import seven from './parts-models/seven.vue';
 import { mapState, createNamespacedHelpers } from 'vuex';
 import { mapState, createNamespacedHelpers } from 'vuex';
+const { mapActions: answer } = createNamespacedHelpers('answer');
 export default {
 export default {
   name: 'questionnaire-models',
   name: 'questionnaire-models',
   props: {
   props: {
@@ -118,13 +120,47 @@ export default {
   },
   },
   created() {},
   created() {},
   methods: {
   methods: {
-    onSubmit() {
+    ...answer(['create']),
+    async onSubmit() {
       let data = this.form;
       let data = this.form;
-      console.log(data);
+      const { company, contacts, phone, ...others } = data;
+      const obj = { company, contacts, phone, questionnaire_id: this.id };
+      const fields = this.setFields();
+      const arr = [];
+      const keys = Object.keys(others);
+      for (const key of keys) {
+        const label = fields[key];
+        const answer = others[key];
+        arr.push({ label, answer });
+      }
+      obj.answer = arr;
+      const res = await this.create(obj);
+      if (this.$checkRes(res, '申请成功', res.errmsg || '申请失败')) {
+      }
+    },
+    setFields() {
+      const fkeys = Object.keys(fields);
+      let object = [];
+      for (const key of fkeys) {
+        const narr = fields[key];
+        for (const obj of narr) {
+          if (!obj.children) {
+            object[obj.model] = obj.label;
+          } else {
+            for (const child of obj.children) {
+              object[child.model] = child.label;
+            }
+          }
+        }
+      }
+      return object;
     },
     },
   },
   },
   computed: {
   computed: {
-    ...mapState(['user']),
+    ...mapState(['fields']),
+    id() {
+      return this.$route.query.id;
+    },
   },
   },
   metaInfo() {
   metaInfo() {
     return { title: this.$route.meta.title };
     return { title: this.$route.meta.title };