lrf402788946 5 lat temu
rodzic
commit
91aefafa0c
2 zmienionych plików z 46 dodań i 41 usunięć
  1. 7 2
      src/store.js
  2. 39 39
      src/views/manager/jobs/detail.vue

+ 7 - 2
src/store.js

@@ -36,6 +36,7 @@ const api = {
   corpLogin: '/api/corp/login',
   corpLogin: '/api/corp/login',
   dictionary: '/api/code/{type}/items', //type === xzqh:query:level(1/2);parent(无/code)
   dictionary: '/api/code/{type}/items', //type === xzqh:query:level(1/2);parent(无/code)
   corpReg: '/api/corp/corps', //query:type:0=>用户名+密码 account(学号@学校id)+passwd;1-微信(wxtoken)
   corpReg: '/api/corp/corps', //query:type:0=>用户名+密码 account(学号@学校id)+passwd;1-微信(wxtoken)
+  findOne: '/api/code/xzqh/findOne', //query:name
   //验证码
   //验证码
   verify: '/api/cms/verify/verify',
   verify: '/api/cms/verify/verify',
   checkVerify: '/api/cms/verify/check_verify',
   checkVerify: '/api/cms/verify/check_verify',
@@ -349,8 +350,12 @@ export default new Vuex.Store({
       if (!_.isObject(type)) {
       if (!_.isObject(type)) {
         result = await this.$axios.$get(api.dictionary, { type: type });
         result = await this.$axios.$get(api.dictionary, { type: type });
       } else {
       } else {
-        let { level, parent } = type;
-        result = await this.$axios.$get(api.dictionary, { type: 'xzqh' }, { level: level, parent: parent });
+        let { level, parent, name } = type;
+        if (name) {
+          result = await this.$axios.$get(api.findOne, {}, { name: name });
+        } else {
+          result = await this.$axios.$get(api.dictionary, { type: 'xzqh' }, { level: level, parent: parent });
+        }
       }
       }
 
 
       return result;
       return result;

+ 39 - 39
src/views/manager/jobs/detail.vue

@@ -5,7 +5,7 @@
         <back-bar to="/manager/jobs/index" title="职位信息管理"></back-bar>
         <back-bar to="/manager/jobs/index" title="职位信息管理"></back-bar>
       </template>
       </template>
       <template #main>
       <template #main>
-        <el-row>
+        <el-row v-loading="loading">
           <el-form :model="info">
           <el-form :model="info">
             <form-item label="企业名称">
             <form-item label="企业名称">
               {{ user.corpname }}
               {{ user.corpname }}
@@ -143,6 +143,7 @@ export default {
     backBar,
     backBar,
   },
   },
   data: () => ({
   data: () => ({
+    loading: false,
     info: {
     info: {
       salary: {
       salary: {
         min: '',
         min: '',
@@ -215,12 +216,15 @@ export default {
   methods: {
   methods: {
     ...mapActions(['postOperation', 'dicOperation']),
     ...mapActions(['postOperation', 'dicOperation']),
     async search() {
     async search() {
+      this.loading = true;
       let result = await this.postOperation({ type: 'search', data: { id: this.$route.query.id } });
       let result = await this.postOperation({ type: 'search', data: { id: this.$route.query.id } });
       let infos = JSON.parse(JSON.stringify(result.data));
       let infos = JSON.parse(JSON.stringify(result.data));
-      this.$set(this, `info`, infos);
-      this.returnData(infos);
-      var jobArr = infos.category.split(',');
-      this.$set(this.info, 'category', jobArr);
+      let newData = await this.returnData(infos);
+      var jobArr = newData.category.split(',');
+      // this.$set(this.info, 'category', jobArr);
+      newData.category = jobArr;
+      this.$set(this, `info`, newData);
+      this.loading = false;
     },
     },
     selectChange({ val, type }) {
     selectChange({ val, type }) {
       //此方法是同步选择
       //此方法是同步选择
@@ -298,46 +302,40 @@ export default {
       this.$set(this.info, `category`, item.label);
       this.$set(this.info, `category`, item.label);
       this.drawer = false;
       this.drawer = false;
     },
     },
-    returnData(data) {
+    async returnData(data) {
       if (data.city) {
       if (data.city) {
         let mid = data.city.split(',');
         let mid = data.city.split(',');
         let selected = [];
         let selected = [];
         for (const select of mid) {
         for (const select of mid) {
-          let res = this.provinceList.filter(item => item.label === select);
-          if (res.length > 0) {
-            selected = [...selected, ...res];
-          } else {
-            let res = this.secondList.filter(item => item.label === select);
-            if (res.length > 0) {
-              selected = [...selected, ...res];
-            } else {
-              let res = this.secondList1.filter(item => item.label === select);
-              if (res.length > 0) {
-                selected = [...selected, ...res];
-              }
-            }
-          }
-        }
-        console.log(mid);
-        console.log(selected);
-        this.$set(this.info, `city`, selected);
-      }
-      if (data.zy_req) {
-        let mid = data.zy_req.split(',');
-        let selected = [];
-        for (const select of mid) {
-          let res = this.subjectList.filter(item => item.label === select && item.value === '0');
-          if (res.length <= 0) {
-            res = this.subjectSub.filter(item => item.label === select);
-            selected = [...selected, ...res];
-            res = this.subjectSub2.filter(item => item.label === select);
-            selected = [...selected, ...res];
-            this.$set(this.info, `zy_req`, selected);
-          } else {
-            this.$set(this.info, `zy_req`, res);
+          let result = await this.dicOperation({ name: select });
+          if (`${result.errcode}` === '0') {
+            selected.push(result.data);
           }
           }
         }
         }
+        selected = selected.map(item => {
+          return { label: item.name, value: item.code };
+        });
+        data.city = selected;
+        // this.$set(this.info, `city`, selected);
       }
       }
+      // if (data.zy_req) {
+      //   let mid = data.zy_req.split(',');
+      //   let selected = [];
+      //   for (const select of mid) {
+      //     let res = this.subjectList.filter(item => item.label === select && item.value === '0');
+      //     if (res.length <= 0) {
+      //       res = this.subjectSub.filter(item => item.label === select);
+      //       selected = [...selected, ...res];
+      //       res = this.subjectSub2.filter(item => item.label === select);
+      //       selected = [...selected, ...res];
+      //       // this.$set(this.info, `zy_req`, selected);
+      //       data.zy_req = selected;
+      //     } else {
+      //       data.zy_req = res;
+      //       // this.$set(this.info, `zy_req`, res);
+      //     }
+      //   }
+      // }
       if (data.job_tag) {
       if (data.job_tag) {
         let mid = data.job_tag.split(',');
         let mid = data.job_tag.split(',');
         let selected = [];
         let selected = [];
@@ -345,8 +343,10 @@ export default {
           let res = this.entice_list.filter(item => item.label === select);
           let res = this.entice_list.filter(item => item.label === select);
           selected = [...selected, ...res];
           selected = [...selected, ...res];
         }
         }
-        this.$set(this.info, `job_tag`, selected);
+        data.job_tag = selected;
+        // this.$set(this.info, `job_tag`, selected);
       }
       }
+      return data;
     },
     },
     async otherList(type) {
     async otherList(type) {
       let result = await this.dicOperation('zwlb');
       let result = await this.dicOperation('zwlb');