Kaynağa Gözat

科技人才完成更新

guhongwei 5 yıl önce
ebeveyn
işleme
a1aa35b677

+ 37 - 21
src/components/personnel/guidance.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="guidance">
+  <div id="adviserList">
     <el-row>
       <el-col :span="24" class="top">
         <top></top>
@@ -16,11 +16,16 @@
       </el-col>
       <el-col :span="24" class="main">
         <div class="w_1200">
-          <el-col :span="5" class="mainLeft">
-            <mainLeft></mainLeft>
+          <el-col :span="5" class="left">
+            <el-col :span="24" class="leftTop">
+              <mainMenu :liebiaoList="liebiaoList" v-on="$listeners"></mainMenu>
+            </el-col>
+            <el-col :span="24" class="leftDiao">
+              <examine></examine>
+            </el-col>
           </el-col>
-          <el-col :span="19" class="direct">
-            <direct :directData="directData"></direct>
+          <el-col :span="19" class="right">
+            <adviserLists :columnName="columnName"></adviserLists>
           </el-col>
         </div>
       </el-col>
@@ -37,22 +42,25 @@
 import top from '@/layout/index/top.vue';
 import logo from '@/layout/index/logo.vue';
 import menuInfo from '@/layout/index/menuInfo.vue';
-import mainLeft from '@/layout/personnel/mainMenu.vue';
-import direct from '@/layout/personnel/direct.vue';
 import foot from '@/layout/index/foot.vue';
