Эх сурвалжийг харах

提交招工,求职功能代码

Jing 3 өдөр өмнө
parent
commit
4dcd678ef2

+ 8 - 0
.nuxt/components.d.ts

@@ -11,10 +11,12 @@ interface _GlobalComponents {
     'HomeBigSwiper': typeof import("../components/home/BigSwiper.vue")['default']
     'HomeBigTitleList': typeof import("../components/home/BigTitle_List.vue")['default']
     'HomeListSecondaryHeading': typeof import("../components/home/ListSecondaryHeading.vue")['default']
+    'HomeListSecondaryHeadingZgzp': typeof import("../components/home/ListSecondaryHeading_zgzp.vue")['default']
     'HomePageMessage': typeof import("../components/home/PageMessage.vue")['default']
     'HomePagination': typeof import("../components/home/Pagination.vue")['default']
     'HomeSecondaryHeading': typeof import("../components/home/SecondaryHeading.vue")['default']
     'HomeSecondaryHeadingShukan': typeof import("../components/home/SecondaryHeading_shukan.vue")['default']
+    'HomeSecondaryHeadingZgzp': typeof import("../components/home/SecondaryHeading_zgzp.vue")['default']
     'HomeSmallSwiper1': typeof import("../components/home/SmallSwiper1.vue")['default']
     'HomeSmallSwiperNmg': typeof import("../components/home/SmallSwiperNmg.vue")['default']
     'HomeSmallSwiperTwo': typeof import("../components/home/SmallSwiperTwo.vue")['default']
@@ -61,10 +63,12 @@ interface _GlobalComponents {
     'LazyHomeBigSwiper': typeof import("../components/home/BigSwiper.vue")['default']
     'LazyHomeBigTitleList': typeof import("../components/home/BigTitle_List.vue")['default']
     'LazyHomeListSecondaryHeading': typeof import("../components/home/ListSecondaryHeading.vue")['default']
+    'LazyHomeListSecondaryHeadingZgzp': typeof import("../components/home/ListSecondaryHeading_zgzp.vue")['default']
     'LazyHomePageMessage': typeof import("../components/home/PageMessage.vue")['default']
     'LazyHomePagination': typeof import("../components/home/Pagination.vue")['default']
     'LazyHomeSecondaryHeading': typeof import("../components/home/SecondaryHeading.vue")['default']
     'LazyHomeSecondaryHeadingShukan': typeof import("../components/home/SecondaryHeading_shukan.vue")['default']
+    'LazyHomeSecondaryHeadingZgzp': typeof import("../components/home/SecondaryHeading_zgzp.vue")['default']
     'LazyHomeSmallSwiper1': typeof import("../components/home/SmallSwiper1.vue")['default']
     'LazyHomeSmallSwiperNmg': typeof import("../components/home/SmallSwiperNmg.vue")['default']
     'LazyHomeSmallSwiperTwo': typeof import("../components/home/SmallSwiperTwo.vue")['default']
@@ -117,10 +121,12 @@ export const HomeAdvertisingClass: typeof import("../components/home/Advertising
 export const HomeBigSwiper: typeof import("../components/home/BigSwiper.vue")['default']
 export const HomeBigTitleList: typeof import("../components/home/BigTitle_List.vue")['default']
 export const HomeListSecondaryHeading: typeof import("../components/home/ListSecondaryHeading.vue")['default']
+export const HomeListSecondaryHeadingZgzp: typeof import("../components/home/ListSecondaryHeading_zgzp.vue")['default']
 export const HomePageMessage: typeof import("../components/home/PageMessage.vue")['default']
 export const HomePagination: typeof import("../components/home/Pagination.vue")['default']
 export const HomeSecondaryHeading: typeof import("../components/home/SecondaryHeading.vue")['default']
 export const HomeSecondaryHeadingShukan: typeof import("../components/home/SecondaryHeading_shukan.vue")['default']
+export const HomeSecondaryHeadingZgzp: typeof import("../components/home/SecondaryHeading_zgzp.vue")['default']
 export const HomeSmallSwiper1: typeof import("../components/home/SmallSwiper1.vue")['default']
 export const HomeSmallSwiperNmg: typeof import("../components/home/SmallSwiperNmg.vue")['default']
 export const HomeSmallSwiperTwo: typeof import("../components/home/SmallSwiperTwo.vue")['default']
@@ -167,10 +173,12 @@ export const LazyHomeAdvertisingClass: typeof import("../components/home/Adverti
 export const LazyHomeBigSwiper: typeof import("../components/home/BigSwiper.vue")['default']
 export const LazyHomeBigTitleList: typeof import("../components/home/BigTitle_List.vue")['default']
 export const LazyHomeListSecondaryHeading: typeof import("../components/home/ListSecondaryHeading.vue")['default']
+export const LazyHomeListSecondaryHeadingZgzp: typeof import("../components/home/ListSecondaryHeading_zgzp.vue")['default']
 export const LazyHomePageMessage: typeof import("../components/home/PageMessage.vue")['default']
 export const LazyHomePagination: typeof import("../components/home/Pagination.vue")['default']
 export const LazyHomeSecondaryHeading: typeof import("../components/home/SecondaryHeading.vue")['default']
 export const LazyHomeSecondaryHeadingShukan: typeof import("../components/home/SecondaryHeading_shukan.vue")['default']
+export const LazyHomeSecondaryHeadingZgzp: typeof import("../components/home/SecondaryHeading_zgzp.vue")['default']
 export const LazyHomeSmallSwiper1: typeof import("../components/home/SmallSwiper1.vue")['default']
 export const LazyHomeSmallSwiperNmg: typeof import("../components/home/SmallSwiperNmg.vue")['default']
 export const LazyHomeSmallSwiperTwo: typeof import("../components/home/SmallSwiperTwo.vue")['default']

+ 1 - 1
.nuxt/manifest/latest.json

@@ -1 +1 @@
-{"id":"24460f1f-0efb-40d0-89e3-0f11b7f1b586","timestamp":1748931018731}
+{"id":"b7d680f5-9175-4433-95c2-fa2c369743f7","timestamp":1749091532001}

+ 0 - 1
.nuxt/manifest/meta/24460f1f-0efb-40d0-89e3-0f11b7f1b586.json

@@ -1 +0,0 @@
-{"id":"24460f1f-0efb-40d0-89e3-0f11b7f1b586","timestamp":1748931018731,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 1 - 0
.nuxt/manifest/meta/b7d680f5-9175-4433-95c2-fa2c369743f7.json

@@ -0,0 +1 @@
+{"id":"b7d680f5-9175-4433-95c2-fa2c369743f7","timestamp":1749091532001,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}

+ 1 - 1
.nuxt/nuxt.d.ts

@@ -1,6 +1,6 @@
 // Generated by nuxi
-/// <reference types="@nuxt/telemetry" />
 /// <reference types="@nuxt/devtools" />
+/// <reference types="@nuxt/telemetry" />
 /// <reference path="types/builder-env.d.ts" />
 /// <reference types="nuxt" />
 /// <reference path="types/app-defaults.d.ts" />

+ 1 - 1
.nuxt/tsconfig.json

@@ -102,7 +102,7 @@
         "./imports"
       ],
       "#app-manifest": [
-        "./manifest/meta/24460f1f-0efb-40d0-89e3-0f11b7f1b586.json"
+        "./manifest/meta/b7d680f5-9175-4433-95c2-fa2c369743f7.json"
       ],
       "#components": [
         "./components"

+ 116 - 0
components/home/ListSecondaryHeading_zgzp.vue

@@ -0,0 +1,116 @@
+<template>
+    <section class="channel_1 clearfix">
+        <div class="channel_head_box clearfix">
+            <NuxtLink :href="`/${pinyin}/index.html`" class="channel_head_a_name" :title="name">
+                {{ name }}
+            </NuxtLink>
+            <div class="channel_head_a_img_box back100"></div>
+        </div>
+    </section>
+</template>
+
+<script setup>
+//1.设置组件数据 start---------------------------------------->
+//子导航
+const props = defineProps({
+    name: String,
+    nav: Array,
+    pinyin: String,
+});
+
+//获取当前url路径
+const route = useRoute();
+//获得当前的完整路径
+const fullPath = route.path;
+const segments = fullPath.split('/');
+const targetRoute = segments[1];
+//1.设置组件数据 end---------------------------------------->
+
+</script>
+
+<style lang="less" scoped>
+/*农民工网-频道页*/
+.channel_1 {
+    width: 1200px;
+    margin: 0 auto;
+}
+
+.channel_head_box {
+    text-align: center;
+    border-top-left-radius: 3px;
+    border-top-right-radius: 3px;
+    border: solid 1px #D9D9D9;
+    margin-top: 40px;
+    box-sizing: border-box;
+    border-bottom: solid 2px #489D97;
+    background: #fafafa;
+    box-sizing: border-box;
+
+    .channel_head_a {
+        position: relative;
+        height: 18px;
+        line-height: 18px;
+        color: #333;
+        font-size: 14px;
+        border-top-left-radius: 3px;
+        border-top-right-radius: 3px;
+        float: left;
+        padding: 0px 24px;
+        text-align: center;
+        box-sizing: border-box;
+        margin: 5px 0px 5px -2px;
+
+        &:hover {
+            color: #489D97;
+        }
+    }
+
+    .channel_head_a::after {
+        content: '';
+        display: block;
+        position: absolute;
+        width: 2px;
+        height: 12px;
+        background: #DBDBDB;
+        top: 3px;
+        left: -1px;
+    }
+}
+
+.channel_head_a_name_box {
+    display: flex;
+    margin-top: auto;
+}
+
+.channel_head_a_name {
+    display: inline-block;
+    background: #489D97;
+    font-size: 18px;
+    font-weight: bold;
+    color: #fff;
+    padding: 0px 15px;
+    position: relative;
+    height: 44px;
+    line-height: 44px;
+    font-size: 18px;
+    border-top-left-radius: 3px;
+    border-top-right-radius: 3px;
+    padding: 0px 15px;
+    text-align: center;
+}
+
+.channel_head_a_img_box {
+    display: inline-block;
+    width: 36px;
+    height: 34px;
+    vertical-align: -10px;
+    background-image: url(@/public/img/25.png);
+    margin: 0px 20px 0px 19px;
+}
+
+.channel_head_a:nth-of-type(1)::after,
+.channel_head_a:nth-of-type(11)::after {
+    content: '';
+    display: none;
+}
+</style>

+ 133 - 0
components/home/SecondaryHeading_zgzp.vue

@@ -0,0 +1,133 @@
+<template>
+    <section class="channel_1 clearfix">
+        <div class="channel_head_box clearfix">
+            <a class="channel_head_a_name" href="javascript:(void)" :title="title">{{ title }}</a>
+            <div class="channel_head_a_img_box back100"></div>
+        </div>
+    </section>
+</template>
+
+<script setup>
+//1.设置组件数据 start---------------------------------------->
+//子导航
+const props = defineProps({
+    titleData: Array,
+    pinyinid: Number
+});
+
+//获取当前url路径
+const route = useRoute();
+//获得当前的完整路径
+const fullPath = route.path;
+const segments = fullPath.split('/');
+const targetSegment = segments[1];
+//1.设置组件数据 end---------------------------------------->
+
+//2.设置组件标题 start ---------------------------------------->
+const title = ref("")
+async function getPageData() {
+    const mkdata = await requestDataPromise('/web/getOneWebsiteCategory', {
+        method: 'GET',
+        query: {
+            'catid': props.pinyinid,
+        },
+    });
+    if (mkdata.code == 200) {
+        title.value = mkdata.data.alias;
+    } else {
+        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
+        console.log("错误位置:获取二级标题")
+        console.log("后端错误反馈:", mkdata.message)
+        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
+    }
+}
+getPageData();
+//2.设置组件标题 end ---------------------------------------->
+</script>
+
+<style lang="less" scoped>
+/*农民工网-频道页*/
+.channel_1 {
+    width: 1200px;
+    margin: 0 auto;
+}
+
+.channel_head_box {
+    text-align: center;
+    border-top-left-radius: 3px;
+    border-top-right-radius: 3px;
+    border: solid 1px #D9D9D9;
+    margin-top: 40px;
+    box-sizing: border-box;
+    border-bottom: solid 2px #489D97;
+    background: #fafafa;
+    box-sizing: border-box;
+
+    .channel_head_a {
+        position: relative;
+        height: 18px;
+        line-height: 18px;
+        color: #333;
+        font-size: 14px;
+        border-top-left-radius: 3px;
+        border-top-right-radius: 3px;
+        float: left;
+        padding: 0px 24px;
+        text-align: center;
+        box-sizing: border-box;
+        margin: 5px 0px 5px -2px;
+
+        &:hover {
+            color: #489D97;
+        }
+    }
+
+    .channel_head_a::after {
+        content: '';
+        display: block;
+        position: absolute;
+        width: 2px;
+        height: 12px;
+        background: #DBDBDB;
+        top: 3px;
+        left: -1px;
+    }
+}
+
+.channel_head_a_name_box {
+    display: flex;
+    margin-top: auto;
+}
+
+.channel_head_a_name {
+    display: inline-block;
+    background: #489D97;
+    font-size: 18px;
+    font-weight: bold;
+    color: #fff;
+    padding: 0px 15px;
+    position: relative;
+    height: 44px;
+    line-height: 44px;
+    font-size: 18px;
+    border-top-left-radius: 3px;
+    border-top-right-radius: 3px;
+    padding: 0px 15px;
+    text-align: center;
+}
+
+.channel_head_a_img_box {
+    display: inline-block;
+    width: 36px;
+    height: 34px;
+    vertical-align: -10px;
+    background-image: url(@/public/img/25.png);
+    margin: 0px 20px 0px 19px;
+}
+
+.channel_head_a:nth-of-type(1)::after,
+.channel_head_a:nth-of-type(11)::after {
+    content: '';
+    display: none;
+}
+</style>

+ 3 - 2
components/home/pageHead.vue

@@ -134,11 +134,12 @@ let goLogin = () => {
     //开启线上登录模式 start---------------------------------------->
     isDel.value = 0
     token1.value = getToken()
-
     //王鹏
-    window.open($BwebUrl + "/auth/login.php?backurl=" + $CwebUrl, '_blank');
+    //window.open($BwebUrl + "/auth/login.php?backurl=" + $CwebUrl, '_blank');
     //刘佳伟
     //window.open($LoginWebUrl + "/api/goLogin?backurl=" + $CwebUrl, '_blank');
+    //党云龙
+    window.open($BwebUrl + "/#/login?backurl=" + $CwebUrl, '_blank');
     //开启线上登录模式 end---------------------------------------->
 
     //开启本地登录模式 start---------------------------------------->

+ 4 - 0
composables/publicFunction.ts

@@ -54,6 +54,10 @@ const getTitleLength = function (title: string, length: number) {
 const getLinkPath = (item: any) => {
   if (item.is_url == 1) {
     return `${item.web_url}`;
+  } else if (item.alias == '招工招聘') { //招工招聘
+    return `/${item.aLIas_pinyin}/index.html`;
+  } else if (item.alias == '农民工求职') { //农民工求职
+    return `/${item.aLIas_pinyin}/index.html`;
   } else if (item.children_count == 0) {
     //return `/newsList/${item.category_id}?page=1`;
     return `/${item.aLIas_pinyin}/list-1.html`;

+ 13 - 9
pages/nongmingongqiuzhi/[id].vue

@@ -144,7 +144,7 @@
                     <div class="seek_in_head clearfix">
                         <span class="seek_in_head_text"
                             v-if="item.school_name || item.education_name || item.school_major || item.school_timeList">
-                            {{ index + 1 }}. {{ item.school_name }} {{ education }}
+                            {{ index + 1 }}. {{ item.school_name }}
                         </span>
                         <span class="seek_in_head_text">
                             {{ item.education_name }}
@@ -370,18 +370,22 @@ import { ArrowRight } from '@element-plus/icons-vue'
 const route = useRoute();
 const type = ref(2);
 
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
+
 //获取用户信息
 let type_id = ref('')
 let website_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
-    website_id.value = gettypeid.data.website_id
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
 
 
 //1.1 获得跳转过来的id

+ 16 - 11
pages/nongmingongqiuzhi/index.html.vue

@@ -2,7 +2,7 @@
     <div>
         <HomePageHead></HomePageHead>
         <HomePageNavigation></HomePageNavigation>
-        <HomeSecondaryHeading :titleData="pageDataList" :pinyinid="routeId"></HomeSecondaryHeading>
+        <HomeSecondaryHeadingZgzp :titleData="pageDataList" :pinyinid="routeId"></HomeSecondaryHeadingZgzp>
 
         <main class="index_main">
             <!-- 三农资讯网-招工招聘 snzx_recruit-->
@@ -13,8 +13,8 @@
                         <a class="cruit_head_a cruit_head_only" href="" title="">职位搜索</a>
                     </div>
                     <div class="cruit_head_right clearfix">
-                        <span class="cruit_head_right_a" @click="createResume" v-if="type_id == 1">创建个人简历</span>
-                        <!-- <span class="cruit_head_right_a" @click="createJob" v-if="type_id == 3">发布招聘信息</span> -->
+                        <!-- <span class="cruit_head_right_a" @click="createResume" v-if="type_id == 1">创建个人简历</span> -->
+                        <span class="cruit_head_right_a" @click="createJob" v-if="type_id == 3">发布招聘信息</span>
                     </div>
                 </div>
                 <!-- <div class="cruit_ul_1 clearfix">
@@ -188,18 +188,23 @@ import { ref, onMounted } from 'vue';
 import { ElMessage, ElSelect, ElOption, ElInput, ElButton, ElPagination } from 'element-plus';
 const { $webUrl, $CwebUrl, $BwebUrl } = useNuxtApp()
 
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
+
 //获取用户信息
 let type_id = ref('')
 let website_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
-    website_id.value = gettypeid.data.website_id
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
+
 //0.加载页面依赖 end ---------------------------------------->
 
 //1.获得路由id start ---------------------------------------->

+ 64 - 73
pages/nongmingongqiuzhi/search.vue

@@ -10,8 +10,9 @@
         <HomeAdvertising :imgurl="adImg1" v-if="adImg1"></HomeAdvertising>
 
         <!-- 二级标题-->
-        <HomeListSecondaryHeading v-if="parent_name != ''" :name="parent_name" :nav="secondNav" :pinyin="parent_pinyin">
-        </HomeListSecondaryHeading>
+        <HomeListSecondaryHeadingZgzp v-if="parent_name != ''" :name="parent_name" :nav="secondNav"
+            :pinyin="parent_pinyin">
+        </HomeListSecondaryHeadingZgzp>
 
         <main class="index_main">
             <!-- 三农资讯网-招工招聘-社会招聘 snzx_society -->
@@ -22,10 +23,10 @@
                         <span class="cruit_head_a cruit_head_only">职位搜索</span>
                     </div>
                     <div class="cruit_head_right clearfix">
-                        <span class="cruit_head_right_a" @click="createResume"
-                            v-if="job_search == 1 && type_id == 1">创建个人简历</span>
-                        <!-- <span class="cruit_head_right_a" @click="createJob"
-                            v-if="job_search == 1 && type_id == 3">发布招聘信息</span> -->
+                        <!-- <span class="cruit_head_right_a" @click="createResume"
+                            v-if="job_search == 1 && type_id == 1">创建个人简历</span> -->
+                        <span class="cruit_head_right_a" @click="createJob"
+                            v-if="job_search == 1 && type_id == 3">发布招聘信息</span>
                     </div>
                 </div>
                 <form class="cruit_form clearfix" action=" " method=" ">
@@ -342,24 +343,10 @@ const getLinkPathDetail = (item) => {
         return `/${item.pinyin}/${item.id}.html`;
     }
 }
-//获取用户信息
-let type_id = ref('')
-let website_id = ref('')
-const gettypeid = async () => {
-    const gettypeid = await requestDataPromise('/user/getUserInfo', {
-        method: 'GET',
-        query: {},
-    });
-    console.log("gettypeid", gettypeid);
-    if (gettypeid.code == 200) {
-        type_id.value = gettypeid.data.type_id
-        website_id.value = gettypeid.data.website_id
-    }
-}
-gettypeid()
-// onMounted(() => {
-//     gettypeid()
-// })
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
+
+
 
 //1.页面必备依赖 end ---------------------------------------->
 
@@ -689,60 +676,36 @@ let talkResume = () => {
     // resumeBoo.value = true;
 
 }
-//获取当前企业会员的职位
-const companyJobList = ref([])
-let companyJOb = async () => {
-    const companyJOb = await requestDataPromise('/web/getWebsiteJobRecruiting', {
-        method: 'POST',
-        body: {
-            'pageSize': pageSize.value,
-            'website_id': website_id.value,
-        }
-    })
-    // console.log("获取到的企业会员的职位11:", companyJOb.data);
-    if (companyJOb.code == 200) {
-        // console.log("获取到的企业会员的职位:", companyJOb.data);
-        companyJobList.value = companyJOb.data
-    }
-}
-companyJOb()
+
 
 // 沟通简历
 let resumeBoo = ref(false)
-let getresume = async () => {
-    const resumelist = await requestDataPromise('/web/getWebsiteJobResume', {
-        method: 'POST',
-        body: {
-            'website_id': website_id.value,
-            'recruit_id': company_job.value,
-            'hunt_id': selectedResume.value,
-        },
-    });
-
-    // console.log("沟通简历00", resumelist);
-    // console.log("沟通简历11", website_id.value);
-    // console.log("沟通简历22", company_job.value);
-    // console.log("沟通简历33", selectedResume.value);
-    if (resumelist.code == 200) {
-        ElMessage({
-            message: '投递成功',
-            type: 'sussess',
-        });
-        resumeBoo.value = false;
-    } else {
-        ElMessage({
-            message: resumelist.message,
-            type: 'error',
-        });
-        resumeBoo.value = false;
-    }
-    company_job.value = '';
-    selectedResume.value = [];
-    job_search.value = 2
+let getresume = () => {
+    axios.post('/web/getWebsiteJobResume', {
+        website_id: website_id.value,
+        recruit_id: company_job.value,
+        hunt_id: selectedResume.value,
+    }).then(res => {
+        if (res.code == 200) {
+            ElMessage({
+                message: '投递成功',
+                type: 'sussess',
+            });
+            resumeBoo.value = false;
+        } else {
+            ElMessage({
+                message: res.message,
+                type: 'error',
+            });
+            resumeBoo.value = false;
+        }
+        company_job.value = '';
+        selectedResume.value = [];
+        job_search.value = 2;
+        allResume.value = false;
+    })
 }
 
-
-
 // //2.3获得页面名称
 // let getPageName = async () => {
 //     const pageName = await requestDataPromise('/web/getOneWebsiteCategory', {
@@ -888,6 +851,34 @@ onMounted(async () => {
 
 })
 //5.广告 end---------------------------------------->
+//获取用户信息
+let type_id = ref('')
+let website_id = ref('')
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        console.log("gettypeid_website_id", response.data.website_id);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+        companyJOb()
+    })
+}
+
+//获取当前企业会员的职位
+const companyJobList = ref([])
+let companyJOb = () => {
+    axios.post("/web/getWebsiteJobRecruiting", {
+        'pageSize': pageSize.value,
+        'website_id': website_id.value,
+    }).then(response => {
+        console.log("gettypeid_获取到的企业会员的职位:", response.data);
+        companyJobList.value = response.data
+    })
+}
+
+onMounted(() => {
+    getUserInfo()
+})
 </script>
 
 <style lang="less" scoped>

+ 0 - 555
pages/zhaogongzhaopin/[dir]/[id].vue

@@ -1,555 +0,0 @@
-<template>
-    <div>
-        <HomePageHead></HomePageHead>
-        <HomePageNavigation></HomePageNavigation>
-        <HomeAdvertising :imgurl="adImg1" v-if="adImg1"></HomeAdvertising>
-        <!-- 面包屑导航 -->
-        <div class="breadcrumb">
-            <div class="inner">
-                <span class="location">当前位置:</span>
-                <el-breadcrumb :separator-icon="ArrowRight">
-                    <el-breadcrumb-item>
-                        <NuxtLink to="/">首页</NuxtLink>
-                    </el-breadcrumb-item>
-                    <el-breadcrumb-item>
-                        <NuxtLink :to="`/${parent_pinyin}/index.html`"> {{ parent_name }}</NuxtLink>
-                    </el-breadcrumb-item>
-                    <el-breadcrumb-item>招聘详情</el-breadcrumb-item>
-                </el-breadcrumb>
-            </div>
-        </div>
-        <!-- 简历 -->
-        <main class="jianli" v-if="type == 2">
-            <!-- 个人简历 -->
-            <section class="index_1 clearfix">
-                <div class="seek_head_box clearfix">
-                    <div class="seek_head_left">
-                        <a class="seek_head_a seek_head_only" title="">个人简历</a>
-                    </div>
-                    <div class="seek_head_right_box clearfix">
-                        <span class="seek_head_right_text">更新时间:{{ jobInfo.created_at }}</span>
-                    </div>
-                </div>
-                <div class="index_1_left clearfix">
-                    <div class="seek_introduce_box clearfix">
-                        <div class="seek_introduce_left clearfix">
-                            <div class="seek_introduce_head clearfix">
-                                <h4 class="seek_introduce_h4">{{ jobInfo.name }}</h4>
-                                <div class="seek_introduce_tag clearfix" v-if="resume">此简历已被推荐</div>
-                                <div class="seek_introduce_text clearfix" v-if="resume">
-                                    (已有单位把本简历加入人才库)
-                                </div>
-                            </div>
-                            <div class="seek_introduce_title_box clearfix">
-                                <span class="seek_introduce_label">期望岗位:</span>
-                                <span class="seek_introduce_title">{{ jobInfo.job_name_get }}</span>
-                                <span class="seek_introduce_label">薪资待遇:</span>
-                                <span class="seek_introduce_title">{{ jobInfo.salary_name }}</span>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="seek_introduce_foot clearfix">
-                        <span class="seek_introduce_foot_text">
-                            {{ jobInfo.sexy == 1 ? '男' : '女' }}
-                        </span>
-                        <span class="seek_introduce_foot_text" v-if="jobInfo.birth">
-                            {{ getTime(jobInfo.birth, 'year', 0) }}
-                        </span>
-                        <span class="seek_introduce_foot_text" v-if="jobInfo.origin">
-                            籍贯:{{ jobInfo.origin }}
-                        </span>
-                        <!-- <span class="seek_introduce_foot_text">汉族</span> -->
-                        <span class="seek_introduce_foot_text" v-if="jobInfo.education_name">
-                            {{ jobInfo.education_name }}
-                        </span>
-                        <span class="seek_introduce_foot_text" v-if="jobInfo.experience_name">
-                            {{ jobInfo.experience_name }}
-                        </span>
-                        <span class="seek_introduce_foot_text" v-if="jobInfo.hunt_cityname">
-                            工作地点:{{ jobInfo.hunt_cityname }}
-                        </span>
-                        <span class="seek_introduce_foot_text" v-if="jobInfo.language_name">
-                            {{ jobInfo.language_name }}
-                        </span>
-                    </div>
-                </div>
-                <div class="index_1_right clearfix">
-                    <img class="index_1_right_img" src="@/public/image/touxiang.png" title="" alt=""
-                        v-if="!jobInfo.imgurl">
-                    <img class="index_1_right_img" :src="jobInfo.imgurl" title="" alt="" v-if="jobInfo.imgurl">
-
-                </div>
-            </section>
-            <!-- 个人简历 -->
-            <!-- 自我介绍 -->
-            <section class="index_2 clearfix">
-                <div class="seek_head_box clearfix">
-                    <div class="seek_head_left">
-                        <a class="seek_head_a seek_head_only" title="">自我介绍</a>
-                    </div>
-                </div>
-                <article class="seek_article">
-                    {{ jobInfo.self_evaluation }}
-                </article>
-            </section>
-            <!-- 自我介绍 -->
-            <!-- 工作经历 -->
-            <section class="index_3 clearfix">
-                <div class="seek_head_box clearfix">
-                    <div class="seek_head_left">
-                        <a class="seek_head_a seek_head_only" title="">工作经历</a>
-                    </div>
-                </div>
-                <div class="seek_in clearfix" v-for="(item, index) in experienceInfo" :key="index">
-                    <div class="seek_in_head clearfix">
-                        <span class="seek_in_head_text">{{ index + 1 }}.{{ item.company_name }}</span>
-                        <span class="seek_in_head_text">
-                            职位类别:
-                            {{ item.zw_name }}
-                            <!-- <span v-for="(item1, index1) in position_categoryList">
-                                {{ item.job_typename == position_categoryList[index1].zwid ?
-                                    position_categoryList[index1].zwname : '' }}
-                            </span> -->
-                        </span>
-                        <span class="seek_in_head_text">
-                            具体职位:
-                            {{ item.jtzw_name }}
-                            <!-- <span v-for="(item1, index1) in positionList">
-                                {{ item.job_name == positionList[index1].zwid ? positionList[index1].zwname : '' }}
-                            </span> -->
-                        </span>
-                        <!-- <span class="seek_in_head_text">{{ item.department }}</span>  //部门 -->
-                        <span class="seek_in_head_text" style="float: right;">
-                            {{ getTime(item.job_timeList[0], 'year', 0) }}
-                            -
-                            {{ getTime(item.job_timeList[1], 'year', 0) }}
-                        </span>
-                    </div>
-                    <div class="seek_in_ul clearfix">
-                        <div class="seek_in_li clearfix">
-                            <label class="seek_in_label">工作内容:</label>
-                            <div class="seek_in_li_text">{{ item.job_content }}</div>
-                        </div>
-                        <div class="seek_in_li clearfix">
-                            <label class="seek_in_label">工作业绩:</label>
-                            <div class="seek_in_li_text">{{ item.performance }}</div>
-                        </div>
-                    </div>
-                </div>
-            </section>
-            <!-- 工作经历 -->
-            <!-- 教育背景 -->
-            <section class="index_4 clearfix">
-                <div class="seek_head_box clearfix">
-                    <div class="seek_head_left">
-                        <a class="seek_head_a seek_head_only" title="">教育背景</a>
-                    </div>
-                </div>
-                <div class="seek_in clearfix" v-for="(item, index) in education" :key="index">
-                    <div class="seek_in_head clearfix">
-                        <span class="seek_in_head_text">{{ index + 1 }}. {{ item.school_name }}</span>
-                        <span class="seek_in_head_text">
-                            {{ item.education_name }}
-                            <!-- <span v-for="(item1, index1) in educationList">
-                                {{ item.education == educationList[index1].zwid ? educationList[index1].zwname : '' }}
-                            </span> -->
-                        </span>
-                        <span class="seek_in_head_text">{{ item.school_major }}</span>
-                        <span class="seek_in_head_text" style="float: right;">
-                            {{ getTime(item.school_timeList[0], 'year', 0) }}
-                            -
-                            {{ getTime(item.school_timeList[1], 'year', 0) }}
-                        </span>
-                    </div>
-                    <div class="seek_in_ul clearfix">
-                        <div class="seek_in_li clearfix">
-                            <label class="seek_in_label">在校经历:</label>
-                            <div class="seek_in_li_text">{{ item.school_experience }}</div>
-                        </div>
-                    </div>
-                </div>
-            </section>
-            <!-- 教育背景 -->
-            <!-- 专业技能 -->
-            <section class="index_5 clearfix">
-                <div class="seek_head_box clearfix">
-                    <div class="seek_head_left">
-                        <a class="seek_head_a seek_head_only" title="">专业技能</a>
-                    </div>
-                </div>
-                <div class="seek_in clearfix">
-                    <div class="seek_in_ul clearfix">
-                        <div class="seek_in_li clearfix" v-for="(item, index) in skillList">
-                            <label class="seek_in_label">{{ index + 1 }}.</label>
-                            <div class="seek_in_li_text">{{ item.skill }}</div>
-                        </div>
-                    </div>
-                </div>
-            </section>
-            <!-- 专业技能 -->
-            <!-- 联系方式 -->
-            <section class="index_6 clearfix" v-if="type_id == 10000 || type_id == 3">
-                <div class="seek_head_box clearfix">
-                    <div class="seek_head_left">
-                        <a class="seek_head_a seek_head_only" title="">联系方式</a>
-                    </div>
-                </div>
-                <div class="seek_in clearfix">
-                    <article class="seek_article_2">
-                        {{ jobInfo.phone }}
-                    </article>
-                </div>
-            </section>
-            <!-- 联系方式 -->
-        </main>
-        <!-- 岗位 -->
-        <div class="gangwei" v-if="type == 1">
-            <main class="color_main">
-                <main class="index_main">
-                    <section class="index_1 clearfix">
-                        <div class="cruit_head_box clearfix">
-                            <div class="cruit_head_left">
-                                <a class="cruit_head_a cruit_head_only" title="">基本信息</a>
-                            </div>
-                        </div>
-                        <div class="index_1_box clearfix">
-                            <div class="demand_head_box clearfix">
-                                <div class="demand_head_name">{{ jobInfo.title }}</div>
-                                <div class="demand_head_btn hand" v-if="type_id == 1">申请该职位</div>
-                                <div class="demand_head_btn1" v-if="type_id != 1">申请该职位</div>
-                            </div>
-                            <div class="cruit_li_2_foot clearfix">
-                                <span class="cruit_li_2_foot_tag cruit_li_2_foot_exper">
-                                    {{ jobInfo.hy_name }}
-                                    &gt;
-                                    {{ jobInfo.zw_name }}
-                                    <!-- &gt;
-                                    {{ jobInfo.jtzw_name }} -->
-                                </span>
-                                <span class="cruit_li_2_foot_tag cruit_li_2_foot_addres">{{ jobInfo.city_name }}</span>
-                            </div>
-                        </div>
-                    </section>
-                </main>
-            </main>
-
-            <main class="index_main">
-                <section class="index_2 clearfix">
-                    <div class="demand_1 clearfix">
-                        <!-- 基本要求 -->
-                        <div class="demand_left_1 clearfix">
-                            <div class="cruit_head_box clearfix">
-                                <div class="cruit_head_left">
-                                    <a class="cruit_head_a cruit_head_only" title="">基本要求</a>
-                                </div>
-                            </div>
-                            <div class="demand_ul_2">
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">工作性质:</div>
-                                    <div class="demand_li_2_text clearfix">{{ jobInfo.job_nature_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">工作经验:</div>
-                                    <div class="demand_li_2_text clearfix">{{ jobInfo.experience_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">学历文凭:</div>
-                                    <div class="demand_li_2_text clearfix">{{ jobInfo.education_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">语言选择:</div>
-                                    <div class="demand_li_2_text clearfix">{{ jobInfo.language_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">薪资待遇:</div>
-                                    <div class="demand_li_2_text clearfix">{{ jobInfo.salary_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">截止日期:</div>
-                                    <div class="demand_li_2_text clearfix">
-                                        {{ getTime(jobInfo.created_at, 'year', 1) }}
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
-                        <!-- 基本要求 -->
-                        <!-- 岗位职责 -->
-                        <div class="demand_left_2 clearfix">
-                            <div class="cruit_head_box clearfix">
-                                <div class="cruit_head_left">
-                                    <a class="cruit_head_a cruit_head_only" title="">岗位职责</a>
-                                </div>
-                            </div>
-                            <article class="demand_article_1">
-                                {{ jobInfo.description }}
-                            </article>
-                        </div>
-                        <!-- 岗位职责 -->
-                        <!-- 具体要求 -->
-                        <div class="demand_left_3 clearfix">
-                            <div class="cruit_head_box clearfix">
-                                <div class="cruit_head_left">
-                                    <a class="cruit_head_a cruit_head_only" title="">具体要求</a>
-                                </div>
-                            </div>
-                            <article class="demand_article_1">
-                                {{ jobInfo.jt_description }}
-                            </article>
-                        </div>
-                        <!-- 具体要求 -->
-                        <!-- 联系方式 -->
-                        <div class="demand_left_4 clearfix">
-                            <div class="cruit_head_box clearfix">
-                                <div class="cruit_head_left">
-                                    <a class="cruit_head_a cruit_head_only" title="">联系方式</a>
-                                </div>
-                            </div>
-                            <div class="demand_ul_2">
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">地址:</div>
-                                    <div class="demand_li_2_text clearfix">{{ companyInfo.address_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">邮箱:</div>
-                                    <div class="demand_li_2_text clearfix">{{ companyInfo.email_name }}</div>
-                                </div>
-                            </div>
-                        </div>
-                        <!-- 联系方式 -->
-                        <!-- 公司介绍 -->
-                        <div class="demand_left_5 clearfix">
-                            <div class="cruit_head_box clearfix">
-                                <div class="cruit_head_left">
-                                    <a class="cruit_head_a cruit_head_only" title="">公司介绍</a>
-                                </div>
-                            </div>
-                            <div class="demand_ul_2">
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">公司规模:</div>
-                                    <div class="demand_li_2_text clearfix">{{ companyInfo.company_size_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">公司性质:</div>
-                                    <div class="demand_li_2_text clearfix">{{ companyInfo.company_nature_name }}</div>
-                                </div>
-                                <div class="demand_li_2 clearfix">
-                                    <div class="demand_li_2_label">公司行业:</div>
-                                    <div class="demand_li_2_text clearfix">{{ companyInfo.hy_name }}</div>
-                                </div>
-                            </div>
-                        </div>
-                        <!-- 公司介绍 -->
-                    </div>
-                    <div class="demand_2 clearfix">
-                        <div class="demand_right_1 clearfix">
-                            <div class="cruit_head_box clearfix">
-                                <div class="cruit_head_left">
-                                    <a class="cruit_head_a cruit_head_only" title="">招聘单位</a>
-                                </div>
-                            </div>
-                            <div class="demand_ul_1">
-                                <a class="demand_ul_1_a dot1" href="" title="">
-                                    {{ companyInfo.business_name }}
-                                </a>
-                            </div>
-                        </div>
-                        <div class="demand_right_2 clearfix">
-                            <div class="cruit_head_box clearfix">
-                                <div class="cruit_head_left">
-                                    <a class="cruit_head_a cruit_head_only" title="">其他职位</a>
-                                </div>
-                            </div>
-                            <div class="demand_ul_1">
-                                <a class="demand_ul_1_a dot1" href="" title="" v-for="(item, index) in other_job"
-                                    :key="item.id">
-                                    {{ item.title }}
-                                </a>
-                            </div>
-                        </div>
-                    </div>
-                </section>
-            </main>
-        </div>
-        <HomeAdvertising :imgurl="adImg2" v-if="adImg2"></HomeAdvertising>
-        <HomeFoot1></HomeFoot1>
-    </div>
-
-</template>
-<script setup>
-import { ref } from 'vue'
-import { ElBreadcrumb, ElBreadcrumbItem } from 'element-plus'
-import { ArrowRight } from '@element-plus/icons-vue'
-const route = useRoute();
-const type = route.query.type;
-
-//获取用户信息
-let type_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-// console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
-}
-
-
-//1.1 获得跳转过来的id
-const articleId = parseInt(route.params.id);  //获得该页面的id
-// console.log('111222111', articleId);
-
-//1.2 获得父级栏目的名称、id
-//获得当前的完整路径
-const fullPath = route.path;
-//拆分,取出来中间这一段,然后提取数字部分
-const segments = fullPath.split('/');
-const targetSegment = segments[1];
-// const numberPart = targetSegment.match(/\d+$/)?.[0]; 
-// const routeId = numberPart;
-
-let routeId;
-//通过导航路径反向查询导航id
-const getRouteId = await requestDataPromise('/web/getWebsiteRoute', {
-    method: 'GET',
-    query: {
-        'pinyin': targetSegment,
-    },
-});
-if (getRouteId.code == 200) {
-    routeId = getRouteId.data.category_id
-} else {
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    console.log("错误位置:通过url路径查询导航池id")
-    console.log("后端错误反馈:", getRouteId.message)
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-}
-
-//1.3 面包屑导航
-const parent_name = ref("");
-const parent_id = ref("");
-const parent_pinyin = ref("");
-let getParentNav = async () => {
-    const listData = await requestDataPromise('/web/getOneWebsiteCategory', {
-        method: 'GET',
-        query: {
-            'catid': routeId
-        },
-    });
-
-    if (listData.code == 200) {
-        parent_name.value = listData.data.alias;
-        parent_id.value = listData.data.parent_id;
-        parent_pinyin.value = listData.data.aLIas_pinyin;
-
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取面包屑导航")
-        console.log("后端错误反馈:", listData.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//获得父级栏目详情
-getParentNav();
-
-//1.4 展示广告
-let adImg1 = ref({})
-let adImg2 = ref({})
-onMounted(async () => {
-    //从客户端获取行政职能部门 加快打开速度
-    const { $webUrl, $CwebUrl } = useNuxtApp();
-    //广告1
-    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_detail_0001`
-    const responseAd1 = await fetch(url, {
-        headers: {
-            'Content-Type': 'application/json',
-            'Userurl': $CwebUrl,
-            'Origin': $CwebUrl
-        }
-    });
-    const resultAd1 = await responseAd1.json();
-    adImg1.value = resultAd1.data[0];
-
-    //广告2
-    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_detail_0002`
-    const responseAd2 = await fetch(url2, {
-        headers: {
-            'Content-Type': 'application/json',
-            'Userurl': $CwebUrl,
-            'Origin': $CwebUrl
-        }
-    });
-    const resultAd2 = await responseAd2.json();
-    adImg2.value = resultAd2.data[0];
-})
-
-// 2 获取详情
-let jobInfo = ref([]) //基本信息
-let companyInfo = ref([])// 公司介绍
-let category = ref([]) // 栏目
-let other_job = ref([]) // 岗位
-let experienceInfo = ref([]) // 工作经历
-let education = ref([]) // 教育背景
-let skillList = ref([]) // 专业技能
-let resume = ref(0)
-
-
-const getDetail = async () => {
-    const listData = await requestDataPromise('/web/getWebsiteJobInfo', {
-        method: 'GET',
-        query: {
-            'id': articleId,
-            'type': type,
-            'pageSize': 10,
-        },
-    });
-
-    if (listData.code == 200) {
-        // console.log("详情1111", listData.data);
-        // console.log("详情1111222", listData.data.job[0].job_experience);
-        // console.log("详情111122233", JSON.parse(listData.data.job[0].job_experience));
-        // console.log("详情1111222233344", JSON.parse(listData.data.job[0].education_experience));
-        // jobInfo.value = listData.data.job[0];
-        // category.value = listData.data.category;
-        if (type == 1) {
-            jobInfo.value = listData.data.job[0];
-            category.value = listData.data.category;
-            companyInfo.value = listData.data.company[0];
-            other_job.value = listData.data.other_job;
-        }
-        if (type == 2) {
-            jobInfo.value = listData.data.job[0];
-            category.value = listData.data.category;
-            experienceInfo.value = listData.data.job_experience;
-            education.value = listData.data.education_experience;
-            skillList.value = JSON.parse(listData.data.job[0].skillList);
-            resume.value = listData.data.resume;
-        }
-    }
-
-}
-getDetail();
-
-//获取行业 职位 具体职位
-const industry_categoryList = ref([])  //行业类别列表
-const position_categoryList = ref([])  //职位类别列表
-const positionList = ref([])  //具体职位列表
-
-const getData = async () => {
-    const getData = await requestDataPromise('/web/getWebsiteJobSelect', {
-        method: 'GET',
-        query: {},
-    });
-    if (getData.code == 200) {
-        // console.log("获取到的分类数据:", getData.data);
-        industry_categoryList.value = getData.data.hy; //行业
-        position_categoryList.value = getData.data.zw; //职位
-        positionList.value = getData.data.jtzw; //具体职位
-    }
-}
-getData()
-</script>
-
-<style scoped lang="less">
-@import "@/assets/css/zgzpjianli.less";
-@import "@/assets/css/zgzpzhaopin.less";
-</style>

+ 0 - 427
pages/zhaogongzhaopin/[dir]/list-[id].vue

@@ -1,427 +0,0 @@
-<template>
-    <div id="newsList">
-        <!-- 页面头部 -->
-        <HomePageHead></HomePageHead>
-
-        <!-- 导航栏 -->
-        <HomePageNavigation1></HomePageNavigation1>
-
-        <!-- 列表页广告一 -->
-        <!-- <HomeTopTen :imgurl="adImg1" v-if="adImg1"></HomeTopTen> -->
-
-        <!-- 二级标题-->
-        <div class="sannongzhichuang" v-if="parent_name != ''">
-            <div class="inner">
-                <h2>
-                    <NuxtLink :to="`/zhaogongzhaopin/index.html`"> 招工招聘 </NuxtLink>
-                    <em class="iconfont icon-xingzhuang-zhijiaosanjiaoxing-copy"></em>
-                </h2>
-                <p class="introduction">
-                    <strong>频道介绍</strong>
-                <div v-for="(item, index) in secondNav" :key="index">
-                    <span v-if="index <= 7">
-                        <NuxtLink :to="{ path: `/${targetRoute}/${item.aLIas_pinyin}/list-1.html` }">{{ item.alias }}
-                        </NuxtLink>
-                    </span>
-                    <b v-else></b>
-                </div>
-                </p>
-            </div>
-        </div>
-        <main class="color_main">
-            <main class="index_main">
-                <!-- 选项卡头 -->
-                <section class="index_3 clearfix">
-                    <div class="recruit_head_box clearfix">
-                        <div class="cruit_head_left">
-                            <!-- cruit_head_only  -->
-                            <a class="cruit_head_a" :class="{ cruit_head_only: society_choice_1_num == 1 }"
-                                @mouseover="society_choice_1_num = 1" title="">找工作</a>
-                            <a class="cruit_head_a" :class="{ cruit_head_only: society_choice_1_num == 2 }"
-                                @mouseover="society_choice_1_num = 2" title="">招人才</a>
-                        </div>
-                        <!--<div class="society_head_right clearfix">
-                             <div class="society_head_checkbox_box">
-                                <input name="" type="checkbox" value="" class="society_head_checkbox hand" checked />
-                            </div>
-                            <div class="society_head_checkbox_box society_head_checkbox_box_gray">
-                                <input name="" type="checkbox" value="" class="society_head_checkbox hand" checked />
-                            </div>
-                            <div class="society_head_right_all_box">
-                                全部
-                            </div> -->
-                        <!-- <a class="society_head_right_a" href="" title="">申请职位</a>
-                            <a class="society_head_right_a society_head_right_a_gray" href="" title="">沟通简历</a> 
-                        </div>-->
-                    </div>
-                    <!-- 选项卡头 -->
-                    <!-- 选项卡 -->
-                    <div class=" clearfix">
-                        <!-- 找工作 -->
-                        <div class=" clearfix" v-show="society_choice_1_num == 1">
-                            <div class="cruit_ul_2 clearfix">
-                                <div class="cruit_li_2 clearfix" v-for="(item, index) in job_vacancy" :key="item.id">
-                                    <a class="cruit_li_2_a" href="" title="">
-                                        <div class="cruit_li_2_head_box clearfix">
-                                            <div class="cruit_li_2_head clearfix dot1">{{ item.title }}</div>
-                                            <div class="cruit_li_2_head_name clearfix dot1">
-                                                {{ item.business_name }}
-                                            </div>
-                                        </div>
-                                        <div class="cruit_li_2_foot_title_box clearfix">
-                                            <span class="cruit_li_2_foot_title">{{ item.jtzw_name }}</span>
-                                        </div>
-                                        <div class="cruit_li_2_foot clearfix">
-                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_addres">
-                                                {{ item.city_name }}
-                                            </span>
-                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_exper">
-                                                <span class="cruit_li_2_foot_tag_in">{{ item.experience_name }}</span>
-                                                <span class="cruit_li_2_foot_tag_in">{{ item.education_name }}</span>
-                                            </span>
-                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_time">
-                                                {{ getTime(item.updated_at, 'year', 1) }}
-                                            </span>
-                                        </div>
-                                    </a>
-                                </div>
-                            </div>
-                            <div class="pagination">
-                                <el-pagination size="small" background layout="prev, pager, next" :total="total"
-                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="change" />
-                            </div>
-                        </div>
-                        <!-- 找工作 -->
-                        <!-- 招人才 -->
-                        <div class=" clearfix" v-show="society_choice_1_num == 2">
-                            <div class="society_ul_3 clearfix">
-                                <div class="society_li_3 clearfix" v-for="(item, index) in job_resume" :key="item">
-                                    <!-- <div class="society_inp_checkbox_box_li_3 hand">
-                                        <input name="" type="checkbox" value=""
-                                            class="society_inp_checkbox_box_li_3_btn hand">
-                                    </div> -->
-                                    <a class="society_li_3_a" href="" title="">
-                                        <div class="society_li_3_head_box clearfix">
-                                            <div class="society_li_3_head clearfix dot1">
-                                                {{ item.name }}
-                                            </div>
-                                            <div class="society_li_3_head_name clearfix dot1">
-                                                {{ item.jtzw_name }}
-                                            </div>
-                                        </div>
-                                        <div class="society_li_3_text_box clearfix">
-                                            <div class="society_li_3_text">
-                                                {{ item.sexy == 1 ? '男' : '女' }}
-                                                <em class="point">·</em>
-                                            </div>
-                                            <div class="society_li_3_text" v-if="item.experience">
-                                                {{ item.experience }}年
-                                                <em class="point">·</em>
-                                            </div>
-                                            <div class="society_li_3_text">
-                                                {{ item.origin }}
-                                                <em class="point">·</em>
-                                            </div>
-                                            <div class="society_li_3_text">{{ item.hy_name }}</div>
-                                        </div>
-                                        <div class="society_li_3_tag_box clearfix">
-                                            <span class="society_li_3_tag">{{ item.city_name }}</span>
-                                            <span class="society_li_3_tag">
-                                                {{ getTime(item.updated_at, 'year', 1) }}
-                                            </span>
-                                        </div>
-                                    </a>
-                                </div>
-                            </div>
-                            <div class="pagination">
-                                <el-pagination size="small" background layout="prev, pager, next" :total="total"
-                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="change" />
-                            </div>
-                        </div>
-                        <!-- 招人才 -->
-                    </div>
-                    <!-- 选项卡 -->
-                </section>
-                <!-- 招聘职位 -->
-                <!-- <div class="cruit_alert_box">投递成功</div> -->
-            </main>
-        </main>
-
-
-
-        <!-- 页面底部 -->
-        <HomeFoot1></HomeFoot1>
-    </div>
-</template>
-
-<script setup>
-//1.页面必备依赖 start ---------------------------------------->
-import { ElBreadcrumb, ElBreadcrumbItem, ElPagination } from 'element-plus'
-import { ArrowRight } from '@element-plus/icons-vue'
-import { ref, onMounted } from 'vue';
-//当前列表名称
-const name = ref('')
-const cruit_ul_1_a_only_num = ref(0)
-const society_choice_1_num = ref(2)   // 选项卡
-const { $webUrl, $CwebUrl, $BwebUrl } = useNuxtApp()
-
-//格式化跳转路径
-const getLinkPathDetail = (item) => {
-    if (item.islink == 1) {
-        return `${item.linkurl}`;
-    } else {
-        //return `/${item.aLIas_pinyin}/${item.id}`;
-        //return `/newsDetail/${item.id}`
-        return `/${item.pinyin}/${item.id}.html`;
-    }
-}
-//1.页面必备依赖 end ---------------------------------------->
-
-//1.获得路由id start ---------------------------------------->
-const route = useRoute();
-let articleId = 0;//路由id
-let pageNum = ref(2);
-let total = ref(1);
-let zptotal = ref(1);
-let qztotal = ref(1);
-let page = ref(1);
-let pageSize = ref(20);
-
-//获得当前的完整路径
-const fullPath = route.path;
-//拆分,取出来中间这一段,然后提取数字部分
-const segments = fullPath.split('/');
-const targetSegment = segments[2];
-const targetRoute = segments[1];
-
-//const numberPart = targetSegment.match(/\d+$/)?.[0]; 
-//let routeId = 20 //排除路径错误可以打开这个
-//articleId = numberPart;
-
-//通过导航路径反向查询导航id
-const getRouteId = await requestDataPromise('/web/getWebsiteRoute', {
-    method: 'GET',
-    query: {
-        'pinyin': targetSegment,
-    },
-});
-if (getRouteId.code == 200) {
-    articleId = getRouteId.data.category_id
-} else {
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    console.log("错误位置:通过url路径查询导航池id")
-    console.log("后端错误反馈:", getRouteId.message)
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-}
-//获得html前的数字
-// const pageUrl = segments[3]; 
-// const pageNumber = pageUrl.split('.')[0];
-// console.log("当前URL中的页码:")
-// console.log(pageNumber)//2
-// pageNum.value = parseInt(pageNumber);
-pageNum.value = parseInt(route.params.id);
-
-//1.获得路由id end ---------------------------------------->
-
-//2.页面数据 start ---------------------------------------->
-// 2.1 获取岗位和简历
-const job_vacancy = ref('') // 招聘岗位
-const job_resume = ref('') // 简历
-const getJob = async () => {
-    const getJob = await requestDataPromise('/web/getWebsiteJobList', {
-        method: 'GET',
-        query: {
-            'catid': 20,
-            'page': page.value,
-            'pageSize': pageSize.value
-        },
-    });
-    if (getJob.code == 200) {
-        console.log("获取到的岗位和简历:", getJob.data);
-        job_vacancy.value = getJob.data.JobRecruiting; // 招聘岗位
-        job_resume.value = getJob.data.JobHunting; // 简历
-        if (society_choice_1_num == 1) {
-            total.value = getJob.data.recruit_count;
-        } else {
-            total.value = getJob.data.hunt_count;
-        }
-    }
-}
-getJob()
-//2.2新闻列表
-const newsList = ref([]);
-let newslists = async () => {
-    const listData = await requestDataPromise('/web/getWebsiteArticleList', {
-        method: 'GET',
-        query: {
-            'page': pageNum.value,
-            'pageSize': pageSize.value,
-            'catid': articleId
-        },
-    });
-    if (listData.code == 200) {
-        newsList.value = listData.data.rows;
-        total.value = listData.data.count;
-
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取新闻列表")
-        console.log("后端错误反馈:", listData.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//获得列表
-newslists();
-
-//分页事件
-let changePage = (value) => {
-    console.log("当前页码", value);
-    navigateTo(`/${targetSegment}/${value}.html`)
-}
-
-//2.3获得页面名称
-let getPageName = async () => {
-    const pageName = await requestDataPromise('/web/getOneWebsiteCategory', {
-        method: 'GET',
-        query: {
-            'catid': articleId
-        },
-    });
-    if (pageName.code == 200) {
-        name.value = pageName.data.alias
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:设置页面标题")
-        console.log("后端错误反馈:", pageName.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//获得列表
-getPageName();
-//2.页面数据 end ---------------------------------------->
-
-
-//3.二级栏目 start ---------------------------------------->
-//3.1通过id获取父栏目
-const parent_name = ref([]);
-const parent_id = ref([]);
-const parent_pinyin = ref("");
-let getParentNav = async () => {
-    const listData = await requestDataPromise('/web/getOneWebsiteCategory', {
-        method: 'GET',
-        query: {
-            'catid': articleId
-        },
-    });
-    if (listData.code == 200) {
-        console.log(111999)
-        console.log(listData.data);
-        parent_name.value = listData.data.parent_name;
-        parent_id.value = listData.data.parent_id;
-        parent_pinyin.value = listData.data.parent_pinyin;
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取新闻列表")
-        console.log("后端错误反馈:", listData.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-    getSecondNav();
-}
-//获得父级栏目详情
-getParentNav();
-
-// 3.2获取二级栏目
-const secondNav = ref([]);
-let getSecondNav = async () => {
-    const listData = await requestDataPromise('/web/getWebsiteModelCategory', {
-        method: 'GET',
-        query: {
-            'placeid': 1,
-            'pid': parent_id.value,
-            'num': 8,
-        },
-    });
-    console.log('listData', listData);
-
-    if (listData.code == 200) {
-        secondNav.value = listData.data;
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取新闻列表")
-        console.log("后端错误反馈:", listData.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//3.二级栏目 end ---------------------------------------->
-
-//4.设置seo信息 start---------------------------------------->
-//4.1 设置seo信息
-const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
-    method: 'GET',
-    query: {
-        'catid': articleId
-    },
-});
-
-if (setData.code == 200) {
-    let seoTitle = setData.data.seo_title;
-    let seoDescription = setData.data.seo_description;
-    let seoKeywords = setData.data.seo_keywords;
-    let seoSuffix = setData.data.suffix;
-    let seoName = setData.data.website_name;
-
-    useSeoMeta({
-        title: seoTitle + "_" + seoName + "_" + seoSuffix,
-        meta: [
-            { name: 'description', content: seoDescription + "_" + seoName + "_" + seoSuffix, tagPriority: 10 },
-            { name: 'keywords', content: seoKeywords + "_" + seoName + "_" + seoSuffix, tagPriority: 10 }
-        ]
-    });
-} else {
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    console.log("错误位置:设置列表页面SEO数据")
-    console.log("后端错误反馈:", setData.message)
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-}
-//4.设置seo信息 end---------------------------------------->
-
-
-//5.广告 start---------------------------------------->
-let adImg1 = ref({});
-let adImg2 = ref({});
-
-onMounted(async () => {
-
-    //从客户端获取行政职能部门 加快打开速度
-    const { $webUrl, $CwebUrl } = useNuxtApp();
-    //广告1
-    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_list_0001`
-    const responseAd1 = await fetch(url, {
-        headers: {
-            'Content-Type': 'application/json',
-            'Userurl': $CwebUrl,
-            'Origin': $CwebUrl
-        }
-    });
-    const resultAd1 = await responseAd1.json();
-    adImg1.value = resultAd1.data[0];
-
-    //广告2
-    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_list_0002`
-    const responseAd2 = await fetch(url2, {
-        headers: {
-            'Content-Type': 'application/json',
-            'Userurl': $CwebUrl,
-            'Origin': $CwebUrl
-        }
-    });
-    const resultAd2 = await responseAd2.json();
-    adImg2.value = resultAd2.data[0];
-
-})
-//5.广告 end---------------------------------------->
-</script>
-
-<style lang="less" scoped>
-@import url('@/assets/css/zgzplist.less');
-</style>

+ 44 - 64
pages/zhaogongzhaopinnongmingong/[dir]/[id].vue → pages/zhaogongzhaopin/[id].vue

@@ -19,8 +19,7 @@
             </div>
         </div>
         <!-- 简历 -->
-        <main class="gerenjianli" v-if="type == 2">
-            <!-- 个人简历 -->
+        <!-- <main class="gerenjianli" v-if="type == 2">
             <section class="index_1 clearfix">
                 <div class="seek_head_box clearfix">
                     <div class="seek_head_left">
@@ -58,7 +57,6 @@
                         <span class="seek_introduce_foot_text" v-if="jobInfo.origin">
                             籍贯:{{ jobInfo.origin }}
                         </span>
-                        <!-- <span class="seek_introduce_foot_text">汉族</span> -->
                         <span class="seek_introduce_foot_text" v-if="jobInfo.education_name">
                             {{ jobInfo.education_name }}
                         </span>
@@ -80,11 +78,8 @@
 
                 </div>
             </section>
-            <!-- 个人简历 -->
-        </main>
-
-        <main class="jianli" v-if="type == 2">
-            <!-- 自我介绍 -->
+        </main> -->
+        <!-- <main class="jianli" v-if="type == 2">
             <section class="index_2 clearfix">
                 <div class="seek_head_box clearfix">
                     <div class="seek_head_left">
@@ -95,8 +90,6 @@
                     {{ jobInfo.self_evaluation }}
                 </article>
             </section>
-            <!-- 自我介绍 -->
-            <!-- 工作经历 -->
             <section class="index_3 clearfix">
                 <div class="seek_head_box clearfix">
                     <div class="seek_head_left">
@@ -132,8 +125,6 @@
                     </div>
                 </div>
             </section>
-            <!-- 工作经历 -->
-            <!-- 教育背景 -->
             <section class="index_4 clearfix">
                 <div class="seek_head_box clearfix">
                     <div class="seek_head_left">
@@ -164,8 +155,6 @@
                     </div>
                 </div>
             </section>
-            <!-- 教育背景 -->
-            <!-- 专业技能 -->
             <section class="index_5 clearfix">
                 <div class="seek_head_box clearfix">
                     <div class="seek_head_left">
@@ -181,8 +170,6 @@
                     </div>
                 </div>
             </section>
-            <!-- 专业技能 -->
-            <!-- 联系方式 -->
             <section class="index_6 clearfix">
                 <div class="seek_head_box clearfix">
                     <div class="seek_head_left">
@@ -200,8 +187,8 @@
                     </article>
                 </div>
             </section>
-            <!-- 联系方式 -->
-        </main>
+        </main> -->
+
         <!-- 岗位 -->
         <div class="gangwei" v-if="type == 1">
             <main class="color_main">
@@ -223,8 +210,6 @@
                                     {{ jobInfo.hy_name }}
                                     &gt;
                                     {{ jobInfo.zw_name }}
-                                    <!-- &gt;
-                                    {{ jobInfo.jtzw_name }} -->
                                 </span>
                                 <span class="cruit_li_2_foot_tag cruit_li_2_foot_addres">{{ jobInfo.city_name }}</span>
                             </div>
@@ -236,7 +221,6 @@
             <main class="index_main">
                 <section class="index_2 clearfix">
                     <div class="demand_1 clearfix">
-                        <!-- 基本要求 -->
                         <div class="demand_left_1 clearfix">
                             <div class="cruit_head_box clearfix">
                                 <div class="cruit_head_left">
@@ -272,8 +256,6 @@
                                 </div>
                             </div>
                         </div>
-                        <!-- 基本要求 -->
-                        <!-- 岗位职责 -->
                         <div class="demand_left_2 clearfix">
                             <div class="cruit_head_box clearfix">
                                 <div class="cruit_head_left">
@@ -284,8 +266,6 @@
                                 {{ jobInfo.description }}
                             </article>
                         </div>
-                        <!-- 岗位职责 -->
-                        <!-- 具体要求 -->
                         <div class="demand_left_3 clearfix">
                             <div class="cruit_head_box clearfix">
                                 <div class="cruit_head_left">
@@ -296,8 +276,6 @@
                                 {{ jobInfo.jt_description }}
                             </article>
                         </div>
-                        <!-- 具体要求 -->
-                        <!-- 联系方式 -->
                         <div class="demand_left_4 clearfix">
                             <div class="cruit_head_box clearfix">
                                 <div class="cruit_head_left">
@@ -315,8 +293,6 @@
                                 </div>
                             </div>
                         </div>
-                        <!-- 联系方式 -->
-                        <!-- 公司介绍 -->
                         <div class="demand_left_5 clearfix">
                             <div class="cruit_head_box clearfix">
                                 <div class="cruit_head_left">
@@ -338,7 +314,6 @@
                                 </div>
                             </div>
                         </div>
-                        <!-- 公司介绍 -->
                     </div>
                     <div class="demand_2 clearfix">
                         <div class="demand_right_1 clearfix">
@@ -376,29 +351,35 @@
 
 </template>
 <script setup>
-import { ref } from 'vue'
-import { ElBreadcrumb, ElBreadcrumbItem } from 'element-plus'
+import { ref, reactive } from 'vue'
+import { ElBreadcrumb, ElBreadcrumbItem, ElMessage } from 'element-plus'
 import { ArrowRight } from '@element-plus/icons-vue'
 const route = useRoute();
 const type = ref(1);
 
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
+
 //获取用户信息
 let type_id = ref('')
 let website_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
-    website_id.value = gettypeid.data.website_id
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
 
 
 //1.1 获得跳转过来的id
 const articleId = parseInt(route.params.id);  //获得该页面的id
-let articleIdArr = Array.of(articleId);
+// const existingArr = [];
+const articleIdArr = reactive([articleId]);
+// let articleIdArr = Array.of(articleId);
 // console.log('111222111', articleId);
 
 //1.2 获得父级栏目的名称、id
@@ -411,16 +392,6 @@ const targetRoute = segments[2];
 console.log("targetSegment1", targetSegment);
 console.log("targetSegment2", targetRoute);
 
-if (targetRoute == 'shehuizhaopin') {
-    type.value = 1;
-} else if (targetRoute == 'dagongqiuzhi') {
-    type.value = 2;
-} else {
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-}
-
-// const numberPart = targetSegment.match(/\d+$/)?.[0]; 
-// const routeId = numberPart;
 
 let routeId;
 //通过导航路径反向查询导航id
@@ -564,20 +535,29 @@ const getData = async () => {
 getData()
 
 // 3 申请该职位
-const applyJob = async () => {
-    const applyJob = await requestDataPromise('/web/getWebsiteJobApply', {
-        method: 'POST',
-        query: {
-            'website_id': website_id.value,
-            'recruit_id': articleIdArr,
-        },
+const applyJob = () => {
+    // console.log("点击了申请该职位", typeof website_id.value);
+    // console.log("点击了申请该职位", articleIdArr);
+
+    axios.post('/web/getWebsiteJobApply', {
+        website_id: website_id.value,
+        recruit_id: articleIdArr,
+    }).then(response => {
+        // console.log("申请该职位11111111", response);
+        if (response.code == 200) {
+            ElMessage({
+                message: '申请成功',
+                type: 'success',
+            });
+        } else {
+            ElMessage({
+                message: response.message,
+                type: 'error',
+            });
+        }
+    }).catch(error => {
+        console.error('Error:', error);
     });
-    if (applyJob.code == 200) {
-        ElMessage({
-            message: '申请成功',
-            type: 'success',
-        });
-    }
 }
 
 //4.设置seo信息 start---------------------------------------->

+ 95 - 564
pages/zhaogongzhaopin/index.html.vue

@@ -2,7 +2,7 @@
     <div>
         <HomePageHead></HomePageHead>
         <HomePageNavigation></HomePageNavigation>
-        <HomeSecondaryHeading :titleData="pageDataList" :pinyinid="routeId"></HomeSecondaryHeading>
+        <HomeSecondaryHeadingZgzp :titleData="pageDataList" :pinyinid="routeId"></HomeSecondaryHeadingZgzp>
 
         <main class="index_main">
             <!-- 三农资讯网-招工招聘 snzx_recruit-->
@@ -13,23 +13,23 @@
                         <a class="cruit_head_a cruit_head_only" href="" title="">职位搜索</a>
                     </div>
                     <div class="cruit_head_right clearfix">
-                        <a class="cruit_head_right_a" href="" title="" v-if="job_search == 1 && type_id == 1">创建个人简历</a>
-                        <a class="cruit_head_right_a" href="" title="" v-if="job_search == 1 && type_id == 3">发布招聘信息</a>
+                        <span class="cruit_head_right_a" @click="createResume" v-if="type_id == 1">创建个人简历</span>
+                        <!-- <span class="cruit_head_right_a" @click="createJob" v-if="type_id == 3">发布招聘信息</span> -->
                     </div>
                 </div>
-                <div class="cruit_ul_1 clearfix">
+                <!-- <div class="cruit_ul_1 clearfix">
                     <NuxtLink class="cruit_ul_1_a" :class="{ cruit_ul_1_a_only: cruit_ul_1_a_only_num == index }"
-                        :href="{ path: '/zhaogongzhaopin/search', query: { provinceid: `${item.id}` } }" title=""
-                        v-for="(item, index) in provinceList" :key="item.id">
+                        :href="{ path: '/zhaogongzhaopinnongmingong/search', query: { provinceid: `${item.id}` } }"
+                        title="" v-for="(item, index) in provinceList" :key="item.id">
                         {{ item.name }}
                     </NuxtLink>
-                </div>
+                </div> -->
                 <form class="cruit_form clearfix" action=" " method=" ">
                     <div class="cruit_form_tip clearfix">
                         <div class="cruit_form_per">
                             <label class="cruit_form_label">行业类别:</label>
                             <div class="cruit_form_label_right clearfix">
-                                <el-select v-model="industry_category" placeholder="请选择" style="width: 140px"
+                                <el-select v-model="industry_category" placeholder="请选择" style="width: 140px" clearable
                                     @change="hyChange">
                                     <el-option v-for="item in industry_categoryList" :key="item.hyid"
                                         :label="item.hyname" :value="item.hyid" />
@@ -39,7 +39,7 @@
                         <div class="cruit_form_per">
                             <label class="cruit_form_label">职位类别:</label>
                             <div class="cruit_form_label_right clearfix">
-                                <el-select v-model="position_category" placeholder="请选择" style="width: 140px"
+                                <el-select v-model="position_category" placeholder="请选择" style="width: 140px" clearable
                                     @change="zwChange">
                                     <el-option v-for="item in position_categoryList" :key="item.zwid"
                                         :label="item.zwname" :value="item.zwid" />
@@ -49,8 +49,8 @@
                         <div class="cruit_form_per">
                             <label class="cruit_form_label">具体职位:</label>
                             <div class="cruit_form_label_right clearfix">
-                                <el-select v-model="position" placeholder="请选择" style="width: 140px"
-                                    @change="jtzwChange">
+                                <el-select v-model="position" placeholder="请选择" style="width: 140px" clearable
+                                    no-data-text="请先选择职位类别" @change="jtzwChange">
                                     <el-option v-for="item in positionList" :key="item.zwid" :label="item.zwname"
                                         :value="item.zwid" />
                                 </el-select>
@@ -61,13 +61,13 @@
                         <div class="cruit_form_per">
                             <label class="cruit_form_label">地区选择:</label>
                             <div class="cruit_form_label_right clearfix">
-                                <el-select v-model="province" placeholder="请选择省" style="width: 140px"
+                                <el-select v-model="province" placeholder="请选择省" style="width: 140px" clearable
                                     @change="provinceChange">
                                     <el-option v-for="item in provinceList" :key="item.id" :label="item.name"
                                         :value="item.id" />
                                 </el-select>
                                 <el-select v-model="city" placeholder="请选择市" style="width: 140px" no-data-text="请先选择省"
-                                    @change="cityChange">
+                                    clearable @change="cityChange">
                                     <el-option v-for="item in cityList" :key="item.id" :label="item.name"
                                         :value="item.id" />
                                 </el-select>
@@ -78,11 +78,8 @@
                         <div class="cruit_form_per">
                             <label class="cruit_form_label">关键词:</label>
                             <div class="cruit_form_label_right clearfix">
-                                <el-input v-model="keywords" style="width: 300px" placeholder="请输入搜索关键词" />
-                                <!-- <NuxtLink
-                                    :href="{ path: '/zhaogongzhaopin/search', query: { hyid: `${hyid}`, zwid: `${zwid}`, jtzwid: `${jtzwid}`, provinceid: `${provinceid}`, cityid: `${cityid}`, keywords: `${keywords}` } }"> -->
+                                <el-input v-model="keywords" style="width: 300px" placeholder="请输入搜索关键词" clearable />
                                 <el-button type="success" @click="goSearch">搜索</el-button>
-                                <!-- </NuxtLink> -->
                             </div>
                         </div>
                     </div>
@@ -98,11 +95,10 @@
                         <div class="cruit_head_left">
                             <a class="cruit_head_a cruit_head_only" href="" title="">招聘职位</a>
                         </div>
-                        <!-- <a class="cruit_head_a_more" href="" title=""> 更多 &gt </a> -->
                     </div>
-                    <div class="cruit_ul_2 clearfix">
+                    <div class="cruit_ul_2 clearfix" v-if="job_vacancy">
                         <div class="cruit_li_2 clearfix" v-for="(item, index) in job_vacancy" :key="item.id">
-                            <NuxtLink class="cruit_li_2_a" :href="`/${item.pinyin}/${item.id}.html?type=${1}`" title="">
+                            <NuxtLink class="cruit_li_2_a" :href="`/${item.pinyin}/${item.id}.html`" title="">
                                 <div class="cruit_li_2_head_box clearfix">
                                     <div class="cruit_li_2_head clearfix dot1">{{ item.title }}</div>
                                     <div class="cruit_li_2_head_name clearfix dot1">{{ item.business_name }}</div>
@@ -124,19 +120,25 @@
                             </NuxtLink>
                         </div>
                     </div>
+                    <div class="empty" v-if="job_vacancy == false">
+                        <img src="@/public/topic/empty.png" alt="" class="empty_img">
+                        <span class="empty_text">当前暂无数据</span>
+                    </div>
+                    <div class="pagination" v-if="zptotal">
+                        <el-pagination size="small" background layout="prev, pager, next" :total="zptotal" class="mt-4"
+                            prev-text="上一页" next-text="下一页" @change="changePage" />
+                    </div>
                 </section>
-                <!-- 招聘职位 -->
-                <!-- 人才服务 -->
-                <section class="index_4 clearfix">
+
+                <!-- <section class="index_4 clearfix">
                     <div class="recruit_head_box clearfix">
                         <div class="cruit_head_left">
                             <a class="cruit_head_a cruit_head_only" href="" title="">人才服务</a>
                         </div>
-                        <!-- <a class="cruit_head_a_more" href="" title=""> 更多 &gt </a> -->
                     </div>
-                    <div class="cruit_ul_3 clearfix">
+                    <div class="cruit_ul_3 clearfix" v-if="job_resume">
                         <div class="cruit_li_3 clearfix" v-for="(item, index) in job_resume" :key="item.id">
-                            <NuxtLink class="cruit_li_3_a" :href="`/${item.pinyin}/${item.id}.html?type=${2}`" title="">
+                            <NuxtLink class="cruit_li_3_a" :href="`/${item.pinyin}/${item.id}.html`" title="">
                                 <div class="cruit_li_3_head_box clearfix">
                                     <div class="cruit_li_3_head clearfix dot1">{{ item.name }}</div>
                                     <div class="cruit_li_3_head_name clearfix dot1">{{ item.jtzw_name }}</div>
@@ -160,7 +162,6 @@
                                 </div>
                                 <div class="cruit_li_3_tag_box clearfix">
                                     <span class="cruit_li_3_tag">{{ item.city_name }}</span>
-                                    <!-- updated_at -->
                                     <span class="cruit_li_3_tag">
                                         {{ getTime(item.updated_at, 'year', 1) }}
                                     </span>
@@ -168,273 +169,14 @@
                             </NuxtLink>
                         </div>
                     </div>
-                </section>
-                <!-- 人才服务-->
+                    <div class="empty" v-if="job_resume == false">
+                        <img src="@/public/topic/empty.png" alt="" class="empty_img">
+                        <span class="empty_text">当前暂无数据</span>
+                    </div>
+                </section> -->
             </main>
         </main>
         <HomeAdvertising :imgurl="adImg1" v-if="adImg1"></HomeAdvertising>
-        <!-- 资讯部分 -->
-        <!-- <div class="layoutCopy">
-            <div class="layoutCopyLeft">
-                <div class="layoutCopyLeftTop">
-                    <div class="layoutCopyLeft1" v-if="pageData.length >= 5">
-                        <div class="layoutTitleBox" v-if="pageData[4]">
-                            <div class="layoutTitle" v-if="pageData[4].cid">
-                                <NuxtLink v-if="pageData[4].cid" :href="getLinkPath(pageData[4])" class="active"
-                                    :title="pageData[4].alias">
-                                    {{ pageData[4].alias }}
-                                </NuxtLink>
-                            </div>
-                            <div class="layoutMore" v-if="pageData[4].cid">
-                                <NuxtLink v-if="pageData[4].cid" :href="getLinkPath(pageData[4])"
-                                    :title="pageData[4].alias">
-                                    查看更多
-                                </NuxtLink>
-                            </div>
-                        </div>
-                        <div class="layoutCopyData_style1" v-if="boxData5[0]">
-                            <NuxtLink :href="getLinkPathDetail(boxData5[0])" :title="boxData5[0].title"
-                                :target="boxData5[0].islink == 1 ? '_blank' : '_self'">
-                                <img :src="boxData5[0].imgurl" :alt="boxData5[0].title">
-                                <div>
-                                    <span>{{ boxData5[0].title }}</span>
-                                </div>
-                            </NuxtLink>
-                            <NuxtLink :href="getLinkPathDetail(boxData5data2[0])" :title="boxData5data2[0]"
-                                :target="boxData5data2[0].islink == 1 ? '_blank' : '_self'">
-                                <p class="title">{{ boxData5data2[0].title }}</p>
-                                <p>&nbsp;</p>
-                            </NuxtLink>
-                        </div>
-                    </div>
-                    <div class="layoutCopyLeft2" v-if="pageData.length >= 6">
-                        <div class="layoutTitleBox" v-if="pageData[5]">
-                            <div class="layoutTitle" v-if="pageData[5].cid">
-                                <NuxtLink v-if="pageData[5].cid" :href="getLinkPath(pageData[5])" class="active"
-                                    :title="pageData[5].alias">
-                                    {{ pageData[5].alias }}
-                                </NuxtLink>
-                            </div>
-                            <div class="layoutMore" v-if="pageData[5].cid">
-                                <NuxtLink v-if="pageData[5].cid" :href="getLinkPath(pageData[5])"
-                                    :title="pageData[5].alias">
-                                    查看更多
-                                </NuxtLink>
-                            </div>
-                        </div>
-                        <div class="layoutCopyData_style2">
-                            <NuxtLink :href="getLinkPathDetail(item)" :title="item.title" v-for="item in boxData6"
-                                :target="item.islink == 1 ? '_blank' : '_self'">
-                                <p class="title">{{ item.title }}</p>
-                            </NuxtLink>
-                        </div>
-                    </div>
-                </div>
-                <div class="layoutCopyLeftBottom" v-if="pageData.length >= 7">
-                    <div class="layoutTitleBox" v-if="pageData[6]">
-                        <div class="layoutTitle" v-if="pageData[6].cid">
-                            <NuxtLink v-if="pageData[6].cid" :href="getLinkPath(pageData[6])" class="active"
-                                :title="pageData[6].alias">
-                                {{ pageData[6].alias }}
-                            </NuxtLink>
-                        </div>
-                        <div class="layoutMore" v-if="pageData[6].cid">
-                            <NuxtLink v-if="pageData[6].cid" :href="getLinkPath(pageData[6])"
-                                :title="pageData[6].alias">
-                                查看更多
-                            </NuxtLink>
-                        </div>
-                    </div>
-                    <div class="layoutCopyData_style3">
-                        <div v-for="(item, index) in boxData7">
-                            <NuxtLink :href="getLinkPathDetail(item)" :title="item.title" class="style3link1"
-                                v-if="index == 0" :target="item.islink == 1 ? '_blank' : '_self'">
-                                <div class="time">
-                                    <p>{{ getTime(item.updated_at, 'day', 1) }}</p>
-                                    <p>{{ getTime(item.updated_at, 'month', 1) }}</p>
-                                </div>
-                                <div>
-                                    <p class="title">{{ item.title }}</p>
-                                    <p class="introduce">{{ item.introduce }}</p>
-                                </div>
-                            </NuxtLink>
-                            <NuxtLink :href="getLinkPathDetail(item)" :title="item.title" class="style3link2"
-                                v-if="index > 0" :target="item.islink == 1 ? '_blank' : '_self'">
-                                <div>
-                                    <b></b>
-                                    <p class="title">{{ item.title }}</p>
-                                </div>
-                                <p>&nbsp;</p>
-                            </NuxtLink>
-                        </div>
-                    </div>
-                </div>
-            </div>
-            <div class="layoutCopyRight" v-if="pageData.length >= 8">
-                <div class="layoutTitleBox" v-if="pageData[7]">
-                    <div class="layoutTitle" v-if="pageData[7].cid">
-                        <NuxtLink v-if="pageData[7].cid" :href="getLinkPath(pageData[7])" class="active"
-                            :title="pageData[7].alias">
-                            {{ pageData[7].alias }}
-                        </NuxtLink>
-                    </div>
-                    <div class="layoutMore" v-if="pageData[7].cid">
-                        <NuxtLink v-if="pageData[7].cid" :href="getLinkPath(pageData[7])" :title="pageData[7].alias">
-                            查看更多
-                        </NuxtLink>
-                    </div>
-                </div>
-                <div class="layoutCopyData_style4">
-                    <div class="layoutCopyData_pic">
-                        <NuxtLink :href="getLinkPathDetail(item)" :title="item.title" v-for="item in boxData8"
-                            :target="item.islink == 1 ? '_blank' : '_self'">
-                            <img :src="item.imgurl" :alt="item.title">
-                            <p>{{ item.title }}</p>
-                        </NuxtLink>
-                    </div>
-                    <div class="layoutCopyData_text">
-                        <NuxtLink :href="getLinkPathDetail(item)" :title="item.title" v-for="item in boxData88"
-                            :target="item.islink == 1 ? '_blank' : '_self'">
-                            <div class="title">{{ item.title }}</div>
-                            <div class="more">详</div>
-                        </NuxtLink>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <div class="farming">
-            <div class="inner">
-                <div class="farmerLeft">
-                    <div class="farmer">
-                        <h3>
-                            <div class="titleBoxTabs" v-if="pageData.length >= 9">
-                                <span class="active" v-if="pageData[8].cid">
-                                    <NuxtLink :href="getLinkPath(pageData[8])" :title="pageData[8].alias"
-                                        @mouseenter="tabsData1 = 1" :class="{ active: tabsData1 == 1 }">
-                                        {{ pageData[8].alias }}
-                                    </NuxtLink>
-                                </span>
-                                <span v-if="pageData[9].cid">
-                                    <NuxtLink :href="getLinkPath(pageData[9])" :title="pageData[9].alias"
-                                        @mouseenter="tabsData1 = 2" :class="{ active: tabsData1 == 2 }">
-                                        {{ pageData[9].alias }}
-                                    </NuxtLink>
-                                </span>
-                            </div>
-                        </h3>
-                        <ul class="mode1ul_style1" v-if="tabsData1 == 1">
-                            <li v-for="(item, index) in boxData9" class="imgbg">
-                                <NuxtLink :href="getLinkPathDetail(item)" :title="item.title"
-                                    :target="item.islink == 1 ? '_blank' : '_self'">
-                                    <img :src="item.imgurl" :alt="item.title">
-                                    <div>
-                                        <p>
-                                            <span v-if="index == 0">专题</span>
-                                            {{ item.title }}
-                                        </p>
-                                        <p>&nbsp;</p>
-                                    </div>
-                                </NuxtLink>
-                            </li>
-                        </ul>
-                        <ul class="mode1ul_style2" v-if="tabsData1 == 1">
-                            <li v-for="item in boxData9data2">
-                                <NuxtLink :href="getLinkPathDetail(item)" :title="item.title"
-                                    :target="item.islink == 1 ? '_blank' : '_self'">
-                                    <p class="title">{{ item.title }}</p>
-                                    <p>&nbsp;</p>
-                                </NuxtLink>
-                            </li>
-                        </ul>
-                        <ul class="mode1ul_style1" v-if="tabsData1 == 2">
-                            <li v-for="(item, index) in boxData10" class="imgbg">
-                                <NuxtLink :href="getLinkPathDetail(item)" :title="item.title"
-                                    :target="item.islink == 1 ? '_blank' : '_self'">
-                                    <img :src="item.imgurl" :alt="item.title">
-                                    <div>
-                                        <p>
-                                            <span v-if="index == 0">专题</span>
-                                            {{ item.title }}
-                                        </p>
-                                        <p>&nbsp;</p>
-                                    </div>
-                                </NuxtLink>
-                            </li>
-                        </ul>
-                        <ul class="mode1ul_style2" v-if="tabsData1 == 2">
-                            <li v-for="item in boxData10data2">
-                                <NuxtLink :href="getLinkPathDetail(item)" :title="item.title"
-                                    :target="item.islink == 1 ? '_blank' : '_self'">
-                                    <p class="title">{{ item.title }}</p>
-                                    <p>&nbsp;</p>
-                                </NuxtLink>
-                            </li>
-                        </ul>
-                    </div>
-                </div>
-                <div class="farmerRight">
-                    <div class="rich" v-if="pageData.length >= 11">
-                        <h3 v-if="pageData[10]">
-                            <span v-if="pageData[10].cid">
-                                <NuxtLink v-if="pageData[10].cid" :href="getLinkPath(pageData[10])" class="active"
-                                    :title="pageData[10].alias">
-                                    {{ pageData[10].alias }}
-                                </NuxtLink>
-                            </span>
-                            <NuxtLink v-if="pageData[10].cid" :href="getLinkPath(pageData[10])"
-                                :title="pageData[10].alias">
-                                查看更多
-                            </NuxtLink>
-                        </h3>
-                        <div class="richList">
-                            <div class="richListPic" v-if="boxData11[0]">
-                                <NuxtLink :href="getLinkPathDetail(boxData11[0])" :title="boxData11[0].title"
-                                    :target="boxData11[0].islink == 1 ? '_blank' : '_self'">
-                                    <img :src="boxData11[0].imgurl" :alt="boxData11[0].title">
-                                    <div>
-                                        <span>{{ boxData11[0].title }}</span>
-                                    </div>
-                                </NuxtLink>
-                            </div>
-                            <div class="richListText" v-if="boxData11data2[0]">
-                                <NuxtLink :href="getLinkPathDetail(boxData11data2[0])" :title="boxData11data2[0].title"
-                                    :target="boxData11data2[0].islink == 1 ? '_blank' : '_self'">
-                                    <span>{{ boxData11data2[0].title }}</span>
-                                </NuxtLink>
-                            </div>
-                            <div class="richListText" v-if="boxData11data2[1]">
-                                <NuxtLink :href="getLinkPathDetail(boxData11data2[1])" :title="boxData11data2[1].title"
-                                    :target="boxData11data2[1].islink == 1 ? '_blank' : '_self'">
-                                    <span>{{ boxData11data2[1].title }}</span>
-                                </NuxtLink>
-                            </div>
-                            <div class="richListPictow" v-if="boxData11[1]">
-                                <NuxtLink :href="getLinkPathDetail(boxData11[1])" :title="boxData11[1].title"
-                                    :target="boxData11[1].islink == 1 ? '_blank' : '_self'">
-                                    <img :src="boxData11[1].imgurl" :alt="boxData11[1].title">
-                                    <div>
-                                        <span>{{ boxData11[1].title }}</span>
-                                    </div>
-                                </NuxtLink>
-                            </div>
-                            <div class="richListText" v-if="boxData11data2[2]">
-                                <NuxtLink :href="getLinkPathDetail(boxData11data2[2])" :title="boxData11data2[2].title"
-                                    :target="boxData11data2[2].islink == 1 ? '_blank' : '_self'">
-                                    <span>{{ boxData11data2[2].title }}</span>
-                                </NuxtLink>
-                            </div>
-                            <div class="richListText" v-if="boxData11data2[3]">
-                                <NuxtLink :href="getLinkPathDetail(boxData11data2[3])" :title="boxData11data2[3].title"
-                                    :target="boxData11data2[3].islink == 1 ? '_blank' : '_self'">
-                                    <span>{{ boxData11data2[3].title }}</span>
-                                </NuxtLink>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-            </div>
-        </div> -->
-
         <HomeFoot1></HomeFoot1>
     </div>
 </template>
@@ -442,36 +184,25 @@
 <script setup>
 //0.加载页面依赖 start ---------------------------------------->
 import { ref, onMounted } from 'vue';
-import { ElMessage, ElSelect, ElOption, ElInput, ElButton } from 'element-plus';
+import { ElMessage, ElSelect, ElOption, ElInput, ElButton, ElPagination } from 'element-plus';
+const { $webUrl, $CwebUrl, $BwebUrl } = useNuxtApp()
 
-//格式化跳转路径 - 标题
-//首页分类栏目标题,不需要考虑外链
-const getLinkPath = (item) => {
-    //return `/${item.url}/1.html`;
-    //return `/newsList/${item.cid}?page=1`;
-    return `/${item.aLIas_pinyin}/list-1.html`;
-}
-//首页跳转到详情,这里需要考虑外链
-const getLinkPathDetail = (item) => {
-    if (item.islink == 1) {
-        return `${item.linkurl}`;
-    } else {
-        //return `/${item.aLIas_pinyin}/${item.id}`;
-        //return `/newsDetail/${item.id}`
-        return `/${item.pinyin}/${item.id}.html`;
-    }
-}
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
 
 //获取用户信息
 let type_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-// console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
+let website_id = ref('')
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
 //0.加载页面依赖 end ---------------------------------------->
 
 //1.获得路由id start ---------------------------------------->
@@ -504,6 +235,15 @@ if (getRouteId.code == 200) {
 //1.获得路由id end ---------------------------------------->
 
 //2.页面交互效果 start ---------------------------------------->
+//分页
+const page = ref(1) //页码
+const pageSize = ref(20) //每页显示条数
+const zptotal = ref(0) //总条数
+//分页事件
+let changePage = (value) => {
+    console.log("当前页码", value);
+    // navigateTo(`/${targetSegment}/${value}.html`)
+}
 // 2.1 下拉列表
 // 2.1.1 获取省份
 const province = ref('')  //省
@@ -522,6 +262,7 @@ if (getArea.code == 200) {
 const provinceChange = async (val) => {
     console.log('获取到的省份id', val);
     provinceid.value = val;
+    city.value = '';
     getCity(val)
 }
 const getCity = async (val) => {
@@ -554,7 +295,7 @@ const getData = async () => {
         // console.log("获取到的分类数据:", getData.data);
         industry_categoryList.value = getData.data.hy; //行业
         position_categoryList.value = getData.data.zw; //职位
-        positionList.value = getData.data.jtzw; //具体职位
+        // positionList.value = getData.data.jtzw; //具体职位
     }
 }
 getData()
@@ -562,17 +303,19 @@ getData()
 const job_vacancy = ref('') // 招聘岗位
 const job_resume = ref('') // 简历
 const getJob = async () => {
-    const getJob = await requestDataPromise('/web/getWebsiteJob', {
+    const getJob = await requestDataPromise('/web/getWebsiteJobList', {
         method: 'GET',
         query: {
-            'job1_num': 6,
-            'job2_num': 9
+            'page': page.value,
+            'pageSize': pageSize.value
         },
     });
     if (getJob.code == 200) {
         console.log("获取到的岗位和简历:", getJob.data);
-        job_vacancy.value = getJob.data.job_recuiting; // 招聘岗位
-        job_resume.value = getJob.data.job_hunting; // 简历
+        job_vacancy.value = getJob.data.JobRecruiting; // 招聘岗位
+        job_resume.value = getJob.data.JobHunting; // 简历
+        zptotal.value = getJob.data.recruit_count;
+        // qztotal.value = getJob.data.hunt_count;
     }
 }
 getJob()
@@ -586,7 +329,23 @@ const hyChange = async (val) => {
     hyid.value = val;
 }
 const zwChange = async (val) => {
+    console.log('111', val);
+
     zwid.value = val;
+    position.value = '';
+    const getPosition = await requestDataPromise('/web/getPositionList', {
+        method: 'GET',
+        query: {
+            'zwpid': val,
+        },
+    })
+    console.log("11112222", getPosition);
+
+    if (getPosition.code == 200) {
+        positionList.value = getPosition.data; //具体职位 
+    } else {
+        positionList.value = []; //具体职位
+    }
 }
 const jtzwChange = async (val) => {
     jtzwid.value = val;
@@ -599,7 +358,7 @@ const cityChange = async (val) => {
 const router = useRouter();
 const goSearch = async () => {
     router.push({
-        path: '/zhaogongzhaopin/search',
+        path: '/zhaogongzhaopinnongmingong/search',
         query: {
             'hyid': hyid.value,
             'zwid': zwid.value,
@@ -610,6 +369,14 @@ const goSearch = async () => {
         }
     })
 }
+// 创建个人简历
+let createResume = () => {
+    window.open($BwebUrl + '/#/addJobHunting', '_blank');
+}
+// 发布招聘信息
+let createJob = () => {
+    window.open($BwebUrl + '/#/creatJob', '_blank');
+}
 
 
 //2.4 展示广告
@@ -621,7 +388,7 @@ onMounted(async () => {
     //从客户端获取行政职能部门 加快打开速度
     const { $webUrl, $CwebUrl } = useNuxtApp();
     //广告1
-    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0001`
+    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0001`
     const responseAd1 = await fetch(url, {
         headers: {
             'Content-Type': 'application/json',
@@ -633,7 +400,7 @@ onMounted(async () => {
     adImg1.value = resultAd1.data[0];
 
     //广告2
-    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0002`
+    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0002`
     const responseAd2 = await fetch(url2, {
         headers: {
             'Content-Type': 'application/json',
@@ -645,7 +412,7 @@ onMounted(async () => {
     adImg2.value = resultAd2.data[0];
 
     //广告3
-    let url3 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0003`
+    let url3 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0003`
     const responseAd3 = await fetch(url3, {
         headers: {
             'Content-Type': 'application/json',
@@ -657,7 +424,7 @@ onMounted(async () => {
     adImg3.value = resultAd3.data[0];
 
     //广告4
-    let url4 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_category_0004`
+    let url4 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_category_0004`
     const responseAd4 = await fetch(url4, {
         headers: {
             'Content-Type': 'application/json',
@@ -745,7 +512,7 @@ try {
         ]
 
         let jsonString = JSON.stringify(getJson);
-        getPageAllData(jsonString);
+        // getPageAllData(jsonString);
 
     } else {
         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
@@ -822,242 +589,6 @@ async function getPageAllData(jsonString) {
     }
 }
 
-//5.页面基本信息 start---------------------------------------->
-//5.1 导航信息
-// const pageData = ref([
-//     // { cid: "", title: "", data: [] ,children_count:""},
-// ]);
-// //5.2 模块数据
-// //注意前置变量 在nuxt3的ssr模式中,并不存在变量提升。
-// //模块1
-// const boxData1 = ref([])
-// const boxData1data2 = ref([])
-// //模块2
-// const boxData2 = ref([]);
-// //模块3 - 该数据已经在模块中请求
-// //const boxData3 = ref([]);
-// //模块4
-// const boxData4 = ref([]);
-// //模块5
-// const boxData5 = ref([]);
-// const boxData5data2 = ref([]);
-// //模块6
-// const boxData6 = ref([]);
-// //模块7
-// const boxData7 = ref([]);
-// //模块8
-// const boxData8 = ref([]);
-// const boxData88 = ref([]);
-// //模块9 模块10 切换
-// const tabsData1 = ref(1)
-// //模块9
-// const boxData9 = ref([]);
-// const boxData9data2 = ref([]);
-// //模块10 
-// const boxData10 = ref([]);
-// const boxData10data2 = ref([]);
-// //模块11
-// const boxData11 = ref([]);
-// const boxData11data2 = ref([]);
-// //模块12 模块13 切换
-// const tabsData2 = ref(1)
-// //模块12
-// const boxData12 = ref([]);
-// //模块13 - 该模块只有一个入口
-// const boxData13 = ref([]);
-// //模块14 模块15 切换
-// const tabsData3 = ref(1)
-// //模块14 - 该模块含有子导航
-// const boxData14 = ref([]);
-// const boxData14data2 = ref([]);
-// const boxData14menu = ref([]);
-// const boxData14childpinyin = ref([]);
-// const boxData14mainData = ref([]);
-// //模块15
-// const boxData15 = ref([]);
-// const boxData15data2 = ref([]);
-// const boxData15menu = ref([]);
-// const boxData15childpinyin = ref([]);
-// const boxData15mainData = ref([]);
-// //模块16 模块17 切换
-// const tabsData4 = ref(1)
-// //模块16 - 该模块含有子导航
-// const boxData16 = ref([]);
-// const boxData16data2 = ref([]);
-// const boxData16menu = ref([]);
-// const boxData16childpinyin = ref([]);
-// const boxData16mainData = ref([]);
-// //模块17 - 政策法规 本来这个是模块3 原来是单独放到一个模块中的,现在提出来了
-// const boxData17 = ref({})
-
-
-// //3.2获得导航数据
-// try {
-//     const navigateData = await requestDataPromise('/web/getWebsiteModelCategory', {
-//         method: 'GET',
-//         query: {
-//             'placeid': 1,
-//             'pid': 0,
-//             'num': 30
-//         },
-//     });
-//     if (navigateData.code == 200) {
-//         // 遍历可用的导航池放到页面中
-//         for (let index in navigateData.data) {
-//             let data = {
-//                 title: navigateData.data[index].name,
-//                 cid: navigateData.data[index].category_id,
-//                 children_count: navigateData.data[index].children_count,
-//                 alias: navigateData.data[index].alias,
-//                 aLIas_pinyin: navigateData.data[index].aLIas_pinyin
-//             };
-//             //主体渲染 第一层
-//             //新农村11
-//             if (navigateData.data[index].category_id == 11) { pageData.value[0] = data }
-//             //农民工317
-//             if (navigateData.data[index].category_id == 317) { pageData.value[1] = data }
-//             //第二层
-//             //政策法规1
-//             if (navigateData.data[index].category_id == 1) { pageData.value[2] = data }
-//             //三农之窗2
-//             if (navigateData.data[index].category_id == 2) { pageData.value[3] = data }
-//             //第三层
-//             //区域经济5
-//             if (navigateData.data[index].category_id == 5) { pageData.value[4] = data }
-//             //三农投资6
-//             if (navigateData.data[index].category_id == 12) { pageData.value[5] = data }
-//             //农贸信息13
-//             if (navigateData.data[index].category_id == 13) { pageData.value[6] = data }
-//             //书刊信息24
-//             if (navigateData.data[index].category_id == 24) { pageData.value[7] = data }
-//             //第四层
-//             //三农科教14
-//             if (navigateData.data[index].category_id == 14) { pageData.value[8] = data }
-//             //文化生活15
-//             if (navigateData.data[index].category_id == 15) { pageData.value[9] = data }
-//             //三农服务27
-//             if (navigateData.data[index].category_id == 27) { pageData.value[10] = data }
-//             //第五层
-//             //三农探索16
-//             if (navigateData.data[index].category_id == 16) { pageData.value[11] = data }
-//             //三农人物18
-//             if (navigateData.data[index].category_id == 18) { pageData.value[12] = data }
-//             //第六层
-//             //农资购销21
-//             if (navigateData.data[index].category_id == 21) { pageData.value[13] = data }
-//             //农产购销153
-//             if (navigateData.data[index].category_id == 153) { pageData.value[14] = data }
-//             //第七层
-//             //打假维权26
-//             if (navigateData.data[index].category_id == 26) { pageData.value[15] = data }
-//         }
-//     } else {
-//         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-//         console.log("错误位置:首页导航池")
-//         console.log("后端错误反馈:", navigateData.message)
-//         console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-//     }
-// } catch (error) {
-//     console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-//     console.log("错误位置:首页导航渲染阶段")
-//     console.log("错误:导航池渲染执行接口出错!请检查首页的14的模块的具体执行方法!")
-//     console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-// }
-
-
-
-// let getJson = [
-//     { "parent": "11,2,8", "child": "" },//模块1新农村 
-//     { "parent": "317,0,8", "child": "" },//模块2农民工 
-//     { "parent": "2,0,5", "child": "" },//模块4三农之窗
-//     { "parent": "5,1,1", "child": "" },//模块5区域经济
-//     { "parent": "12,0,3", "child": "" },//模块6三农投资 
-//     { "parent": "13,0,4", "child": "" },//模块7农贸信息 
-//     { "parent": "24,2,7", "child": "" },//模块8书刊信息
-//     { "parent": "14,2,8", "child": "" },//模块9三农科教 
-//     { "parent": "15,2,8", "child": "" },//模块10文化生活
-//     { "parent": "27,2,4", "child": "" },//模块11三农服务27
-//     { "parent": "16,0,14", "child": "" },//模块12三农探索16
-//     { "parent": "18,0,14", "child": "" },//模块13三农人物18
-//     { "parent": "21,2,8", "child": "188,0,5" },//模块14农资购销
-//     { "parent": "153,2,8", "child": "258,0,5" },//模块15农产购销
-//     { "parent": "26,4,8", "child": "191,0,5" },//模块16打假维权
-//     { "parent": "1,4,8", "child": "" },//模块3政策法规
-// ]
-
-// let jsonString = JSON.stringify(getJson);
-
-// async function getPageAllData() {
-//     const mkdata = await requestDataPromise('/web/getWebsiteAllArticle', {
-//         method: 'GET',
-//         query: {
-//             'id': jsonString
-//         },
-//     });
-//     console.log("makdata:", mkdata);
-
-
-//     if (mkdata.code == 200) {
-//         //模块1新农村
-//         boxData1.value = mkdata.data[0].imgnum;
-//         boxData1data2.value = mkdata.data[0].textnum;
-//         //模块2农名工
-//         boxData2.value = mkdata.data[1].textnum;
-//         //模块4三农之窗
-//         boxData4.value = mkdata.data[2].textnum;
-//         //模块5区域经济
-//         boxData5.value = mkdata.data[3].imgnum;
-//         boxData5data2.value = mkdata.data[3].textnum;
-//         //模块6三农投资
-//         boxData6.value = mkdata.data[4].textnum;
-//         //模块7农贸信息
-//         boxData7.value = mkdata.data[5].textnum;
-//         //模块8书刊信息
-//         boxData8.value = mkdata.data[6].imgnum;
-//         boxData88.value = mkdata.data[6].textnum;
-//         //模块9三农科教
-//         boxData9.value = mkdata.data[7].imgnum;
-//         boxData9data2.value = mkdata.data[7].textnum;
-//         //模块10文化生活
-//         boxData10.value = mkdata.data[8].imgnum;
-//         boxData10data2.value = mkdata.data[8].textnum;
-//         //模块11三农服务
-//         boxData11.value = mkdata.data[9].imgnum;
-//         boxData11data2.value = mkdata.data[9].textnum;
-//         //模块12三农探索
-//         boxData12.value = mkdata.data[10].textnum;
-//         //模块13三农人物
-//         boxData13.value = mkdata.data[11].textnum;
-//         //模块14农资购销 该栏目含有子导航
-//         boxData14.value = mkdata.data[12].imgnum;
-//         boxData14data2.value = mkdata.data[12].textnum;
-//         boxData14menu.value = mkdata.data[12].child.all_childcat;
-//         boxData14childpinyin.value = mkdata.data[12].child.pinyin;
-//         boxData14mainData.value = mkdata.data[12].child.textnum;
-//         //模块14农产购销 
-//         boxData15.value = mkdata.data[13].imgnum;
-//         boxData15data2.value = mkdata.data[13].textnum;
-//         boxData15menu.value = mkdata.data[13].child.all_childcat;
-//         boxData15childpinyin.value = mkdata.data[13].child.pinyin;
-//         boxData15mainData.value = mkdata.data[13].child.textnum;
-//         //模块15打假维权 
-//         boxData16.value = mkdata.data[14].imgnum;
-//         boxData16data2.value = mkdata.data[14].textnum;
-//         boxData16menu.value = mkdata.data[14].child.all_childcat;
-//         boxData16childpinyin.value = mkdata.data[14].child.pinyin;
-//         boxData16mainData.value = mkdata.data[14].child.textnum;
-//         //模块17政策法规
-//         boxData17.value = mkdata.data[15];
-
-//     } else {
-//         ElMessage.error(mkdata.message)
-//     }
-// }
-// getPageAllData();
-
-//5.页面基本信息 end---------------------------------------->
-
-
 //4.设置seo信息 start---------------------------------------->
 const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
     method: 'GET',

+ 175 - 131
pages/zhaogongzhaopin/search.vue

@@ -1,6 +1,5 @@
 <template>
     <div id="newsList">
-        <!-- <el-checkbox v-model="checked1" label="" /> -->
         <!-- 页面头部 -->
         <HomePageHead></HomePageHead>
 
@@ -8,27 +7,12 @@
         <HomePageNavigation></HomePageNavigation>
 
         <!-- 列表页广告一 -->
-        <HomeTopTen :imgurl="adImg1" v-if="adImg1"></HomeTopTen>
+        <HomeAdvertising :imgurl="adImg1" v-if="adImg1"></HomeAdvertising>
 
         <!-- 二级标题-->
-        <div class="sannongzhichuang">
-            <div class="inner">
-                <h2>
-                    <NuxtLink :to="`/${parent_pinyin}/index.html`"> {{ parent_name }} </NuxtLink>
-                    <em class="iconfont icon-xingzhuang-zhijiaosanjiaoxing-copy"></em>
-                </h2>
-                <p class="introduction">
-                    <strong>频道介绍</strong>
-                <div v-for="(item, index) in secondNav" :key="index">
-                    <span v-if="index <= 7">
-                        <NuxtLink :to="{ path: `/${targetRoute}/${item.aLIas_pinyin}/list-1.html` }">{{ item.alias }}
-                        </NuxtLink>
-                    </span>
-                    <b v-else></b>
-                </div>
-                </p>
-            </div>
-        </div>
+        <HomeListSecondaryHeadingZgzp v-if="parent_name != ''" :name="parent_name" :nav="secondNav"
+            :pinyin="parent_pinyin">
+        </HomeListSecondaryHeadingZgzp>
 
         <main class="index_main">
             <!-- 三农资讯网-招工招聘-社会招聘 snzx_society -->
@@ -41,23 +25,25 @@
                     <div class="cruit_head_right clearfix">
                         <span class="cruit_head_right_a" @click="createResume"
                             v-if="job_search == 1 && type_id == 1">创建个人简历</span>
-                        <span class="cruit_head_right_a" @click="createJob"
-                            v-if="job_search == 1 && type_id == 3">发布招聘信息</span>
+                        <!-- <span class="cruit_head_right_a" @click="createJob"
+                            v-if="job_search == 1 && type_id == 3">发布招聘信息</span> -->
                     </div>
                 </div>
                 <form class="cruit_form clearfix" action=" " method=" ">
                     <div class="society_form_tip clearfix">
                         <label class="society_form_label">行业类别:</label>
                         <div class="society_form_right_a_box clearfix">
-                            <a class="society_form_right_a" :class="{ society_form_right_a_only: hyid == '' || !hyid }"
-                                title="全部">
+                            <a class="society_form_right_a"
+                                :class="{ society_form_right_a_only: hyid == '' || !hyid || hyid == 0 }" title="全部"
+                                @click="hyChange(0)">
                                 全部
                             </a>
                             <NuxtLink v-for="(item, index) in industry_categoryList" :key="item">
                                 <span class="society_form_right_a"
                                     :class="{ society_form_right_a_only: item.hyid == hyid }" :title="item.hyname"
-                                    v-if="index < 20 && hyIndex == 1">{{ item.hyname }}</span>
-                                <span class="society_form_right_a" v-if="hyIndex == 2"
+                                    @click="hyChange(item.hyid)" v-if="index < 20 && hyIndex == 1">{{ item.hyname
+                                    }}</span>
+                                <span class="society_form_right_a" v-if="hyIndex == 2" @click="hyChange(item.hyid)"
                                     :class="{ society_form_right_a_only: item.hyid == hyid }" :title="item.hyname">
                                     {{ item.hyname }}
                                 </span>
@@ -69,14 +55,16 @@
                     <div class="society_form_tip clearfix">
                         <label class="society_form_label">职位类别:</label>
                         <div class="society_form_right_a_box clearfix">
-                            <a class="society_form_right_a" :class="{ society_form_right_a_only: zwid == '' || !zwid }"
-                                title="">全部</a>
+                            <a class="society_form_right_a"
+                                :class="{ society_form_right_a_only: zwid == '' || !zwid || zwid == 0 }" title=""
+                                @click="zwChange(0)">全部</a>
                             <span v-for="(item, index) in position_categoryList" :key="item">
                                 <span class="society_form_right_a" v-if="index < 20 && zwIndex == 1"
+                                    @click="zwChange(item.zwid)"
                                     :class="{ society_form_right_a_only: item.zwid == zwid }" :title="item.zwname">
                                     {{ item.zwname }}
                                 </span>
-                                <span class="society_form_right_a" v-if="zwIndex == 2"
+                                <span class="society_form_right_a" v-if="zwIndex == 2" @click="zwChange(item.zwid)"
                                     :class="{ society_form_right_a_only: item.zwid == zwid }" :title="item.zwname">
                                     {{ item.zwname }}
                                 </span>
@@ -87,17 +75,19 @@
                                 v-if="zwIndex == 2">收起</span>
                         </div>
                     </div>
-                    <div class="society_form_tip clearfix" v-if="job_search == 2">
+                    <div class="society_form_tip clearfix">
                         <label class="society_form_label">具体职位:</label>
                         <div class="society_form_right_a_box clearfix">
-                            <a class="society_form_right_a"
-                                :class="{ society_form_right_a_only: jtzwid == '' || !jtzwid }" title="">全部</a>
+                            <a class="society_form_right_a" @click="jtzwChange(0)"
+                                :class="{ society_form_right_a_only: jtzwid == '' || !jtzwid || jtzwid == 0 }"
+                                title="">全部</a>
                             <span v-for="(item, index) in positionList" :key="item">
                                 <span class="society_form_right_a" v-if="index < 20 && jtzwIndex == 1"
+                                    @click="jtzwChange(item.zwid)"
                                     :class="{ society_form_right_a_only: item.zwid == jtzwid }" :title="item.zwname">
                                     {{ item.zwname }}
                                 </span>
-                                <span class="society_form_right_a" v-if="jtzwIndex == 2"
+                                <span class="society_form_right_a" v-if="jtzwIndex == 2" @click="jtzwChange(item.zwid)"
                                     :class="{ society_form_right_a_only: item.zwid == jtzwid }" :title="item.zwname">
                                     {{ item.zwname }}
                                 </span>
@@ -117,7 +107,7 @@
                                         :value="item.id" />
                                 </el-select>
                                 <el-select v-model="city" placeholder="请选择市" style="width: 140px" no-data-text="请先选择省"
-                                    clearable @change="cityChange">
+                                    clearable>
                                     <el-option v-for="item in cityList" :key="item.id" :label="item.name"
                                         :value="item.id" />
                                 </el-select>
@@ -145,8 +135,8 @@
                         <div class="cruit_head_left">
                             <a class="cruit_head_a" :class="{ cruit_head_only: job_search == 1 }"
                                 @mouseover="job_search = 1" title="">找工作</a>
-                            <a class="cruit_head_a" :class="{ cruit_head_only: job_search == 2 }"
-                                @mouseover="job_search = 2" title="">招人才</a>
+                            <!-- <a class="cruit_head_a" :class="{ cruit_head_only: job_search == 2 }"
+                                @mouseover="job_search = 2" title="">招人才</a> -->
                         </div>
                         <div class="society_head_right clearfix">
                             <div class="society_head_checkbox_box" v-if="job_search == 1 && type_id == 1">
@@ -155,17 +145,17 @@
                             <div class="society_head_right_all_box" v-if="job_search == 1 && type_id == 1">
                                 全选
                             </div>
-                            <div class="society_head_checkbox_box" v-if="job_search == 2 && type_id == 3">
+                            <!-- <div class="society_head_checkbox_box" v-if="job_search == 2 && type_id == 3">
                                 <el-checkbox v-model="allResume" label="" @change="toggleAllResume" />
                             </div>
                             <div class="society_head_right_all_box" v-if="job_search == 2 && type_id == 3">
                                 全选
-                            </div>
+                            </div> -->
                             <div class="society_head_right_a" title="" v-if="job_search == 1 && type_id == 1"
                                 @click="getjob">申请职位</div>
-                            <div class="society_head_right_a" v-if="job_search == 2 && type_id == 3"
+                            <!-- <div class="society_head_right_a" v-if="job_search == 2 && type_id == 3"
                                 @click="talkResume">
-                                沟通简历</div>
+                                沟通简历</div> -->
                             <!-- resumeBoo = true -->
                         </div>
                     </div>
@@ -174,15 +164,12 @@
                     <div class=" clearfix">
                         <!-- 找工作 -->
                         <div class=" clearfix" v-show="job_search == 1">
-                            <div class="cruit_ul_2 clearfix">
+                            <div class="cruit_ul_2 clearfix" v-if="job_vacancy">
                                 <div class="cruit_li_2 clearfix" v-for="(item, index) in job_vacancy" :key="item.id">
-
-                                    <div class="society_inp_checkbox_box_li_1 hand">
+                                    <div class="society_inp_checkbox_box_li_1 hand" v-if="type_id == 1">
                                         <el-checkbox v-model="selectedJobs" :value="item.id" @change="jobChange" />
                                     </div>
-                                    <NuxtLink class="cruit_li_2_a"
-                                        :href="`/${item.pinyin}/${item.id}.html?type=${job_search}`" title="">
-
+                                    <NuxtLink class="cruit_li_2_a" :href="`/${item.pinyin}/${item.id}.html`" title="">
                                         <div class="cruit_li_2_head_box clearfix">
                                             <div class="cruit_li_2_head clearfix dot1">{{ item.title }}</div>
                                             <div class="cruit_li_2_head_name clearfix dot1">
@@ -196,7 +183,8 @@
                                             <span class="cruit_li_2_foot_tag cruit_li_2_foot_addres">
                                                 {{ item.city_name }}
                                             </span>
-                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_exper">
+                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_exper"
+                                                v-if="item.experience_name || item.education_name">
                                                 <span class="cruit_li_2_foot_tag_in">{{ item.experience_name }}</span>
                                                 <span class="cruit_li_2_foot_tag_in">{{ item.education_name }}</span>
                                             </span>
@@ -207,21 +195,24 @@
                                     </NuxtLink>
                                 </div>
                             </div>
-                            <div class="pagination">
-                                <el-pagination size="small" background layout="prev, pager, next" :total="total"
-                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="change" />
+                            <div class="pagination" v-if="zptotal">
+                                <el-pagination size="small" background layout="prev, pager, next" :total="zptotal"
+                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="changePage" />
+                            </div>
+                            <div class="empty" v-if="job_vacancy == false">
+                                <img src="@/public/topic/empty.png" alt="" class="empty_img">
+                                <span class="empty_text">当前暂无数据</span>
                             </div>
                         </div>
                         <!-- 找工作 -->
                         <!-- 招人才 -->
-                        <div class=" clearfix" v-show="job_search == 2">
-                            <div class="society_ul_3 clearfix">
+                        <!-- <div class=" clearfix" v-show="job_search == 2">
+                            <div class="society_ul_3 clearfix" v-if="job_resume">
                                 <div class="society_li_3 clearfix" v-for="(item, index) in job_resume" :key="item">
-                                    <div class="society_inp_checkbox_box_li_3 hand">
+                                    <div class="society_inp_checkbox_box_li_3 hand" v-if="type_id == 3">
                                         <el-checkbox v-model="selectedResume" :value="item.id" @change="jobChange" />
                                     </div>
-                                    <NuxtLink class="society_li_3_a"
-                                        :href="`/${item.pinyin}/${item.id}.html?type=${job_search}`" title="">
+                                    <NuxtLink class="society_li_3_a" :href="`/${item.pinyin}/${item.id}.html`" title="">
                                         <div class="society_li_3_head_box clearfix">
                                             <div class="society_li_3_head clearfix dot1">
                                                 {{ item.name }}
@@ -254,11 +245,15 @@
                                     </NuxtLink>
                                 </div>
                             </div>
-                            <div class="pagination">
-                                <el-pagination size="small" background layout="prev, pager, next" :total="total"
-                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="change" />
+                            <div class="pagination" v-if="qztotal">
+                                <el-pagination size="small" background layout="prev, pager, next" :total="qztotal"
+                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="changePage" />
                             </div>
-                        </div>
+                            <div class="empty" v-if="job_resume == false">
+                                <img src="@/public/topic/empty.png" alt="" class="empty_img">
+                                <span class="empty_text">当前暂无数据</span>
+                            </div>
+                        </div> -->
                         <!-- 招人才 -->
                     </div>
                     <!-- 选项卡 -->
@@ -292,7 +287,7 @@
                 <div class="cruit_alert_rgb_box">
                     <div class="cruit_alert_rgb_head_box">
                         <div class="cruit_alert_rgb_close hand back100"></div>
-                        <div class="cruit_alert_rgb_head">请选择要投递的简历
+                        <div class="cruit_alert_rgb_head">请选择要沟通的岗位
                             <span class="close" @click="resumeBoo = false">x</span>
                         </div>
 
@@ -327,9 +322,12 @@
 import { ElSelect, ElOption, ElInput, ElButton, ElPagination, ElCheckbox, ElRadio, ElMessage } from 'element-plus';
 import { ref, onMounted } from 'vue';
 import { useRoute } from 'vue-router'
-//当前列表名称
 
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
 
+
+//当前列表名称
 const name = ref('')
 const selectedJobs = ref([])
 const selectedResume = ref([])
@@ -340,45 +338,45 @@ const cruit_ul_1_a_only_num = ref(0)
 const job_search = ref(1)   // 选项卡
 const { $webUrl, $CwebUrl, $BwebUrl } = useNuxtApp()
 
-//格式化跳转路径
-const getLinkPathDetail = (item) => {
-    if (item.islink == 1) {
-        return `${item.linkurl}`;
-    } else {
-        //return `/${item.aLIas_pinyin}/${item.id}`;
-        //return `/newsDetail/${item.id}`
-        return `/${item.pinyin}/${item.id}.html`;
-    }
-}
+
 //获取用户信息
 let type_id = ref('')
 let website_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
-    website_id.value = gettypeid.data.website_id
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
 //1.页面必备依赖 end ---------------------------------------->
 
 //1.获得路由id start ---------------------------------------->
 const route = useRoute();
 
-const hyid = route.query.hyid;
-const zwid = route.query.zwid;
-const jtzwid = route.query.jtzwid;
-const provinceid = route.query.provinceid;
-const cityid = route.query.cityid;
+const hyid = ref(route.query.hyid);
+const zwid = ref(route.query.zwid);
+const jtzwid = ref(route.query.jtzwid);
+const provinceid = ref(route.query.provinceid);
+const cityid = ref(route.query.cityid);
+// const zwid = route.query.zwid;
+// const jtzwid = route.query.jtzwid;
+// const provinceid = route.query.provinceid;
+// const cityid = route.query.cityid;
 const keyword = route.query.keywords;
 
+
+
 let articleId = 0;//路由id
 let pageNum = ref(2);
-let total = ref(1);
+let total = ref(0);
+let zptotal = ref(0);
+let qztotal = ref(0);
 const page = ref(1)
-let pageSize = ref(20);
+const pageSize = ref(10);
 let hyIndex = ref(1);
 let zwIndex = ref(1);
 let jtzwIndex = ref(1);
@@ -434,7 +432,6 @@ let createJob = () => {
 // 2.1.1 获取省份
 const province = ref('')  //省
 const city = ref('')  //市
-let province_id = ref('')
 const provinceList = ref([])  //省列表
 const cityList = ref([])  //市列表
 const getArea = await requestDataPromise('/web/selectWebsiteArea', {
@@ -448,7 +445,8 @@ if (getArea.code == 200) {
 
 // 2.1.2 获取
 const provinceChange = (val) => {
-    province_id.value = val;
+    provinceid.value = val;
+    city.value = '';
     console.log('获取到的省份id', val);
     getCity(val)
 }
@@ -505,7 +503,10 @@ const getData = async () => {
         // console.log("获取到的分类数据:", getData.data);
         industry_categoryList.value = getData.data.hy; //行业
         position_categoryList.value = getData.data.zw; //职位
-        positionList.value = getData.data.jtzw; //具体职位
+        if (zwid.value == 0 || zwid.value == '' || zwid.value == undefined || zwid.value == null) {
+            positionList.value = getData.data.jtzw; //具体职位
+        }
+
     }
 }
 getData()
@@ -520,10 +521,10 @@ const getJob = async () => {
         method: 'GET',
         query: {
             'catid': articleId,
-            'city_id': provinceid,
-            'hy_id': hyid,
-            'zw_id': zwid,
-            'jtzw_id': jtzwid,
+            'city_id': provinceid.value,
+            'hy_id': hyid.value,
+            'zw_id': zwid.value,
+            'jtzw_id': jtzwid.value,
             'page': page.value,
             'pageSize': pageSize.value,
             'keyword': keywords.value,
@@ -533,39 +534,64 @@ const getJob = async () => {
         // console.log("获取到的岗位和简历:", getJob.data);
         job_vacancy.value = getJob.data.JobRecruiting; // 招聘岗位
         job_resume.value = getJob.data.JobHunting; // 简历
-        if (job_search == 1) {
-            total.value = getJob.data.recruit_count;
-        } else {
-            total.value = getJob.data.hunt_count;
-        }
+        zptotal.value = getJob.data.recruit_count;
+        qztotal.value = getJob.data.hunt_count;
     }
 }
 getJob()
 
+let hyChange = (val) => {
+    console.log('hyChange', val)
+    hyid.value = val;
+    getJob()
+}
+let zwChange = async (val) => {
+    console.log('zwChange', val)
+    zwid.value = val;
+    const getPosition = await requestDataPromise('/web/getPositionList', {
+        method: 'GET',
+        query: {
+            'zwpid': val,
+        },
+    })
+    console.log("11112222", getPosition);
+
+    if (getPosition.code == 200) {
+        positionList.value = getPosition.data; //具体职位 
+    } else {
+        positionList.value = []; //具体职位
+        jtzwid.value = 0; //职位id
+    }
+    getJob()
+}
+let jtzwChange = (val) => {
+    console.log('jtzwChange', val)
+    jtzwid.value = val;
+    getJob()
+}
+
 // 搜索
 const goSearch = async () => {
     const getJob = await requestDataPromise('/web/getWebsiteJobList', {
         method: 'GET',
         query: {
             'catid': articleId,
-            'city_id': province_id.value,
-            'hy_id': hyid,
-            'zw_id': zwid,
-            'jtzw_id': jtzwid,
+            'city_id': provinceid.value,
+            'hy_id': hyid.value,
+            'zw_id': zwid.value,
+            'jtzw_id': jtzwid.value,
             'page': page.value,
             'pageSize': pageSize.value,
             'keyword': keywords.value,
         },
     });
+    console.log("111获取到的岗位和简历:", getJob.data);
+
     if (getJob.code == 200) {
-        // console.log("获取到的岗位和简历:", getJob.data);
         job_vacancy.value = getJob.data.JobRecruiting; // 招聘岗位
         job_resume.value = getJob.data.JobHunting; // 简历
-        if (job_search == 1) {
-            total.value = getJob.data.recruit_count;
-        } else {
-            total.value = getJob.data.hunt_count;
-        }
+        zptotal.value = getJob.data.recruit_count;
+        qztotal.value = getJob.data.hunt_count;
     }
 }
 
@@ -610,33 +636,34 @@ let changePage = (value) => {
 }
 
 //申请职位
-let getjob = async () => {
+let getjob = () => {
     if (selectedJobs.value.length == 0) {
         ElMessage({
             message: '请选择要申请的职位',
             type: 'warning',
         });
     } else {
-        // getWebsiteJobApply
-        const getJobList = await requestDataPromise('/web/getWebsiteJobApply', {
-            method: 'POST',
-            body: {
-                'website_id': website_id.value,
-                'recruit_id': selectedJobs.value,
+        console.log("获取到的11111_sel:", selectedJobs.value);
+        console.log("获取到的1111_website_id:", website_id.value);
+        axios.post('/web/getWebsiteJobApply', {
+            'website_id': website_id.value,
+            'recruit_id': selectedJobs.value,
+        }).then(response => {
+            console.log("获取到的申请结果:", response.data);
+            if (response.code == 200) {
+                ElMessage({
+                    message: '投递成功',
+                    type: 'success',
+                });
+            } else {
+                ElMessage({
+                    message: response.message,
+                    type: 'error',
+                });
             }
+            allJob.value = false;
+            selectedJobs.value = [];
         })
-        if (getJobList.code == 200) {
-            ElMessage({
-                message: '投递成功',
-                type: 'success',
-            });
-        } else {
-            ElMessage({
-                message: getJobList.message,
-                type: 'error',
-            });
-        }
-
     }
 
 }
@@ -660,8 +687,8 @@ let companyJOb = async () => {
     const companyJOb = await requestDataPromise('/web/getWebsiteJobRecruiting', {
         method: 'POST',
         body: {
-            'pageSize': 10,
-            'website_id': 2,
+            'pageSize': pageSize.value,
+            'website_id': website_id.value,
         }
     })
     // console.log("获取到的企业会员的职位11:", companyJOb.data);
@@ -828,7 +855,7 @@ onMounted(async () => {
     //从客户端获取行政职能部门 加快打开速度
     const { $webUrl, $CwebUrl } = useNuxtApp();
     //广告1
-    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_search_0001`
+    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_search_0001`
     const responseAd1 = await fetch(url, {
         headers: {
             'Content-Type': 'application/json',
@@ -840,7 +867,7 @@ onMounted(async () => {
     adImg1.value = resultAd1.data[0];
 
     //广告2
-    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=snzxw_list_0002`
+    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_list_0002`
     const responseAd2 = await fetch(url2, {
         headers: {
             'Content-Type': 'application/json',
@@ -857,4 +884,21 @@ onMounted(async () => {
 
 <style lang="less" scoped>
 @import url('@/assets/css/zgzpsearch.less');
+
+.empty {
+    width: 100%;
+    height: 150px;
+    line-height: 150px;
+    text-align: center;
+}
+
+.empty_img {
+    vertical-align: -30px;
+    margin-right: 20px;
+}
+
+.empty_text {
+    font-size: 26px;
+    color: #999;
+}
 </style>

+ 0 - 412
pages/zhaogongzhaopinnongmingong/[dir]/list-[id].vue

@@ -1,412 +0,0 @@
-<template>
-    <div id="newsList">
-        <!-- 页面头部 -->
-        <HomePageHead></HomePageHead>
-
-        <!-- 导航栏 -->
-        <HomePageNavigation1></HomePageNavigation1>
-
-        <!-- 列表页广告一 -->
-        <HomeAdvertising :imgurl="adImg1" v-if="adImg1"></HomeAdvertising>
-
-        <!-- 二级标题-->
-        <HomeListSecondaryHeading v-if="parent_name != ''" :name="parent_name" :nav="secondNav" :pinyin="parent_pinyin">
-        </HomeListSecondaryHeading>
-
-        <main class="color_main">
-            <main class="index_main">
-                <section class="index_3 clearfix">
-                    <div class="recruit_head_box clearfix">
-                        <div class="cruit_head_left">
-                            <a class="cruit_head_a" :class="{ cruit_head_only: job_resume_tabs == 1 }"
-                                @mouseover="job_resume_tabs = 1" title="">找工作</a>
-                            <a class="cruit_head_a" :class="{ cruit_head_only: job_resume_tabs == 2 }"
-                                @mouseover="job_resume_tabs = 2" title="">招人才</a>
-                        </div>
-                    </div>
-                    <div class=" clearfix">
-                        <div class=" clearfix" v-show="job_resume_tabs == 1">
-                            <div class="cruit_ul_2 clearfix" v-if="job_vacancy">
-                                <div class="cruit_li_2 clearfix" v-for="(item, index) in job_vacancy" :key="item.id">
-                                    <NuxtLink class="cruit_li_2_a" :href="`/${item.pinyin}/${item.id}.html`" title="">
-                                        <div class="cruit_li_2_head_box clearfix">
-                                            <div class="cruit_li_2_head clearfix dot1">{{ item.title }}</div>
-                                            <div class="cruit_li_2_head_name clearfix dot1">
-                                                {{ item.business_name }}
-                                            </div>
-                                        </div>
-                                        <div class="cruit_li_2_foot_title_box clearfix">
-                                            <span class="cruit_li_2_foot_title">{{ item.jtzw_name }}</span>
-                                        </div>
-                                        <div class="cruit_li_2_foot clearfix">
-                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_addres">
-                                                {{ item.city_name }}
-                                            </span>
-                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_exper"
-                                                v-if="item.experience_name || item.education_name">
-                                                <span class="cruit_li_2_foot_tag_in">{{ item.experience_name }}</span>
-                                                <span class="cruit_li_2_foot_tag_in">{{ item.education_name }}</span>
-                                            </span>
-                                            <span class="cruit_li_2_foot_tag cruit_li_2_foot_time">
-                                                {{ getTime(item.updated_at, 'year', 1) }}
-                                            </span>
-                                        </div>
-                                    </NuxtLink>
-                                </div>
-                            </div>
-                            <div class="pagination" v-if="zptotal">
-                                <el-pagination size="small" background layout="prev, pager, next" :total="zptotal"
-                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="change" />
-                            </div>
-                            <div class="empty" v-if="job_vacancy == false">
-                                <img src="@/public/topic/empty.png" alt="" class="empty_img">
-                                <span class="empty_text">当前暂无数据</span>
-                            </div>
-                        </div>
-                        <!-- 找工作 -->
-                        <!-- 招人才 -->
-                        <div class=" clearfix" v-show="job_resume_tabs == 2">
-                            <div class="society_ul_3 clearfix" v-if="job_resume">
-                                <div class="society_li_3 clearfix" v-for="(item, index) in job_resume" :key="item">
-                                    <NuxtLink class="society_li_3_a" :href="`/${item.pinyin}/${item.id}.html`" title="">
-                                        <div class="society_li_3_head_box clearfix">
-                                            <div class="society_li_3_head clearfix dot1">
-                                                {{ item.name }}
-                                            </div>
-                                            <div class="society_li_3_head_name clearfix dot1">
-                                                {{ item.jtzw_name }}
-                                            </div>
-                                        </div>
-                                        <div class="society_li_3_text_box clearfix">
-                                            <div class="society_li_3_text">
-                                                {{ item.sexy == 1 ? '男' : '女' }}
-                                                <em class="point">·</em>
-                                            </div>
-                                            <div class="society_li_3_text" v-if="item.experience">
-                                                {{ item.experience }}年
-                                                <em class="point">·</em>
-                                            </div>
-                                            <div class="society_li_3_text">
-                                                {{ item.origin }}
-                                                <em class="point">·</em>
-                                            </div>
-                                            <div class="society_li_3_text">{{ item.hy_name }}</div>
-                                        </div>
-                                        <div class="society_li_3_tag_box clearfix">
-                                            <span class="society_li_3_tag">{{ item.city_name }}</span>
-                                            <span class="society_li_3_tag">
-                                                {{ getTime(item.updated_at, 'year', 1) }}
-                                            </span>
-                                        </div>
-                                    </NuxtLink>
-                                </div>
-                            </div>
-                            <div class="pagination" v-if="qztotal">
-                                <el-pagination size="small" background layout="prev, pager, next" :total="qztotal"
-                                    class="mt-4" prev-text="上一页" next-text="下一页" @change="change" />
-                            </div>
-                            <div class="empty" v-if="job_resume == false">
-                                <img src="@/public/topic/empty.png" alt="" class="empty_img">
-                                <span class="empty_text">当前暂无数据</span>
-                            </div>
-                        </div>
-                    </div>
-                </section>
-            </main>
-        </main>
-
-        <!-- 页面底部 -->
-        <HomeFoot1></HomeFoot1>
-    </div>
-</template>
-
-<script setup>
-//1.页面必备依赖 start ---------------------------------------->
-import { ElPagination } from 'element-plus'
-import { ref, onMounted } from 'vue';
-//当前列表名称
-const name = ref('')
-// 找工作 招人才选项卡
-const job_resume_tabs = ref(2)   // 选项卡
-const { $webUrl, $CwebUrl, $BwebUrl } = useNuxtApp()
-
-//格式化跳转路径
-const getLinkPathDetail = (item) => {
-    if (item.islink == 1) {
-        return `${item.linkurl}`;
-    } else {
-        //return `/${item.aLIas_pinyin}/${item.id}`;
-        //return `/newsDetail/${item.id}`
-        return `/${item.pinyin}/${item.id}.html`;
-    }
-}
-//1.页面必备依赖 end ---------------------------------------->
-
-//1.获得路由id start ---------------------------------------->
-const route = useRoute();
-let articleId = 0;//路由id
-let activeId = 0;//一级导航id
-let pageNum = ref(2);
-let total = ref(1);
-let zptotal = ref(0);
-let qztotal = ref(0);
-let page = ref(1);
-let pageSize = ref(20);
-
-//获得当前的完整路径
-const fullPath = route.path;
-//拆分,取出来中间这一段,然后提取数字部分
-const segments = fullPath.split('/');
-const targetSegment = segments[2];
-const targetRoute = segments[1];
-
-//const numberPart = targetSegment.match(/\d+$/)?.[0]; 
-//let routeId = 20 //排除路径错误可以打开这个
-//articleId = numberPart;
-
-//通过导航路径反向查询导航id
-const getRouteId = await requestDataPromise('/web/getWebsiteRoute', {
-    method: 'GET',
-    query: {
-        'pinyin': targetSegment,
-    },
-});
-if (getRouteId.code == 200) {
-    articleId = getRouteId.data.category_id
-} else {
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    console.log("错误位置:通过url路径查询导航池id")
-    console.log("后端错误反馈:", getRouteId.message)
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-}
-// 通过第一级路径反向查询导航id
-const getRouteId1 = await requestDataPromise('/web/getWebsiteRoute', {
-    method: 'GET',
-    query: {
-        'pinyin': targetRoute,
-    },
-});
-if (getRouteId1.code == 200) {
-    activeId = getRouteId1.data.category_id
-} else {
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    console.log("错误位置:通过url路径查询导航池id")
-    console.log("后端错误反馈:", getRouteId1.message)
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-}
-//获得html前的数字
-// const pageUrl = segments[3]; 
-// const pageNumber = pageUrl.split('.')[0];
-// console.log("当前URL中的页码:")
-// console.log(pageNumber)//2
-// pageNum.value = parseInt(pageNumber);
-pageNum.value = parseInt(route.params.id);
-
-//1.获得路由id end ---------------------------------------->
-
-//2.页面数据 start ---------------------------------------->
-
-if (targetSegment == 'shehuizhaopin') {
-    job_resume_tabs.value = 2;
-}
-if (targetSegment == 'dagongqiuzhi') {
-    job_resume_tabs.value = 1;
-}
-// 2.1 获取岗位和简历
-const job_vacancy = ref('') // 招聘岗位
-const job_resume = ref('') // 简历
-const getJob = async () => {
-    const getJob = await requestDataPromise('/web/getWebsiteJobList', {
-        method: 'GET',
-        query: {
-            'catid': activeId,
-            'page': page.value,
-            'pageSize': pageSize.value
-        },
-    });
-    if (getJob.code == 200) {
-        console.log("获取到的岗位和简历:", getJob.data);
-        job_vacancy.value = getJob.data.JobRecruiting; // 招聘岗位
-        job_resume.value = getJob.data.JobHunting; // 简历
-        zptotal.value = getJob.data.recruit_count;
-        qztotal.value = getJob.data.hunt_count;
-    }
-}
-getJob()
-//2.2新闻列表
-const newsList = ref([]);
-let newslists = async () => {
-    const listData = await requestDataPromise('/web/getWebsiteArticleList', {
-        method: 'GET',
-        query: {
-            'page': pageNum.value,
-            'pageSize': pageSize.value,
-            'catid': articleId
-        },
-    });
-    if (listData.code == 200) {
-        newsList.value = listData.data.rows;
-        total.value = listData.data.count;
-
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取新闻列表")
-        console.log("后端错误反馈:", listData.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//获得列表
-newslists();
-
-//分页事件
-let changePage = (value) => {
-    console.log("当前页码", value);
-    navigateTo(`/${targetSegment}/${value}.html`)
-}
-
-//2.3获得页面名称
-let getPageName = async () => {
-    const pageName = await requestDataPromise('/web/getOneWebsiteCategory', {
-        method: 'GET',
-        query: {
-            'catid': articleId
-        },
-    });
-    if (pageName.code == 200) {
-        name.value = pageName.data.alias
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:设置页面标题")
-        console.log("后端错误反馈:", pageName.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//获得列表
-getPageName();
-//2.页面数据 end ---------------------------------------->
-
-
-//3.二级栏目 start ---------------------------------------->
-//3.1通过id获取父栏目
-const parent_name = ref([]);
-const parent_id = ref([]);
-const parent_pinyin = ref("");
-let getParentNav = async () => {
-    const listData = await requestDataPromise('/web/getOneWebsiteCategory', {
-        method: 'GET',
-        query: {
-            'catid': articleId
-        },
-    });
-    if (listData.code == 200) {
-        console.log(111999)
-        console.log(listData.data);
-        parent_name.value = listData.data.parent_name;
-        parent_id.value = listData.data.parent_id;
-        parent_pinyin.value = listData.data.parent_pinyin;
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取新闻列表")
-        console.log("后端错误反馈:", listData.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-    getSecondNav();
-}
-//获得父级栏目详情
-getParentNav();
-
-// 3.2获取二级栏目
-const secondNav = ref([]);
-let getSecondNav = async () => {
-    const listData = await requestDataPromise('/web/getWebsiteModelCategory', {
-        method: 'GET',
-        query: {
-            'placeid': 1,
-            'pid': parent_id.value,
-            'num': 8,
-        },
-    });
-    console.log('listData', listData);
-
-    if (listData.code == 200) {
-        secondNav.value = listData.data;
-    } else {
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-        console.log("错误位置:获取新闻列表")
-        console.log("后端错误反馈:", listData.message)
-        console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    }
-}
-//3.二级栏目 end ---------------------------------------->
-
-//4.设置seo信息 start---------------------------------------->
-//4.1 设置seo信息
-const setData = await requestDataPromise('/web/getWebsiteCategoryHead', {
-    method: 'GET',
-    query: {
-        'catid': articleId
-    },
-});
-
-if (setData.code == 200) {
-    let seoTitle = setData.data.seo_title;
-    let seoDescription = setData.data.seo_description;
-    let seoKeywords = setData.data.seo_keywords;
-    let seoSuffix = setData.data.suffix;
-    let seoName = setData.data.website_name;
-
-    useSeoMeta({
-        title: seoTitle + "_" + seoName + "_" + seoSuffix,
-        meta: [
-            { name: 'description', content: seoDescription + "_" + seoName + "_" + seoSuffix, tagPriority: 10 },
-            { name: 'keywords', content: seoKeywords + "_" + seoName + "_" + seoSuffix, tagPriority: 10 }
-        ]
-    });
-} else {
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-    console.log("错误位置:设置列表页面SEO数据")
-    console.log("后端错误反馈:", setData.message)
-    console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-}
-//4.设置seo信息 end---------------------------------------->
-
-
-//5.广告 start---------------------------------------->
-let adImg1 = ref({});
-let adImg2 = ref({});
-
-onMounted(async () => {
-
-    //从客户端获取行政职能部门 加快打开速度
-    const { $webUrl, $CwebUrl } = useNuxtApp();
-    //广告1
-    let url = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_list_0001`
-    const responseAd1 = await fetch(url, {
-        headers: {
-            'Content-Type': 'application/json',
-            'Userurl': $CwebUrl,
-            'Origin': $CwebUrl
-        }
-    });
-    const resultAd1 = await responseAd1.json();
-    adImg1.value = resultAd1.data[0];
-
-    //广告2
-    let url2 = `${$webUrl}/web/getWebsiteAdvertisement?ad_tag=nmgw_list_0002`
-    const responseAd2 = await fetch(url2, {
-        headers: {
-            'Content-Type': 'application/json',
-            'Userurl': $CwebUrl,
-            'Origin': $CwebUrl
-        }
-    });
-    const resultAd2 = await responseAd2.json();
-    adImg2.value = resultAd2.data[0];
-
-})
-//5.广告 end---------------------------------------->
-</script>
-
-<style lang="less" scoped>
-@import url('@/assets/css/zgzplist.less');
-</style>

+ 40 - 46
pages/zhaogongzhaopinnongmingong/[id].vue

@@ -188,7 +188,7 @@
                 </div>
             </section>
         </main> -->
-        
+
         <!-- 岗位 -->
         <div class="gangwei" v-if="type == 1">
             <main class="color_main">
@@ -351,29 +351,35 @@
 
 </template>
 <script setup>
-import { ref } from 'vue'
-import { ElBreadcrumb, ElBreadcrumbItem } from 'element-plus'
+import { ref, reactive } from 'vue'
+import { ElBreadcrumb, ElBreadcrumbItem, ElMessage } from 'element-plus'
 import { ArrowRight } from '@element-plus/icons-vue'
 const route = useRoute();
 const type = ref(1);
 
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
+
 //获取用户信息
 let type_id = ref('')
 let website_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
-    website_id.value = gettypeid.data.website_id
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
 
 
 //1.1 获得跳转过来的id
 const articleId = parseInt(route.params.id);  //获得该页面的id
-let articleIdArr = Array.of(articleId);
+// const existingArr = [];
+const articleIdArr = reactive([articleId]);
+// let articleIdArr = Array.of(articleId);
 // console.log('111222111', articleId);
 
 //1.2 获得父级栏目的名称、id
@@ -386,16 +392,6 @@ const targetRoute = segments[2];
 console.log("targetSegment1", targetSegment);
 console.log("targetSegment2", targetRoute);
 
-// if (targetRoute == 'shehuizhaopin') {
-//     type.value = 1;
-// } else if (targetRoute == 'dagongqiuzhi') {
-//     type.value = 2;
-// } else {
-//     console.log("SSR waring ---------- SSR waring ---------- SSR waring ---------->")
-// }
-
-// const numberPart = targetSegment.match(/\d+$/)?.[0]; 
-// const routeId = numberPart;
 
 let routeId;
 //通过导航路径反向查询导航id
@@ -539,31 +535,29 @@ const getData = async () => {
 getData()
 
 // 3 申请该职位
-const applyJob = async () => {
-    console.log("点击了申请该职位",website_id.value);
-    console.log("点击了申请该职位",articleIdArr);
-    
-    
-    const applyJob = await requestDataPromise('/web/getWebsiteJobApply', {
-        method: 'POST',
-        query: {
-            'website_id': website_id.value,
-            'recruit_id': articleIdArr,
-        },
+const applyJob = () => {
+    // console.log("点击了申请该职位", typeof website_id.value);
+    // console.log("点击了申请该职位", articleIdArr);
+
+    axios.post('/web/getWebsiteJobApply', {
+        website_id: website_id.value,
+        recruit_id: articleIdArr,
+    }).then(response => {
+        // console.log("申请该职位11111111", response);
+        if (response.code == 200) {
+            ElMessage({
+                message: '申请成功',
+                type: 'success',
+            });
+        } else {
+            ElMessage({
+                message: response.message,
+                type: 'error',
+            });
+        }
+    }).catch(error => {
+        console.error('Error:', error);
     });
-    console.log("申请该职位", applyJob);
-    
-    if (applyJob.code == 200) {
-        ElMessage({
-            message: '申请成功',
-            type: 'success',
-        });
-    }else{
-        ElMessage({
-            message: applyJob.message,
-            type:'error',
-        });
-    }
 }
 
 //4.设置seo信息 start---------------------------------------->

+ 16 - 10
pages/zhaogongzhaopinnongmingong/index.html.vue

@@ -2,7 +2,7 @@
     <div>
         <HomePageHead></HomePageHead>
         <HomePageNavigation></HomePageNavigation>
-        <HomeSecondaryHeading :titleData="pageDataList" :pinyinid="routeId"></HomeSecondaryHeading>
+        <HomeSecondaryHeadingZgzp :titleData="pageDataList" :pinyinid="routeId"></HomeSecondaryHeadingZgzp>
 
         <main class="index_main">
             <!-- 三农资讯网-招工招聘 snzx_recruit-->
@@ -13,8 +13,8 @@
                         <a class="cruit_head_a cruit_head_only" href="" title="">职位搜索</a>
                     </div>
                     <div class="cruit_head_right clearfix">
-                        <!-- <span class="cruit_head_right_a" @click="createResume" v-if="type_id == 1">创建个人简历</span> -->
-                        <span class="cruit_head_right_a" @click="createJob" v-if="type_id == 3">发布招聘信息</span>
+                        <span class="cruit_head_right_a" @click="createResume" v-if="type_id == 1">创建个人简历</span>
+                        <!-- <span class="cruit_head_right_a" @click="createJob" v-if="type_id == 3">发布招聘信息</span> -->
                     </div>
                 </div>
                 <!-- <div class="cruit_ul_1 clearfix">
@@ -187,16 +187,22 @@ import { ref, onMounted } from 'vue';
 import { ElMessage, ElSelect, ElOption, ElInput, ElButton, ElPagination } from 'element-plus';
 const { $webUrl, $CwebUrl, $BwebUrl } = useNuxtApp()
 
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
+
 //获取用户信息
 let type_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-// console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
+let website_id = ref('')
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
 //0.加载页面依赖 end ---------------------------------------->
 
 //1.获得路由id start ---------------------------------------->

+ 41 - 44
pages/zhaogongzhaopinnongmingong/search.vue

@@ -10,8 +10,9 @@
         <HomeAdvertising :imgurl="adImg1" v-if="adImg1"></HomeAdvertising>
 
         <!-- 二级标题-->
-        <HomeListSecondaryHeading v-if="parent_name != ''" :name="parent_name" :nav="secondNav" :pinyin="parent_pinyin">
-        </HomeListSecondaryHeading>
+        <HomeListSecondaryHeadingZgzp v-if="parent_name != ''" :name="parent_name" :nav="secondNav"
+            :pinyin="parent_pinyin">
+        </HomeListSecondaryHeadingZgzp>
 
         <main class="index_main">
             <!-- 三农资讯网-招工招聘-社会招聘 snzx_society -->
@@ -22,10 +23,10 @@
                         <span class="cruit_head_a cruit_head_only">职位搜索</span>
                     </div>
                     <div class="cruit_head_right clearfix">
-                        <!-- <span class="cruit_head_right_a" @click="createResume"
-                            v-if="job_search == 1 && type_id == 1">创建个人简历</span> -->
-                        <span class="cruit_head_right_a" @click="createJob"
-                            v-if="job_search == 1 && type_id == 3">发布招聘信息</span>
+                        <span class="cruit_head_right_a" @click="createResume"
+                            v-if="job_search == 1 && type_id == 1">创建个人简历</span>
+                        <!-- <span class="cruit_head_right_a" @click="createJob"
+                            v-if="job_search == 1 && type_id == 3">发布招聘信息</span> -->
                     </div>
                 </div>
                 <form class="cruit_form clearfix" action=" " method=" ">
@@ -321,9 +322,12 @@
 import { ElSelect, ElOption, ElInput, ElButton, ElPagination, ElCheckbox, ElRadio, ElMessage } from 'element-plus';
 import { ref, onMounted } from 'vue';
 import { useRoute } from 'vue-router'
-//当前列表名称
+
+const nuxtApp = useNuxtApp();
+const axios = nuxtApp.$axios;
 
 
+//当前列表名称
 const name = ref('')
 const selectedJobs = ref([])
 const selectedResume = ref([])
@@ -334,28 +338,20 @@ const cruit_ul_1_a_only_num = ref(0)
 const job_search = ref(1)   // 选项卡
 const { $webUrl, $CwebUrl, $BwebUrl } = useNuxtApp()
 
-//格式化跳转路径
-const getLinkPathDetail = (item) => {
-    if (item.islink == 1) {
-        return `${item.linkurl}`;
-    } else {
-        //return `/${item.aLIas_pinyin}/${item.id}`;
-        //return `/newsDetail/${item.id}`
-        return `/${item.pinyin}/${item.id}.html`;
-    }
-}
+
 //获取用户信息
 let type_id = ref('')
 let website_id = ref('')
-const gettypeid = await requestDataPromise('/user/getUserInfo', {
-    method: 'GET',
-    query: {},
-});
-console.log("gettypeid", gettypeid);
-if (gettypeid.code == 200) {
-    type_id.value = gettypeid.data.type_id
-    website_id.value = gettypeid.data.website_id
+let getUserInfo = () => {
+    axios.get("/user/getUserInfo").then(response => {
+        console.log("gettypeid", response.data);
+        type_id.value = response.data.type_id
+        website_id.value = response.data.website_id
+    })
 }
+onMounted(() => {
+    getUserInfo()
+})
 //1.页面必备依赖 end ---------------------------------------->
 
 //1.获得路由id start ---------------------------------------->
@@ -640,33 +636,34 @@ let changePage = (value) => {
 }
 
 //申请职位
-let getjob = async () => {
+let getjob = () => {
     if (selectedJobs.value.length == 0) {
         ElMessage({
             message: '请选择要申请的职位',
             type: 'warning',
         });
     } else {
-        // getWebsiteJobApply
-        const getJobList = await requestDataPromise('/web/getWebsiteJobApply', {
-            method: 'POST',
-            body: {
-                'website_id': website_id.value,
-                'recruit_id': selectedJobs.value,
+        console.log("获取到的11111_sel:", selectedJobs.value);
+        console.log("获取到的1111_website_id:", website_id.value);
+        axios.post('/web/getWebsiteJobApply', {
+            'website_id': website_id.value,
+            'recruit_id': selectedJobs.value,
+        }).then(response => {
+            console.log("获取到的申请结果:", response.data);
+            if (response.code == 200) {
+                ElMessage({
+                    message: '投递成功',
+                    type: 'success',
+                });
+            } else {
+                ElMessage({
+                    message: response.message,
+                    type: 'error',
+                });
             }
+            allJob.value = false;
+            selectedJobs.value = [];
         })
-        if (getJobList.code == 200) {
-            ElMessage({
-                message: '投递成功',
-                type: 'success',
-            });
-        } else {
-            ElMessage({
-                message: getJobList.message,
-                type: 'error',
-            });
-        }
-
     }
 
 }

+ 2 - 2
plugins/category.ts

@@ -64,7 +64,7 @@ const navPre: number[] = [
 
 export default defineNuxtPlugin((nuxtApp) => {
     //master 环境
-    // nuxtApp.provide('pageNav', navMaster)
+    nuxtApp.provide('pageNav', navMaster)
     //pre 环境
-    nuxtApp.provide('pageNav', navPre)
+    // nuxtApp.provide('pageNav', navPre)
 })

+ 10 - 10
plugins/globals.ts

@@ -1,17 +1,17 @@
 export default defineNuxtPlugin((nuxtApp) => {
   //Pre环境
-  nuxtApp.provide('webUrl', 'http://apipre1.bjzxtw.org.cn:29501')
-  nuxtApp.provide('CwebUrl', 'http://pre.zgnmg.org.cn')
-  nuxtApp.provide('BwebUrl', 'http://adminpre.bjzxtw.org.cn')
-  nuxtApp.provide('LoginWebUrl', 'http://adminpre.bjzxtw.org.cn/adminapi')
-  nuxtApp.provide('userUrl', 'http://localhost:3000')
+  // nuxtApp.provide('webUrl', 'http://apipre1.bjzxtw.org.cn:29501')
+  // nuxtApp.provide('CwebUrl', 'http://pre.zgnmg.org.cn')
+  // nuxtApp.provide('BwebUrl', 'http://adminpre.bjzxtw.org.cn')
+  // nuxtApp.provide('LoginWebUrl', 'http://adminpre.bjzxtw.org.cn/adminapi')
+  // nuxtApp.provide('userUrl', 'http://localhost:3000')
 
   //正式环境
-  // nuxtApp.provide('webUrl', 'https://flzxw.bjzxtw.org.cn')
-  // nuxtApp.provide('CwebUrl', 'http://nw.zgnmg.org.cn')
-  // nuxtApp.provide('BwebUrl', 'https://admin.bjzxtw.org.cn')
-  // nuxtApp.provide('LoginWebUrl', 'http://admin.bjzxtw.org.cn/adminapi')
-  // nuxtApp.provide('userUrl', 'http://localhost:3004')
+  nuxtApp.provide('webUrl', 'https://flzxw.bjzxtw.org.cn')
+  nuxtApp.provide('CwebUrl', 'http://nw.zgnmg.org.cn')
+  nuxtApp.provide('BwebUrl', 'https://admin.bjzxtw.org.cn')
+  nuxtApp.provide('LoginWebUrl', 'http://admin.bjzxtw.org.cn/adminapi')
+  nuxtApp.provide('userUrl', 'http://localhost:3004')
   
   //乡村网
   // nuxtApp.provide('webUrl', 'http://apipre1.bjzxtw.org.cn:29501')

+ 5 - 5
plugins/request.ts

@@ -6,11 +6,11 @@ export default defineNuxtPlugin(() => {
 
     let Url = {
         //正式环境
-        // webUrl: 'https://flzxw.bjzxtw.org.cn', //接口地址
-        // CwebUrl: 'nw.zgnmg.org.cn' //页面地址
+        webUrl: 'https://flzxw.bjzxtw.org.cn', //接口地址
+        CwebUrl: 'nw.zgnmg.org.cn' //页面地址
         //pre环境
-        webUrl: 'http://apipre1.bjzxtw.org.cn:29501', //pre接口地址
-        CwebUrl: 'pre.zgnmg.org.cn' //页面地址
+        // webUrl: 'http://apipre1.bjzxtw.org.cn:29501', //pre接口地址
+        // CwebUrl: 'pre.zgnmg.org.cn' //页面地址
     }
 
     const service = axios.create({
@@ -22,7 +22,7 @@ export default defineNuxtPlugin(() => {
         // console.log("请求拦截器",config);
         // 从cookie中获取数据
         const token = getToken()
-        //const token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJwaHBlcjY2Ni9qd3QiLCJ1aWQiOjc2LCJ1c2VyX25hbWUiOiIxNzM0MDUzMTQ1NCIsIm1vYmlsZSI6IjE3MzExMTExMTExIiwiZW1haWwiOiIiLCJsZXZlbF9pZCI6MCwidHlwZV9pZCI6MTAwMDAsImp3dF9zY2VuZSI6ImRlZmF1bHQiLCJqdGkiOiJkZWZhdWx0XzY3ZDBmYmQ2OWUwZDk2LjY3MTU1NDM5IiwiaWF0IjoxNzQxNzQ5MjA2LCJuYmYiOjE3NDE3NDkyMDYsImV4cCI6MTc0MTgzNTYwNn0.1pfYged1EOSVaQNdAlaKA_kvBJLgOkWKkk38yog_xoU"
+        // const token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJwaHBlcjY2Ni9qd3QiLCJ1aWQiOjEzMywidXNlcl9uYW1lIjoiMTczNDA1Mzk5OTkiLCJtb2JpbGUiOiIxNzM0MDUzOTk5OSIsImVtYWlsIjoiIiwibGV2ZWxfaWQiOjAsInR5cGVfaWQiOjEsImp3dF9zY2VuZSI6ImRlZmF1bHQiLCJqdGkiOiJkZWZhdWx0XzY4NDAwODU3MGYyNmMxLjU5ODAxNjk4IiwiaWF0IjoxNzQ5MDI2OTAzLCJuYmYiOjE3NDkwMjY5MDMsImV4cCI6MTc0OTExMzMwM30.R3Fl8fDVaJwNJ9St94fUEaksZ0ISKgab_9Xw4cLQrs4"
         if (token) {
             config.headers.token = token;
         }