+import examine from '@/layout/personCenter/question.vue';
+import mainMenu from '@/layout/personnel/mainMenu.vue';
+import adviserLists from '@/layout/personnel/adviserLists.vue';
 export default {
-  name: 'guidance',
+  name: 'adviserList',
   props: {
     info: null, //站点信息
-    directData: null, //就业指导
+    liebiaoList: null, //分类导航
+    columnName: null, //栏目名称
   },
   components: {
     top, //头部
     logo, //logo
     menuInfo, //导航
-    mainLeft, //侧边导航
-    direct, //就业指导
     foot, //底部
+    examine, //网上调查
+    mainMenu, //分类导航
+    adviserLists, //列表
   },
   data: () => ({}),
   created() {},
@@ -80,22 +88,30 @@ export default {
   overflow: hidden;
 }
 .main {
-  height: 580px;
+  height: 740px;
   overflow: hidden;
   margin: 10px 0;
 }
-.main .mainLeft {
-  width: 240px;
-  height: 580px;
-  overflow: hidden;
-  // background-color: #fff;
+.left {
+  height: 740px;
   margin: 0 10px 0 0;
 }
-.main .direct {
-  width: 950px;
-  height: 580px;
+.leftDiao {
+  background: #fff;
+  height: 370px;
+  overflow: hidden;
+}
+.leftTop {
+  background: #fff;
+  height: 360px;
+  overflow: hidden;
+  margin: 0 0 10px 0;
+}
+.right {
+  width: 940px;
+  height: 740px;
+  background: #fff;
   overflow: hidden;
-  background-color: #fff;
 }
 .foot {
   float: left;

+ 122 - 0
src/components/personnel/diligenceList.vue

@@ -0,0 +1,122 @@
+<template>
+  <div id="diligenceList">
+    <el-row>
+      <el-col :span="24" class="top">
+        <top></top>
+      </el-col>
+      <el-col :span="24" class="logo">
+        <div class="w_1200">
+          <logo :info="info"></logo>
+        </div>
+      </el-col>
+      <el-col :span="24" class="menu">
+        <div class="w_1200">
+          <menuInfo></menuInfo>
+        </div>
+      </el-col>
+      <el-col :span="24" class="main">
+        <div class="w_1200">
+          <el-col :span="5" class="left">
+            <el-col :span="24" class="leftTop">
+              <mainMenu :liebiaoList="liebiaoList" v-on="$listeners"></mainMenu>
+            </el-col>
+            <el-col :span="24" class="leftDiao">
+              <examine></examine>
+            </el-col>
+          </el-col>
+          <el-col :span="19" class="right">
+            <diligenceLists :columnName="columnName"></diligenceLists>
+          </el-col>
+        </div>
+      </el-col>
+      <el-col :span="24" class="foot">
+        <div class="w_1200">
+          <foot :info="info"></foot>
+        </div>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+import top from '@/layout/index/top.vue';
+import logo from '@/layout/index/logo.vue';
+import menuInfo from '@/layout/index/menuInfo.vue';
+import foot from '@/layout/index/foot.vue';
+import examine from '@/layout/personCenter/question.vue';
+import mainMenu from '@/layout/personnel/mainMenu.vue';
+import diligenceLists from '@/layout/personnel/diligenceLists.vue';
+export default {
+  name: 'diligenceList',
+  props: {
+    info: null, //站点信息
+    liebiaoList: null, //分类导航
+    columnName: null, //栏目名称
+  },
+  components: {
+    top, //头部
+    logo, //logo
+    menuInfo, //导航
+    foot, //底部
+    examine, //网上调查
+    mainMenu, //分类导航
+    diligenceLists, //列表
+  },
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="less" scoped>
+.w_1200 {
+  width: 1200px;
+  margin: 0 auto;
+}
+.top {
+  height: 40px;
+  overflow: hidden;
+  background-color: rgba(11, 58, 125, 0.8);
+}
+.logo {
+  height: 200px;
+  overflow: hidden;
+}
+.menu {
+  height: 70px;
+  overflow: hidden;
+}
+.main {
+  height: 740px;
+  overflow: hidden;
+  margin: 10px 0;
+}
+.left {
+  height: 740px;
+  margin: 0 10px 0 0;
+}
+.leftDiao {
+  background: #fff;
+  height: 370px;
+  overflow: hidden;
+}
+.leftTop {
+  background: #fff;
+  height: 360px;
+  overflow: hidden;
+  margin: 0 0 10px 0;
+}
+.right {
+  width: 940px;
+  height: 740px;
+  background: #fff;
+  overflow: hidden;
+}
+.foot {
+  float: left;
+  width: 100%;
+  height: 120px;
+  overflow: hidden;
+}
+</style>

+ 23 - 54
src/components/personnel/personnelqita.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="policy">
+  <div id="guidanceList">
     <el-row>
       <el-col :span="24" class="top">
         <top></top>
@@ -16,24 +16,16 @@
       </el-col>
       <el-col :span="24" class="main">
         <div class="w_1200">
-          <el-col :span="5" class="fenlei">
+          <el-col :span="5" class="left">
             <el-col :span="24" class="leftTop">
-              <fenleilist :liebiaoList="liebiaoList" v-on="$listeners"></fenleilist>
+              <mainMenu :liebiaoList="liebiaoList" v-on="$listeners"></mainMenu>
             </el-col>
             <el-col :span="24" class="leftDiao">
               <examine></examine>
             </el-col>
           </el-col>
-          <el-col :span="19" class="rightcont">
-            <rightqita
-              v-on="$listeners"
-              :columnName="columnName"
-              :contentList="contentList"
-              :canmoData="canmoData"
-              :total="total"
-              v-if="display === 'list'"
-            ></rightqita>
-            <rightzpdetailqita v-else :columnTitle="columnTitle" :policyInfo="policyInfo"></rightzpdetailqita>
+          <el-col :span="19" class="right">
+            <guidanceLists :columnName="columnName"></guidanceLists>
           </el-col>
         </div>
       </el-col>
@@ -51,41 +43,29 @@ import top from '@/layout/index/top.vue';
 import logo from '@/layout/index/logo.vue';
 import menuInfo from '@/layout/index/menuInfo.vue';
 import foot from '@/layout/index/foot.vue';
-import fenleilist from '@/layout/personnel/fenleilist.vue';
-import rightqita from '@/layout/personnel/rightqita.vue';
-import rightzpdetailqita from '@/layout/personnel/rightzpdetailqita.vue';
 import examine from '@/layout/personCenter/question.vue';
+import mainMenu from '@/layout/personnel/mainMenu.vue';
+import guidanceLists from '@/layout/personnel/guidanceLists.vue';
 export default {
-  name: 'policy',
+  name: 'guidanceList',
   props: {
     info: null, //站点信息
-    liebiaoList: null,
-    columnName: null, //栏目标题
-    contentList: null, //内容
-    total: null,
-    display: { type: String, default: 'list' },
-    columnTitle: null, //信息详情头部栏目标题
-    policyInfo: null, //信息详情
-    canmoData: null,
+    liebiaoList: null, //分类导航
+    columnName: null, //栏目名称
   },
   components: {
     top, //头部
     logo, //logo
     menuInfo, //导航
     foot, //底部
-    fenleilist, //左边分类
-    rightqita, //右边栏
-    rightzpdetailqita,
-    examine,
+    examine, //网上调查
+    mainMenu, //分类导航
+    guidanceLists, //列表
   },
   data: () => ({}),
   created() {},
   computed: {},
-  methods: {
-    clickList({ id }) {
-      console.log(id);
-    },
-  },
+  methods: {},
 };
 </script>
 
@@ -108,10 +88,14 @@ export default {
   overflow: hidden;
 }
 .main {
-  min-height: 600px;
+  height: 740px;
   overflow: hidden;
   margin: 10px 0;
 }
+.left {
+  height: 740px;
+  margin: 0 10px 0 0;
+}
 .leftDiao {
   background: #fff;
   height: 370px;
@@ -123,26 +107,11 @@ export default {
   overflow: hidden;
   margin: 0 0 10px 0;
 }
-.main .fenlei {
-  float: left;
-  width: 240px;
-  min-height: 740px;
-  margin: 0 10px 0 0;
-  overflow: hidden;
-}
-.main .rightcont {
-  float: left;
-  width: 950px;
-  min-height: 740px;
-  overflow: hidden;
-  background-color: #fff;
-}
-.main .link {
-  float: left;
-  width: 100%;
-  height: 100px;
+.right {
+  width: 940px;
+  height: 740px;
+  background: #fff;
   overflow: hidden;
-  background-color: #fff;
 }
 .foot {
   float: left;

+ 1 - 33
src/components/personnel/personnelexpert.vue

@@ -16,15 +16,7 @@
       </el-col>
       <el-col :span="24" class="main">
         <div class="w_1200">
-          <el-col :span="5" class="fenlei">
-            <el-col :span="24" class="leftTop">
-              <mainMenu :liebiaoList="liebiaoList" v-on="$listeners"></mainMenu>
-            </el-col>
-            <el-col :span="24" class="leftDiao">
-              <examine></examine>
-            </el-col>
-          </el-col>
-          <el-col :span="19" class="rightcont">
+          <el-col :span="24" class="rightcont">
             <rightcontzj :policyInfo="policyInfo"></rightcontzj>
           </el-col>
         </div>
@@ -43,7 +35,6 @@ import top from '@/layout/index/top.vue';
 import logo from '@/layout/index/logo.vue';
 import menuInfo from '@/layout/index/menuInfo.vue';
 import foot from '@/layout/index/foot.vue';
-import mainMenu from '@/layout/personnel/mainMenu.vue';
 import rightcontzj from '@/layout/personnel/rightcontzj.vue';
 import examine from '@/layout/personCenter/question.vue';
 export default {
@@ -63,10 +54,7 @@ export default {
     logo, //logo
     menuInfo, //导航
     foot, //底部
-    mainMenu, //左边分类
-
     rightcontzj,
-    examine,
   },
   data: () => ({}),
   created() {},
@@ -102,27 +90,7 @@ export default {
   overflow: hidden;
   margin: 10px 0;
 }
-.leftDiao {
-  background: #fff;
-  height: 450px;
-  overflow: hidden;
-}
-.leftTop {
-  background: #fff;
-  height: 360px;
-  overflow: hidden;
-  margin: 0 0 10px 0;
-}
-.main .fenlei {
-  float: left;
-  width: 240px;
-  min-height: 820px;
-  margin: 0 10px 0 0;
-  overflow: hidden;
-}
 .main .rightcont {
-  float: left;
-  width: 950px;
   min-height: 820px;
   overflow: hidden;
   background-color: #fff;

+ 23 - 54
src/components/personnel/personnelist.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="policy">
+  <div id="practiceList">
     <el-row>
       <el-col :span="24" class="top">
         <top></top>
@@ -16,24 +16,16 @@
       </el-col>
       <el-col :span="24" class="main">
         <div class="w_1200">
-          <el-col :span="5" class="fenlei">
+          <el-col :span="5" class="left">
             <el-col :span="24" class="leftTop">
-              <fenleilist :liebiaoList="liebiaoList" v-on="$listeners"></fenleilist>
+              <mainMenu :liebiaoList="liebiaoList" v-on="$listeners"></mainMenu>
             </el-col>
             <el-col :span="24" class="leftDiao">
               <examine></examine>
             </el-col>
           </el-col>
-          <el-col :span="19" class="rightcont">
-            <rightzhaopin
-              v-on="$listeners"
-              :columnName="columnName"
-              :contentList="contentList"
-              :jobsData="jobsData"
-              :total="total"
-              v-if="display === 'list'"
-            ></rightzhaopin>
-            <rightzpdetail v-else :columnTitle="columnTitle" :policyInfo="policyInfo"></rightzpdetail>
+          <el-col :span="19" class="right">
+            <practiceLists :columnName="columnName"></practiceLists>
           </el-col>
         </div>
       </el-col>
@@ -51,41 +43,29 @@ import top from '@/layout/index/top.vue';
 import logo from '@/layout/index/logo.vue';
 import menuInfo from '@/layout/index/menuInfo.vue';
 import foot from '@/layout/index/foot.vue';
-import fenleilist from '@/layout/personnel/fenleilist.vue';
-import rightzhaopin from '@/layout/personnel/rightzhaopin.vue';
-import rightzpdetail from '@/layout/personnel/rightzpdetail.vue';
 import examine from '@/layout/personCenter/question.vue';
+import mainMenu from '@/layout/personnel/mainMenu.vue';
+import practiceLists from '@/layout/personnel/practiceLists.vue';
 export default {
-  name: 'policy',
+  name: 'practiceList',
   props: {
     info: null, //站点信息
-    liebiaoList: null,
-    columnName: null, //栏目标题
-    contentList: null, //内容
-    total: null,
-    display: { type: String, default: 'list' },
-    columnTitle: null, //信息详情头部栏目标题
-    policyInfo: null, //信息详情
-    jobsData: null,
+    liebiaoList: null, //分类导航
+    columnName: null, //栏目名称
   },
   components: {
     top, //头部
     logo, //logo
     menuInfo, //导航
     foot, //底部
-    fenleilist, //左边分类
-    rightzhaopin, //右边栏
-    rightzpdetail,
-    examine,
+    examine, //网上调查
+    mainMenu, //分类导航
+    practiceLists, //列表
   },
   data: () => ({}),
   created() {},
   computed: {},
-  methods: {
-    clickList({ id }) {
-      console.log(id);
-    },
-  },
+  methods: {},
 };
 </script>
 
@@ -108,10 +88,14 @@ export default {
   overflow: hidden;
 }
 .main {
-  min-height: 600px;
+  height: 740px;
   overflow: hidden;
   margin: 10px 0;
 }
+.left {
+  height: 740px;
+  margin: 0 10px 0 0;
+}
 .leftDiao {
   background: #fff;
   height: 370px;
@@ -123,26 +107,11 @@ export default {
   overflow: hidden;
   margin: 0 0 10px 0;
 }
-.main .fenlei {
-  float: left;
-  width: 240px;
-  min-height: 740px;
-  margin: 0 10px 0 0;
-  overflow: hidden;
-}
-.main .rightcont {
-  float: left;
-  width: 950px;
-  min-height: 740px;
-  overflow: hidden;
-  background-color: #fff;
-}
-.main .link {
-  float: left;
-  width: 100%;
-  height: 100px;
+.right {
+  width: 940px;
+  height: 740px;
+  background: #fff;
   overflow: hidden;
-  background-color: #fff;
 }
 .foot {
   float: left;

+ 37 - 21
src/components/personnel/recruit.vue

@@ -1,5 +1,5 @@
 <template>
-  <div id="personnel">
+  <div id="recruitList">
     <el-row>
       <el-col :span="24" class="top">
         <top></top>
@@ -16,11 +16,16 @@
       </el-col>
       <el-col :span="24" class="main">
         <div class="w_1200">
-          <el-col :span="5" class="mainLeft">
-            <mainLeft></mainLeft>
+          <el-col :span="5" class="left">
+            <el-col :span="24" class="leftTop">
+              <mainMenu :liebiaoList="liebiaoList" v-on="$listeners"></mainMenu>
+            </el-col>
+            <el-col :span="24" class="leftDiao">
+              <examine></examine>
+            </el-col>
           </el-col>
-          <el-col :span="19" class="recruitList">
-            <recruitList :recruitData="recruitData"></recruitList>
+          <el-col :span="19" class="right">
+            <recruitLists :columnName="columnName"></recruitLists>
           </el-col>
         </div>
       </el-col>
@@ -37,22 +42,25 @@
 import top from '@/layout/index/top.vue';
 import logo from '@/layout/index/logo.vue';
 import menuInfo from '@/layout/index/menuInfo.vue';
-import mainLeft from '@/layout/personnel/mainMenu.vue';
-import recruitList from '@/layout/personnel/recruitList.vue';
 import foot from '@/layout/index/foot.vue';
+import examine from '@/layout/personCenter/question.vue';
+import mainMenu from '@/layout/personnel/mainMenu.vue';
+import recruitLists from '@/layout/personnel/recruitLists.vue';
 export default {
-  name: 'personnel',
+  name: 'recruitList',
   props: {
     info: null, //站点信息
-    recruitData: null, //招聘信息
+    liebiaoList: null, //分类导航
+    columnName: null, //栏目名称
   },
   components: {
     top, //头部
     logo, //logo
     menuInfo, //导航
-    mainLeft, //侧边导航
-    recruitList, //招聘信息列表
     foot, //底部
+    examine, //网上调查
+    mainMenu, //分类导航
+    recruitLists, //列表
   },
   data: () => ({}),
   created() {},
@@ -80,22 +88,30 @@ export default {
   overflow: hidden;
 }
 .main {
-  height: 580px;
+  height: 740px;
   overflow: hidden;
   margin: 10px 0;
 }
-.main .mainLeft {
-  width: 240px;
-  height: 580px;
-  overflow: hidden;
-  // background-color: #fff;
+.left {
+  height: 740px;
   margin: 0 10px 0 0;
 }
-.main .recruitList {
-  width: 950px;
-  height: 580px;
+.leftDiao {
+  background: #fff;
+  height: 370px;
+  overflow: hidden;
+}
+.leftTop {
+  background: #fff;
+  height: 360px;
+  overflow: hidden;
+  margin: 0 0 10px 0;
+}
+.right {
+  width: 940px;
+  height: 740px;
+  background: #fff;
   overflow: hidden;
-  background-color: #fff;
 }
 .foot {
   float: left;

+ 1 - 1
src/layout/personCenter/question.vue

@@ -3,7 +3,7 @@
     <el-row>
       <el-col :span="24" class="info">
         <el-col :span="24" class="infoTop">
-          <el-image style="width:240px;height:60px;" :src="pic"></el-image>
+          <el-image style="width:250px;height:60px;" :src="pic"></el-image>
         </el-col>
         <el-col :span="24" class="form">
           <el-col :span="24" class="image">

+ 38 - 0
src/layout/personnel/adviserLists.vue

@@ -0,0 +1,38 @@
+<template>
+  <div id="adviserList">
+    <el-row>
+      <el-col :span="24" class="list">
+        <el-col :span="24" class="topTitle">
+          {{ columnName }}
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'adviserList',
+  props: {
+    columnName: null,
+  },
+  components: {},
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="less" scoped>
+.list {
+  height: 740px;
+  padding: 20px;
+  overflow: hidden;
+}
+.topTitle {
+  font-size: 22px;
+  color: #22529a;
+  margin: 0 0 20px 0;
+}
+</style>

+ 38 - 0
src/layout/personnel/diligenceLists.vue

@@ -0,0 +1,38 @@
+<template>
+  <div id="diligenceList">
+    <el-row>
+      <el-col :span="24" class="list">
+        <el-col :span="24" class="topTitle">
+          {{ columnName }}
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'diligenceList',
+  props: {
+    columnName: null,
+  },
+  components: {},
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="less" scoped>
+.list {
+  height: 740px;
+  padding: 20px;
+  overflow: hidden;
+}
+.topTitle {
+  font-size: 22px;
+  color: #22529a;
+  margin: 0 0 20px 0;
+}
+</style>

+ 0 - 65
src/layout/personnel/fenleilist.vue

@@ -1,65 +0,0 @@
-<template>
-  <div id="fenlei">
-    <el-col class="swfl">
-      <el-image style="width:22px;height:22px;margin:0 5px -5px 0;" :src="src"></el-image>
-      <span>分类导航</span>
-    </el-col>
-    <el-col>
-      <el-menu default-active="1" class="el-menu-vertical-demo" @open="handleOpen" @close="handleClose" text-color="#215299" active-text-color="#215299">
-        <el-menu-item index="1" v-for="(item, index) in liebiaoList" :key="index"
-          ><span slot="title" @click="clickUrl(item.id)">{{ item.name }}</span></el-menu-item
-        >
-      </el-menu>
-    </el-col>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'fenlei',
-  props: {
-    liebiaoList: null,
-  },
-  components: {},
-  data: () => ({
-    src: require('@/assets/swfl.png'),
-  }),
-  created() {},
-  computed: {},
-  methods: {
-    clickUrl(id) {
-      this.$emit('clickLists', { id });
-    },
-    handleOpen(key, keyPath) {
-      console.log(key, keyPath);
-    },
-    handleClose(key, keyPath) {
-      console.log(key, keyPath);
-    },
-  },
-};
-</script>
-
-<style lang="less" scoped>
-.swfl {
-  height: 60px;
-  width: 240px;
-  line-height: 60px;
-  background-color: #22529a;
-  text-align: center;
-}
-.swfl span {
-  font-size: 22px;
-  color: #ffffff;
-}
-/deep/.el-menu-item {
-  height: 60px;
-  text-align: center;
-  line-height: 60px;
-  border-bottom: 1px dashed;
-  font-size: 22px;
-}
-/deep/.el-menu-item:last-child {
-  border-bottom: none;
-}
-</style>

+ 38 - 0
src/layout/personnel/guidanceLists.vue

@@ -0,0 +1,38 @@
+<template>
+  <div id="guidanceList">
+    <el-row>
+      <el-col :span="24" class="list">
+        <el-col :span="24" class="topTitle">
+          {{ columnName }}
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'guidanceList',
+  props: {
+    columnName: null,
+  },
+  components: {},
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="less" scoped>
+.list {
+  height: 740px;
+  padding: 20px;
+  overflow: hidden;
+}
+.topTitle {
+  font-size: 22px;
+  color: #22529a;
+  margin: 0 0 20px 0;
+}
+</style>

+ 1 - 2
src/layout/personnel/mainMenu.vue

@@ -1,6 +1,6 @@
 <template>
   <div id="fenlei">
-    <el-col class="swfl">
+    <el-col class="swfl" :span="24">
       <el-image style="width:22px;height:22px;margin:0 5px -5px 0;" :src="src"></el-image>
       <span>分类导航</span>
     </el-col>
@@ -43,7 +43,6 @@ export default {
 <style lang="less" scoped>
 .swfl {
   height: 60px;
-  width: 240px;
   line-height: 60px;
   background-color: #22529a;
   text-align: center;

+ 38 - 0
src/layout/personnel/practiceLists.vue

@@ -0,0 +1,38 @@
+<template>
+  <div id="practiceList">
+    <el-row>
+      <el-col :span="24" class="list">
+        <el-col :span="24" class="topTitle">
+          {{ columnName }}
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'practiceList',
+  props: {
+    columnName: null,
+  },
+  components: {},
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="less" scoped>
+.list {
+  height: 740px;
+  padding: 20px;
+  overflow: hidden;
+}
+.topTitle {
+  font-size: 22px;
+  color: #22529a;
+  margin: 0 0 20px 0;
+}
+</style>

+ 38 - 0
src/layout/personnel/recruitLists.vue

@@ -0,0 +1,38 @@
+<template>
+  <div id="recruitLists">
+    <el-row>
+      <el-col :span="24" class="list">
+        <el-col :span="24" class="topTitle">
+          {{ columnName }}
+        </el-col>
+      </el-col>
+    </el-row>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'recruitLists',
+  props: {
+    columnName: null,
+  },
+  components: {},
+  data: () => ({}),
+  created() {},
+  computed: {},
+  methods: {},
+};
+</script>
+
+<style lang="less" scoped>
+.list {
+  height: 740px;
+  padding: 20px;
+  overflow: hidden;
+}
+.topTitle {
+  font-size: 22px;
+  color: #22529a;
+  margin: 0 0 20px 0;
+}
+</style>

+ 0 - 124
src/layout/personnel/rightqita.vue

@@ -1,124 +0,0 @@
-<template>
-  <div id="rightcont">
-    <el-col class="zhengce">
-      <el-col :span="24" class="topTitle">
-        {{ columnName }}
-      </el-col>
-      <el-col :span="24" class="info">
-        <el-table :data="canmoData" stripe style="width: 100%">
-          <el-table-column label="名称" align="center">
-            <template slot-scope="scoped">
-              <el-tooltip effect="dark" content="点击显示详情" placement="left">
-                <el-col :span="24" @click.native="clickDetailcm(scoped.row)">{{ scoped.row.name }}</el-col>
-              </el-tooltip>
-            </template>
-          </el-table-column>
-          <el-table-column prop="infotype" label="信息类型" align="center"> </el-table-column>
-          <el-table-column prop="user_name" label="发布人" align="center"> </el-table-column>
-        </el-table>
-        <el-col class="page" :span="24">
-          <el-pagination
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
-            :current-page="currentPage"
-            layout="total,  prev, pager, next, jumper"
-            :total="total"
-          >
-          </el-pagination>
-        </el-col>
-      </el-col>
-    </el-col>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'rightcont',
-  props: {
-    canmoData: null,
-    columnName: null,
-    contentList: null,
-    total: null,
-  },
-  components: {},
-  data: () => ({
-    currentPage: 1,
-  }),
-  created() {},
-  computed: {},
-  methods: {
-    handleSizeChange(val) {
-      console.log(`每页 ${val} 条`);
-    },
-    handleCurrentChange(val) {
-      console.log(`当前页: ${val}`);
-    },
-    clickDetailcm(row) {
-      this.$emit('detail', { data: row });
-    },
-  },
-};
-</script>
-
-<style lang="less" scoped>
-.zhengce {
-  height: 660px;
-  padding: 20px;
-  overflow: hidden;
-}
-.topTitle {
-  font-size: 22px;
-  color: #22529a;
-  margin: 0 0 20px 0;
-}
-.info {
-  height: 570px;
-  overflow: hidden;
-}
-.info ul {
-  height: 510px;
-  overflow: hidden;
-  padding: 0 0 0 20px;
-}
-.info ul li {
-  float: left;
-  width: 100%;
-  padding: 0 0 13px 0;
-}
-.info ul li .title {
-  font-size: 16px;
-  color: #60636d;
-}
-.info ul li .date {
-  font-size: 16px;
-  color: #a8abb7;
-  text-align: right;
-}
-.info ul li:hover {
-  cursor: pointer;
-}
-.info ul li:hover .title {
-  color: #22529a;
-}
-.info ul li:hover .date {
-  color: #22529a;
-}
-.page {
-  padding: 11px 0;
-  text-align: center;
-}
-/deep/.el-table td {
-  padding: 8px 0;
-}
-/deep/.el-table th {
-  padding: 8px 0;
-  background-color: #f5f4f4;
-}
-/deep/ .el-table th.is-leaf {
-  border-bottom: none;
-  color: #000;
-}
-/deep/.el-table td {
-  border-bottom: none;
-}
-</style>

+ 0 - 126
src/layout/personnel/rightzhaopin.vue

@@ -1,126 +0,0 @@
-<template>
-  <div id="rightcont">
-    <el-col class="zhengce">
-      <el-col :span="24" class="topTitle">
-        {{ columnName }}
-      </el-col>
-      <el-col :span="24" class="info">
-        <el-table :data="jobsData" stripe style="width: 100%">
-          <el-table-column label="招聘信息名称" align="center">
-            <template slot-scope="scoped">
-              <el-tooltip effect="dark" content="点击显示详情" placement="left">
-                <el-col :span="24" @click.native="clickDetailgz(scoped.row)">{{ scoped.row.name }}</el-col>
-              </el-tooltip>
-            </template>
-          </el-table-column>
-          <el-table-column prop="profession" label="公司名称" align="center"> </el-table-column>
-          <el-table-column prop="workplace" label="工作地点" align="center"> </el-table-column>
-          <el-table-column prop="workexp" label="工作经验" align="center"> </el-table-column>
-          <el-table-column prop="people_number" label="招聘人数" align="center"> </el-table-column>
-          <el-table-column prop="education" label="学历" align="center"> </el-table-column>
-          <el-table-column prop="job_nature" label="工作性质" align="center">
-            <template v-slot="scoped">
-              {{ `${scoped.row.job_nature}` === `0` ? '兼职' : '全职' }}
-            </template>
-          </el-table-column>
-        </el-table>
-        <el-col class="page" :span="24">
-          <el-pagination
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
-            :current-page="currentPage"
-            layout="total,  prev, pager, next, jumper"
-            :total="total"
-          >
-          </el-pagination>
-        </el-col>
-      </el-col>
-    </el-col>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'rightcont',
-  props: {
-    jobsData: null,
-    columnName: null,
-    contentList: null,
-    total: null,
-  },
-  components: {},
-  data: () => ({
-    currentPage: 1,
-  }),
-  created() {},
-  computed: {},
-  methods: {
-    handleSizeChange(val) {
-      console.log(`每页 ${val} 条`);
-    },
-    handleCurrentChange(val) {
-      console.log(`当前页: ${val}`);
-    },
-    clickDetailgz(row) {
-      this.$emit('detail', { data: row });
-    },
-  },
-};
-</script>
-
-<style lang="less" scoped>
-ul {
-  margin: 0;
-}
-li {
-  padding: 0;
-  margin: 0;
-  color: #a8abb7;
-}
-.zhengce {
-  height: 660px;
-  padding: 20px;
-  overflow: hidden;
-}
-.topTitle {
-  font-size: 22px;
-  color: #22529a;
-  margin: 0 0 20px 0;
-}
-.info {
-  height: 570px;
-  overflow: hidden;
-}
-.info ul {
-  height: 510px;
-  overflow: hidden;
-  padding: 0 0 0 20px;
-}
-.info ul li {
-  float: left;
-  width: 100%;
-  padding: 0 0 13px 0;
-}
-.info ul li .title {
-  font-size: 16px;
-  color: #60636d;
-}
-.info ul li .date {
-  font-size: 16px;
-  color: #a8abb7;
-  text-align: right;
-}
-.info ul li:hover {
-  cursor: pointer;
-}
-.info ul li:hover .title {
-  color: #22529a;
-}
-.info ul li:hover .date {
-  color: #22529a;
-}
-.page {
-  padding: 11px 0;
-  text-align: center;
-}
-</style>

+ 0 - 87
src/layout/personnel/rightzpdetail.vue

@@ -1,87 +0,0 @@
-<template>
-  <div id="policyrightcont">
-    <el-row>
-      <el-col :span="24" class="info">
-        <el-col :span="24" class="topInfo">
-          <span>{{ columnTitle }}</span>
-        </el-col>
-        <el-col :span="24" class="infoMess">
-          <el-col :span="24" class="title">
-            {{ policyInfo.title }}
-          </el-col>
-          <el-col :span="24" class="infoDate">
-            <p>
-              <span>发布人:{{ policyInfo.publish }}</span>
-              <span>来源:{{ policyInfo.orgin }}</span>
-              <span>发布时间: {{ policyInfo.meta && policyInfo.meta.createdAt ? new Date(policyInfo.meta.createdAt).toLocaleDateString() : '' || '' }}</span>
-            </p>
-          </el-col>
-          <el-col v-if="policyInfo.picture" class="image">
-            <el-image style="width:50%" :src="policyInfo.picture"></el-image>
-          </el-col>
-          <el-col :span="24" class="content">
-            <p v-html="policyInfo.content"></p>
-          </el-col>
-        </el-col>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'policyrightcont',
-  props: {
-    columnTitle: null,
-    policyInfo: null,
-  },
-  components: {},
-  data: () => ({}),
-  created() {},
-  computed: {},
-  methods: {},
-};
-</script>
-
-<style lang="less" scoped>
-p {
-  padding: 0;
-  margin: 0;
-}
-.info {
-  padding: 0 20px;
-}
-.topInfo {
-  height: 60px;
-  line-height: 60px;
-  font-size: 22px;
-}
-.infoMess .title {
-  line-height: 30px;
-  text-align: center;
-  font-size: 16px;
-  font-weight: bold;
-  color: #000000;
-  margin: 0 0 20px 0;
-}
-.infoDate {
-  height: 36px;
-  line-height: 36px;
-}
-.infoDate p {
-  background: #eeeeee;
-  margin: 0 105px;
-}
-.infoDate p span {
-  font-size: 14px;
-  color: #000;
-  padding: 0 0 0 80px;
-}
-.infoMess .image {
-  text-align: center;
-  margin: 20px 0 0 0;
-}
-.content {
-  padding: 0px 0 20px 0;
-}
-</style>

+ 0 - 102
src/layout/personnel/rightzpdetailqita.vue

@@ -1,102 +0,0 @@
-<template>
-  <div id="policyrightcont">
-    <el-row>
-      <el-col :span="24" class="info">
-        <el-col :span="24" class="topInfo">
-          <span>{{ columnTitle }}</span>
-        </el-col>
-        <el-col :span="24" class="infoMess">
-          <el-col :span="24" class="title">
-            {{ policyInfo.title }}
-          </el-col>
-          <el-col :span="24" class="infoDate">
-            <p>
-              <span>发布人:{{ policyInfo.user_name }}</span>
-              <span>来源:{{ policyInfo.orgin }}</span>
-              <span>发布时间: {{ policyInfo.meta && policyInfo.meta.createdAt ? new Date(policyInfo.meta.createdAt).toLocaleDateString() : '' || '' }}</span>
-            </p>
-          </el-col>
-          <el-col v-if="policyInfo.picture" class="image">
-            <el-image style="width:50%" :src="policyInfo.picture"></el-image>
-          </el-col>
-          <el-col :span="24" class="content">
-            <p v-html="policyInfo.content"></p>
-          </el-col>
-        </el-col>
-      </el-col>
-    </el-row>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'policyrightcont',
-  props: {
-    columnTitle: null,
-    policyInfo: null,
-  },
-  components: {},
-  data: () => ({}),
-  created() {},
-  computed: {},
-  methods: {},
-};
-</script>
-
-<style lang="less" scoped>
-p {
-  padding: 0;
-  margin: 0;
-}
-.info {
-  padding: 0 20px;
-}
-.topInfo {
-  height: 60px;
-  line-height: 60px;
-  font-size: 22px;
-}
-.infoMess .title {
-  line-height: 30px;
-  text-align: center;
-  font-size: 16px;
-  font-weight: bold;
-  color: #000000;
-  margin: 0 0 20px 0;
-}
-.infoDate {
-  height: 36px;
-  line-height: 36px;
-}
-.infoDate p {
-  width: 700px;
-  background: #eeeeee;
-  margin: 0 105px;
-}
-.infoDate p span {
-  font-size: 14px;
-  color: #000;
-  padding: 0 0 0 80px;
-}
-.infoMess .image {
-  text-align: center;
-  margin: 20px 0 0 0;
-}
-.content {
-  padding: 0px 0 20px 0;
-}
-/deep/.el-table td {
-  padding: 8px 0;
-}
-/deep/.el-table th {
-  padding: 8px 0;
-  background-color: #f5f4f4;
-}
-/deep/ .el-table th.is-leaf {
-  border-bottom: none;
-  color: #000;
-}
-/deep/.el-table td {
-  border-bottom: none;
-}
-</style>

+ 19 - 18
src/router/index.js

@@ -167,36 +167,37 @@ const routes = [
     path: '/personnel/personnelexpert',
     component: () => import('../views/personnel/personnelexpert.vue'),
   },
-
+  // 科技人才找参谋详情
   {
     path: '/personnel/personnelcmdetail',
     component: () => import('../views/personnel/personnelcmdetail.vue'),
   },
-  //科技人才判断1
+
+  // 科技人才找招聘信息
   {
-    path: '/personnel/personnelqita',
-    component: () => import('../views/personnel/personnelqita.vue'),
+    path: '/personnel/recruitList',
+    component: () => import('../views/personnel/recruitList.vue'),
   },
-  //判断2
+  // 科技人才-就业指导
   {
-    path: '/personnel/personnelist',
-    name: 'personnelist',
-    component: () => import('../views/personnel/personnelist.vue'),
+    path: '/personnel/guidanceList',
+    component: () => import('../views/personnel/guidanceList.vue'),
   },
-
-  //科技人才-招聘信息
+  // 科技人才-学习实践
   {
-    path: '/personnel/recruit',
-    name: 'recruit',
-    component: () => import('../views/personnel/recruit.vue'),
+    path: '/personnel/practiceList',
+    component: () => import('../views/personnel/practiceList.vue'),
   },
-  // 科技人才-就业指导
+  // 科技人才-勤工俭学
   {
-    path: '/personnel/guidance',
-    name: 'guidance',
-    component: () => import('../views/personnel/guidance.vue'),
+    path: '/personnel/diligenceList',
+    component: () => import('../views/personnel/diligenceList.vue'),
+  },
+  // 科技人才-工作顾问
+  {
+    path: '/personnel/adviserList',
+    component: () => import('../views/personnel/adviserList.vue'),
   },
-
   // 个人中心-基本信息
   {
     path: '/personCenter/user',

+ 70 - 0
src/views/personnel/adviserList.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="adviserList">
+    <adviserList-detail :info="info" :liebiaoList="liebiaoList" @onsave="onsaveClick" :columnName="columnName"></adviserList-detail>
+  </div>
+</template>
+
+<script>
+import adviserListDetail from '@/components/personnel/adviserList.vue';
+import { createNamespacedHelpers, mapGetters } from 'vuex';
+const { mapActions: mapSite } = createNamespacedHelpers('site');
+const { mapActions: mapColumn } = createNamespacedHelpers('policiesColumn');
+export default {
+  name: 'adviserList',
+  props: {},
+  components: {
+    adviserListDetail,
+  },
+  data: () => ({
+    info: {},
+    liebiaoList: [],
+    columnName: '',
+  }),
+  created() {
+    this.searchSite();
+    this.searchColumn();
+    this.searchName();
+  },
+  computed: {},
+  methods: {
+    ...mapSite(['showInfo']),
+    ...mapColumn({ columnList: 'query', columnInfo: 'fetch' }),
+    // 查询站点信息
+    async searchSite() {
+      let res = await this.showInfo();
+      let object = JSON.parse(JSON.stringify(res.data));
+      if (object) {
+        this.$set(this, `info`, res.data);
+      } else {
+        this.$message.error(res.errmsg ? res.errmsg : 'error');
+      }
+    },
+    // 查询科技政务栏目
+    async searchColumn({ ...info } = {}) {
+      const res = await this.columnList({ ...info });
+      this.$set(this, `liebiaoList`, res.data);
+    },
+    async onsaveClick({ id }) {
+      const res = await this.columnInfo(id);
+      if (res.data.name === '招聘信息') {
+        this.$router.push({ path: '/personnel/recruitList', query: { id: id } });
+      } else if (res.data.name === '就业指导') {
+        this.$router.push({ path: '/personnel/guidanceList', query: { id: id } });
+      } else if (res.data.name === '学习实践') {
+        this.$router.push({ path: '/personnel/practiceList', query: { id: id } });
+      } else if (res.data.name === '勤工俭学') {
+        this.$router.push({ path: '/personnel/diligenceList', query: { id: id } });
+      } else if (res.data.name === '工作顾问') {
+        this.$router.push({ path: '/personnel/adviserList', query: { id: id } });
+      }
+    },
+    async searchName() {
+      let nameId = this.$route.query.id;
+      const res = await this.columnInfo(nameId);
+      this.$set(this, `columnName`, res.data.name);
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>

+ 70 - 0
src/views/personnel/diligenceList.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="diligenceList">
+    <diligenceList-detail :info="info" :liebiaoList="liebiaoList" @onsave="onsaveClick" :columnName="columnName"></diligenceList-detail>
+  </div>
+</template>
+
+<script>
+import diligenceListDetail from '@/components/personnel/diligenceList.vue';
+import { createNamespacedHelpers, mapGetters } from 'vuex';
+const { mapActions: mapSite } = createNamespacedHelpers('site');
+const { mapActions: mapColumn } = createNamespacedHelpers('policiesColumn');
+export default {
+  name: 'diligenceList',
+  props: {},
+  components: {
+    diligenceListDetail,
+  },
+  data: () => ({
+    info: {},
+    liebiaoList: [],
+    columnName: '',
+  }),
+  created() {
+    this.searchSite();
+    this.searchColumn();
+    this.searchName();
+  },
+  computed: {},
+  methods: {
+    ...mapSite(['showInfo']),
+    ...mapColumn({ columnList: 'query', columnInfo: 'fetch' }),
+    // 查询站点信息
+    async searchSite() {
+      let res = await this.showInfo();
+      let object = JSON.parse(JSON.stringify(res.data));
+      if (object) {
+        this.$set(this, `info`, res.data);
+      } else {
+        this.$message.error(res.errmsg ? res.errmsg : 'error');
+      }
+    },
+    // 查询科技政务栏目
+    async searchColumn({ ...info } = {}) {
+      const res = await this.columnList({ ...info });
+      this.$set(this, `liebiaoList`, res.data);
+    },
+    async onsaveClick({ id }) {
+      const res = await this.columnInfo(id);
+      if (res.data.name === '招聘信息') {
+        this.$router.push({ path: '/personnel/recruitList', query: { id: id } });
+      } else if (res.data.name === '就业指导') {
+        this.$router.push({ path: '/personnel/guidanceList', query: { id: id } });
+      } else if (res.data.name === '学习实践') {
+        this.$router.push({ path: '/personnel/practiceList', query: { id: id } });
+      } else if (res.data.name === '勤工俭学') {
+        this.$router.push({ path: '/personnel/diligenceList', query: { id: id } });
+      } else if (res.data.name === '工作顾问') {
+        this.$router.push({ path: '/personnel/adviserList', query: { id: id } });
+      }
+    },
+    async searchName() {
+      let nameId = this.$route.query.id;
+      const res = await this.columnInfo(nameId);
+      this.$set(this, `columnName`, res.data.name);
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>

+ 0 - 47
src/views/personnel/guidance.vue

@@ -1,47 +0,0 @@
-<template>
-  <div id="guidance">
-    <guidance-detail :info="info" :directData="directData"></guidance-detail>
-  </div>
-</template>
-
-<script>
-import guidanceDetail from '@/components/personnel/guidance.vue';
-export default {
-  name: 'guidance',
-  props: {},
-  components: {
-    guidanceDetail,
-  },
-  data: () => ({
-    info: {
-      logo: require('@/assets/logo.png'),
-      banquan: '版权所有:吉林省计算中心',
-      jishu: '技术支持:长春市福瑞科技有限公司',
-      youbian: '邮编:130000',
-      chuanzhen: '传真:239823982',
-      address: '地址:吉林省长春市朝阳区前进大街1244号',
-      phone: '电话:0431-1234567',
-      email: '邮箱:123456@163.com',
-    },
-    directData: [
-      {
-        title: '标题',
-        type: '就业指导',
-        person: 'HSD',
-        date: '2019-01-02',
-      },
-      {
-        title: '十条数据',
-        type: '就业指导',
-        person: 'HSD',
-        date: '2019-01-02',
-      },
-    ],
-  }),
-  created() {},
-  computed: {},
-  methods: {},
-};
-</script>
-
-<style lang="less" scoped></style>

+ 70 - 0
src/views/personnel/guidanceList.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="guidanceList">
+    <guidanceList-detail :info="info" :liebiaoList="liebiaoList" @onsave="onsaveClick" :columnName="columnName"></guidanceList-detail>
+  </div>
+</template>
+
+<script>
+import guidanceListDetail from '@/components/personnel/guidanceList.vue';
+import { createNamespacedHelpers, mapGetters } from 'vuex';
+const { mapActions: mapSite } = createNamespacedHelpers('site');
+const { mapActions: mapColumn } = createNamespacedHelpers('policiesColumn');
+export default {
+  name: 'guidanceList',
+  props: {},
+  components: {
+    guidanceListDetail,
+  },
+  data: () => ({
+    info: {},
+    liebiaoList: [],
+    columnName: '',
+  }),
+  created() {
+    this.searchSite();
+    this.searchColumn();
+    this.searchName();
+  },
+  computed: {},
+  methods: {
+    ...mapSite(['showInfo']),
+    ...mapColumn({ columnList: 'query', columnInfo: 'fetch' }),
+    // 查询站点信息
+    async searchSite() {
+      let res = await this.showInfo();
+      let object = JSON.parse(JSON.stringify(res.data));
+      if (object) {
+        this.$set(this, `info`, res.data);
+      } else {
+        this.$message.error(res.errmsg ? res.errmsg : 'error');
+      }
+    },
+    // 查询科技政务栏目
+    async searchColumn({ ...info } = {}) {
+      const res = await this.columnList({ ...info });
+      this.$set(this, `liebiaoList`, res.data);
+    },
+    async onsaveClick({ id }) {
+      const res = await this.columnInfo(id);
+      if (res.data.name === '招聘信息') {
+        this.$router.push({ path: '/personnel/recruitList', query: { id: id } });
+      } else if (res.data.name === '就业指导') {
+        this.$router.push({ path: '/personnel/guidanceList', query: { id: id } });
+      } else if (res.data.name === '学习实践') {
+        this.$router.push({ path: '/personnel/practiceList', query: { id: id } });
+      } else if (res.data.name === '勤工俭学') {
+        this.$router.push({ path: '/personnel/diligenceList', query: { id: id } });
+      } else if (res.data.name === '工作顾问') {
+        this.$router.push({ path: '/personnel/adviserList', query: { id: id } });
+      }
+    },
+    async searchName() {
+      let nameId = this.$route.query.id;
+      const res = await this.columnInfo(nameId);
+      this.$set(this, `columnName`, res.data.name);
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>

+ 21 - 19
src/views/personnel/personnel.vue

@@ -76,8 +76,6 @@ export default {
     this.searchInfojobs();
     this.searchInfozhuanjia();
     this.searchInfomapcanmou();
-
-    // this.searchRencaiShow();
   },
   computed: {},
   methods: {
@@ -111,52 +109,56 @@ export default {
         this.$set(this, `rencaiShowList`, res.data);
       }
     },
-
+    // 查询找工作
     async searchInfojobs({ skip = 0, limit = 10, ...info } = {}) {
       const res = await this.xinxiList({ skip, limit, ...info });
       if (this.$checkRes(res)) {
         this.$set(this, `jobsData`, res.data);
       }
     },
+    // 查询找专家
     async searchInfozhuanjia({ skip = 0, limit = 10, ...info } = {}) {
       const res = await this.zhuanjiaList({ skip, limit, ...info });
       if (this.$checkRes(res)) {
         this.$set(this, `zhuanjiaData`, res.data);
       }
     },
+    // 查询找参谋
     async searchInfomapcanmou({ skip = 0, limit = 10, ...info } = {}) {
       const res = await this.canmouList({ skip, limit, ...info });
       if (this.$checkRes(res)) {
         this.$set(this, `canmoData`, res.data);
       }
     },
+    // 人才详情
     clickDetail({ data }) {
-      // 点击这个方法,跳转页面,并把id传过去,并用id查询详情
       this.$router.push({ path: '/personnel/rencai', query: { id: data.id } });
     },
+    // 工作详情
     clickDetailgz({ data }) {
-      // 点击这个方法,跳转页面,并把id传过去,并用id查询详情
       this.$router.push({ path: '/personnel/personnelwork', query: { id: data.id } });
     },
-
+    // 专家详情
     clickDetailzj({ data }) {
-      // 点击这个方法,跳转页面,并把id传过去,并用id查询详情
       this.$router.push({ path: '/personnel/personnelexpert', query: { id: data.id } });
     },
+    // 参谋详情
     clickDetailcm({ data }) {
-      // 点击这个方法,跳转页面,并把id传过去,并用id查询详情
-      this.$router.push({ path: '/personnel/dpersonnelcmdetail', query: { id: data.id } });
+      this.$router.push({ path: '/personnel/personnelcmdetail', query: { id: data.id } });
     },
-    onsaveClick({ id }) {
-      let detailId = this.$route.query.id;
-
-      console.log(id);
-      // if (id) {
-
-      //   this.$router.push({ path: '/personnel/personnelcmdetail', query: { id: id } });
-      // } else {
-      //   this.$router.push({ path: '/shuji/shuju', query: { id: id } });
-      // }
+    async onsaveClick({ id }) {
+      const res = await this.columnInfo(id);
+      if (res.data.name === '招聘信息') {
+        this.$router.push({ path: '/personnel/recruitList', query: { id: id } });
+      } else if (res.data.name === '就业指导') {
+        this.$router.push({ path: '/personnel/guidanceList', query: { id: id } });
+      } else if (res.data.name === '学习实践') {
+        this.$router.push({ path: '/personnel/practiceList', query: { id: id } });
+      } else if (res.data.name === '勤工俭学') {
+        this.$router.push({ path: '/personnel/diligenceList', query: { id: id } });
+      } else if (res.data.name === '工作顾问') {
+        this.$router.push({ path: '/personnel/adviserList', query: { id: id } });
+      }
     },
   },
 };

+ 2 - 9
src/views/personnel/personnelexpert.vue

@@ -1,6 +1,6 @@
 <template>
   <div id="personnel">
-    <personnelexpert-detail :info="info" :policyInfo="policyInfo" :liebiaoList="liebiaoList"></personnelexpert-detail>
+    <personnelexpert-detail :info="info" :policyInfo="policyInfo"></personnelexpert-detail>
   </div>
 </template>
 
@@ -18,14 +18,12 @@ export default {
     personnelexpertDetail,
   },
   data: () => ({
-    policyInfo: {},
     info: {},
-    liebiaoList: [],
+    policyInfo: {},
   }),
   async created() {
     this.searchSite();
     this.searchInfo();
-    this.searchColumn();
   },
   computed: {},
   methods: {
@@ -42,15 +40,10 @@ export default {
         this.$message.error(res.errmsg ? res.errmsg : 'error');
       }
     },
-    async searchColumn({ ...info } = {}) {
-      const res = await this.columnList({ ...info });
-      this.$set(this, `liebiaoList`, res.data);
-    },
     async searchInfo() {
       let detailId = this.$route.query.id;
       const res = await this.newsInfo(detailId);
       this.$set(this, `policyInfo`, res.data);
-      console.log(res.data);
     },
   },
 };

+ 0 - 116
src/views/personnel/personnelist.vue

@@ -1,116 +0,0 @@
-<template>
-  <div id="shujulist">
-    <personnelist-detail
-      :info="info"
-      :liebiaoList="liebiaoList"
-      :display="display"
-      :columnName="columnName"
-      :contentList="contentList"
-      :total="total"
-      :columnTitle="columnTitle"
-      :policyInfo="policyInfo"
-      @clickLists="submit"
-      @fetch="fetchInfo"
-      @detailgz="clickDetailgz"
-      :jobsData="jobsData"
-    ></personnelist-detail>
-  </div>
-</template>
-
-<script>
-import personnelistDetail from '@/components/personnel/personnelist.vue';
-import { createNamespacedHelpers, mapGetters } from 'vuex';
-import _ from 'loadsh';
-const { mapActions: mapSite } = createNamespacedHelpers('site');
-const { mapActions: mappolicyColumn } = createNamespacedHelpers('policiesColumn');
-const { mapActions: mappolicyNews } = createNamespacedHelpers('policiesxinxi');
-// policiesxinxi
-export default {
-  name: 'shujulist',
-  props: {},
-  components: { personnelistDetail },
-  data: () => ({
-    info: {},
-    liebiaoList: [],
-    display: 'list',
-    columnName: '',
-    contentList: [],
-    total: 1,
-    leftId: '',
-    columnTitle: '',
-    policyInfo: {},
-    jobsData: [],
-  }),
-  async created() {
-    this.searchSite();
-    await this.policyColumn();
-    await this.defaultColumn();
-    await this.searchInfojobs();
-  },
-  computed: {},
-  methods: {
-    ...mapSite(['showInfo']),
-    ...mappolicyColumn({ policyColumns: 'query', policyfetch: 'fetch' }),
-    ...mappolicyNews({ policyNew: 'query', newsFetch: 'fetch' }),
-    // 查询站点信息
-    async searchSite() {
-      let res = await this.showInfo();
-      let object = JSON.parse(JSON.stringify(res.data));
-      if (object) {
-        this.$set(this, `info`, res.data);
-      } else {
-        this.$message.error(res.errmsg ? res.errmsg : 'error');
-      }
-    },
-    async policyColumn({ ...info } = {}) {
-      const res = await this.policyColumns({ ...info });
-      if (this.$checkRes(res)) {
-        this.$set(this, `liebiaoList`, res.data);
-      }
-    },
-    async searchInfojobs({ skip = 0, limit = 10, ...info } = {}) {
-      const res = await this.policyNew({ skip, limit, ...info });
-      if (this.$checkRes(res)) {
-        this.$set(this, `jobsData`, res.data);
-      }
-    },
-    submit({ id }) {
-      this.$set(this, `leftId`, id);
-      this.display = 'list';
-      this.searchRight();
-    },
-    async searchRight({ skip = 0, limit = 10, column_id } = {}) {
-      const res = await this.policyNew({ skip, limit, column_id: this.leftId });
-      for (const val of res.data) {
-        const result = await this.policyfetch(val.column_id);
-        val.column_name = result.data.name;
-      }
-      this.$set(this, `contentList`, res.data);
-      this.$set(this, `total`, res.data.length);
-      for (const val of res.data) {
-        this.$set(this, `columnName`, val.column_name);
-      }
-    },
-    async defaultColumn() {
-      if (!(this.liebiaoList.length > 0)) return;
-      let id = _.get(this.liebiaoList[0], 'id', false);
-      if (!id) return;
-      this.submit({ id });
-    },
-    async fetchInfo(id) {
-      this.display = 'detail';
-      const res = await this.newsFetch(id);
-      const result = await this.policyfetch(res.data.column_id);
-      this.$set(this, `columnTitle`, result.data.name);
-      this.$set(this, `policyInfo`, res.data);
-      // 查询详情,赋值
-    },
-    clickDetailgz({ data }) {
-      // 点击这个方法,跳转页面,并把id传过去,并用id查询详情
-      this.$router.push({ path: '/personnel/personnelwork', query: { id: data.id } });
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped></style>

+ 0 - 116
src/views/personnel/personnelqita.vue

@@ -1,116 +0,0 @@
-<template>
-  <div id="shujulist">
-    <personnelqita-detail
-      :info="info"
-      :liebiaoList="liebiaoList"
-      :display="display"
-      :columnName="columnName"
-      :contentList="contentList"
-      :total="total"
-      :columnTitle="columnTitle"
-      :policyInfo="policyInfo"
-      @clickLists="submit"
-      @fetch="fetchInfo"
-      @detail="clickDetail"
-      @detailgz="clickDetailcm"
-      :canmoData="canmoData"
-    ></personnelqita-detail>
-  </div>
-</template>
-
-<script>
-import personnelqitaDetail from '@/components/personnel/personnelqita.vue';
-import { createNamespacedHelpers, mapGetters } from 'vuex';
-import _ from 'loadsh';
-const { mapActions: mapSite } = createNamespacedHelpers('site');
-const { mapActions: mappolicyColumn } = createNamespacedHelpers('policiesColumn');
-const { mapActions: mappolicyNews } = createNamespacedHelpers('policiesjbxx');
-// policiesxinxi policiesxinxi
-export default {
-  name: 'shujulist',
-  props: {},
-  components: { personnelqitaDetail },
-  data: () => ({
-    info: {},
-    liebiaoList: [],
-    canmoData: [],
-    display: 'list',
-    columnName: '',
-    contentList: [],
-    total: 1,
-    leftId: '',
-    columnTitle: '',
-    policyInfo: {},
-  }),
-  async created() {
-    this.searchSite();
-    await this.policyColumn();
-    await this.defaultColumn();
-  },
-  computed: {},
-  methods: {
-    ...mapSite(['showInfo']),
-    ...mappolicyColumn({ policyColumns: 'query', policyfetch: 'fetch' }),
-    ...mappolicyNews({ policyNew: 'query', newsFetch: 'fetch' }),
-    // 查询站点信息
-    async searchSite() {
-      let res = await this.showInfo();
-      let object = JSON.parse(JSON.stringify(res.data));
-      if (object) {
-        this.$set(this, `info`, res.data);
-      } else {
-        this.$message.error(res.errmsg ? res.errmsg : 'error');
-      }
-    },
-    async policyColumn({ ...info } = {}) {
-      const res = await this.policyColumns({ ...info });
-      if (this.$checkRes(res)) {
-        this.$set(this, `liebiaoList`, res.data);
-      }
-    },
-    async searchInfojobs({ skip = 0, limit = 10, ...info } = {}) {
-      const res = await this.policyNew({ skip, limit, ...info });
-      if (this.$checkRes(res)) {
-        this.$set(this, `canmoData`, res.data);
-      }
-    },
-    submit({ id }) {
-      this.$set(this, `leftId`, id);
-      this.display = 'list';
-      this.searchRight();
-    },
-    async searchRight({ skip = 0, limit = 10, column_id } = {}) {
-      const res = await this.policyNew({ skip, limit, column_id: this.leftId });
-      for (const val of res.data) {
-        const result = await this.policyfetch(val.column_id);
-        val.column_name = result.data.name;
-      }
-      this.$set(this, `contentList`, res.data);
-      this.$set(this, `total`, res.data.length);
-      for (const val of res.data) {
-        this.$set(this, `columnName`, val.column_name);
-      }
-    },
-    async defaultColumn() {
-      if (!(this.liebiaoList.length > 0)) return;
-      let id = _.get(this.liebiaoList[0], 'id', false);
-      if (!id) return;
-      this.submit({ id });
-    },
-    async fetchInfo(id) {
-      this.display = 'detail';
-      const res = await this.newsFetch(id);
-      const result = await this.policyfetch(res.data.column_id);
-      this.$set(this, `columnTitle`, result.data.name);
-      this.$set(this, `policyInfo`, res.data);
-      // 查询详情,赋值
-    },
-    clickDetailcm({ data }) {
-      // 点击这个方法,跳转页面,并把id传过去,并用id查询详情
-      this.$router.push({ path: '/personnel/personnelwork', query: { id: data.id } });
-    },
-  },
-};
-</script>
-
-<style lang="scss" scoped></style>

+ 70 - 0
src/views/personnel/practiceList.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="practiceList">
+    <practiceList-detail :info="info" :liebiaoList="liebiaoList" @onsave="onsaveClick" :columnName="columnName"></practiceList-detail>
+  </div>
+</template>
+
+<script>
+import practiceListDetail from '@/components/personnel/practiceList.vue';
+import { createNamespacedHelpers, mapGetters } from 'vuex';
+const { mapActions: mapSite } = createNamespacedHelpers('site');
+const { mapActions: mapColumn } = createNamespacedHelpers('policiesColumn');
+export default {
+  name: 'practiceList',
+  props: {},
+  components: {
+    practiceListDetail,
+  },
+  data: () => ({
+    info: {},
+    liebiaoList: [],
+    columnName: '',
+  }),
+  created() {
+    this.searchSite();
+    this.searchColumn();
+    this.searchName();
+  },
+  computed: {},
+  methods: {
+    ...mapSite(['showInfo']),
+    ...mapColumn({ columnList: 'query', columnInfo: 'fetch' }),
+    // 查询站点信息
+    async searchSite() {
+      let res = await this.showInfo();
+      let object = JSON.parse(JSON.stringify(res.data));
+      if (object) {
+        this.$set(this, `info`, res.data);
+      } else {
+        this.$message.error(res.errmsg ? res.errmsg : 'error');
+      }
+    },
+    // 查询科技政务栏目
+    async searchColumn({ ...info } = {}) {
+      const res = await this.columnList({ ...info });
+      this.$set(this, `liebiaoList`, res.data);
+    },
+    async onsaveClick({ id }) {
+      const res = await this.columnInfo(id);
+      if (res.data.name === '招聘信息') {
+        this.$router.push({ path: '/personnel/recruitList', query: { id: id } });
+      } else if (res.data.name === '就业指导') {
+        this.$router.push({ path: '/personnel/guidanceList', query: { id: id } });
+      } else if (res.data.name === '学习实践') {
+        this.$router.push({ path: '/personnel/practiceList', query: { id: id } });
+      } else if (res.data.name === '勤工俭学') {
+        this.$router.push({ path: '/personnel/diligenceList', query: { id: id } });
+      } else if (res.data.name === '工作顾问') {
+        this.$router.push({ path: '/personnel/adviserList', query: { id: id } });
+      }
+    },
+    async searchName() {
+      let nameId = this.$route.query.id;
+      const res = await this.columnInfo(nameId);
+      this.$set(this, `columnName`, res.data.name);
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>

+ 0 - 55
src/views/personnel/recruit.vue

@@ -1,55 +0,0 @@
-<template>
-  <div id="recruit">
-    <recruit-detail :info="info" :recruitData="recruitData"></recruit-detail>
-  </div>
-</template>
-
-<script>
-import recruitDetail from '@/components/personnel/recruit.vue';
-export default {
-  name: 'recruit',
-  props: {},
-  components: {
-    recruitDetail,
-  },
-  data: () => ({
-    info: {
-      logo: require('@/assets/logo.png'),
-      banquan: '版权所有:吉林省计算中心',
-      jishu: '技术支持:长春市福瑞科技有限公司',
-      youbian: '邮编:130000',
-      chuanzhen: '传真:239823982',
-      address: '地址:吉林省长春市朝阳区前进大街1244号',
-      phone: '电话:0431-1234567',
-      email: '邮箱:123456@163.com',
-    },
-    recruitData: [
-      {
-        title: '标题',
-        company: '长春福瑞科技有限公司',
-        address: '吉林省长春市',
-        jingyan: '无经验',
-        num: '2',
-        edu: '本科',
-        xinzi: '1k-2k',
-        date: '2019-01-02',
-      },
-      {
-        title: '标题',
-        company: '六条数据',
-        address: '吉林省长春市',
-        jingyan: '无经验',
-        num: '2',
-        edu: '本科',
-        xinzi: '1k-2k',
-        date: '2019-01-02',
-      },
-    ],
-  }),
-  created() {},
-  computed: {},
-  methods: {},
-};
-</script>
-
-<style lang="less" scoped></style>

+ 70 - 0
src/views/personnel/recruitList.vue

@@ -0,0 +1,70 @@
+<template>
+  <div id="recruitList">
+    <recruitList-detail :info="info" :liebiaoList="liebiaoList" @onsave="onsaveClick" :columnName="columnName"></recruitList-detail>
+  </div>
+</template>
+
+<script>
+import recruitListDetail from '@/components/personnel/recruitList.vue';
+import { createNamespacedHelpers, mapGetters } from 'vuex';
+const { mapActions: mapSite } = createNamespacedHelpers('site');
+const { mapActions: mapColumn } = createNamespacedHelpers('policiesColumn');
+export default {
+  name: 'recruitList',
+  props: {},
+  components: {
+    recruitListDetail,
+  },
+  data: () => ({
+    info: {},
+    liebiaoList: [],
+    columnName: '',
+  }),
+  created() {
+    this.searchSite();
+    this.searchColumn();
+    this.searchName();
+  },
+  computed: {},
+  methods: {
+    ...mapSite(['showInfo']),
+    ...mapColumn({ columnList: 'query', columnInfo: 'fetch' }),
+    // 查询站点信息
+    async searchSite() {
+      let res = await this.showInfo();
+      let object = JSON.parse(JSON.stringify(res.data));
+      if (object) {
+        this.$set(this, `info`, res.data);
+      } else {
+        this.$message.error(res.errmsg ? res.errmsg : 'error');
+      }
+    },
+    // 查询科技政务栏目
+    async searchColumn({ ...info } = {}) {
+      const res = await this.columnList({ ...info });
+      this.$set(this, `liebiaoList`, res.data);
+    },
+    async onsaveClick({ id }) {
+      const res = await this.columnInfo(id);
+      if (res.data.name === '招聘信息') {
+        this.$router.push({ path: '/personnel/recruitList', query: { id: id } });
+      } else if (res.data.name === '就业指导') {
+        this.$router.push({ path: '/personnel/guidanceList', query: { id: id } });
+      } else if (res.data.name === '学习实践') {
+        this.$router.push({ path: '/personnel/practiceList', query: { id: id } });
+      } else if (res.data.name === '勤工俭学') {
+        this.$router.push({ path: '/personnel/diligenceList', query: { id: id } });
+      } else if (res.data.name === '工作顾问') {
+        this.$router.push({ path: '/personnel/adviserList', query: { id: id } });
+      }
+    },
+    async searchName() {
+      let nameId = this.$route.query.id;
+      const res = await this.columnInfo(nameId);
+      this.$set(this, `columnName`, res.data.name);
+    },
+  },
+};
+</script>
+
+<style lang="less" scoped></style>