|
@@ -0,0 +1,254 @@
|
|
|
+<template>
|
|
|
+ <div class="default-width">
|
|
|
+ <div style="background-color: #fff; position: sticky;" class="pb-4">
|
|
|
+ <buttons :current="3"></buttons>
|
|
|
+ <v-breadcrumbs v-if="breadcrumbs?.length" :items="breadcrumbs">
|
|
|
+ <template v-slot:item="{ item, index }">
|
|
|
+ <span class="breadcrumbsText" :class="{ active: !item.disabled && index !== breadcrumbs.length-1 }" @click="breadcrumbsClickDeal({ e: item, breadcrumbs, index })">{{ item.text }}</span>
|
|
|
+ </template>
|
|
|
+ </v-breadcrumbs>
|
|
|
+ <headSearch v-model="content" placeholder="搜索公司关键字" @handleSearch="handleSearch"></headSearch>
|
|
|
+ </div>
|
|
|
+ <Empty v-if="!items.length" :message="loadingType === 1 ? loadingText[loadingType] : '该招聘会暂无企业参与,前往其他招聘会看看吧~'" class="mt-3 py-15"></Empty>
|
|
|
+ <template v-else>
|
|
|
+ <div class="d-flex">
|
|
|
+ <div class="mt-3">
|
|
|
+ <EntCard :list="items" @selectChange="selectChange" />
|
|
|
+ <div class="loading defaultLink-i" @click="handleLoadMore">查看更多</div>
|
|
|
+ <div v-if="showLoadingMore" :class="['loading', {'defaultLink-i': !loadingType}]" @click="handleChangePage">{{ loadingText[loadingType] }}</div>
|
|
|
+ </div>
|
|
|
+ <div class="position-details ml-3" style="flex: 1; overflow: hidden;">
|
|
|
+ <div class="position-content pa-3">
|
|
|
+ <JobCard :enterpriseId="enterpriseId" :enterpriseName="enterpriseName" />
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+
|
|
|
+</template>
|
|
|
+
|
|
|
+<script setup>
|
|
|
+defineOptions({ name: 'personalPositionRecommend'})
|
|
|
+import buttons from '@/views/recruit/personal/components/buttons.vue'
|
|
|
+import { ref, reactive } from 'vue'
|
|
|
+import { getJobFairEnterprisePage } from '@/api/recruit/personal/jobFair'
|
|
|
+
|
|
|
+import EntCard from './components/entCard.vue'
|
|
|
+import JobCard from './components/jobCard.vue'
|
|
|
+import { useRoute } from 'vue-router'; const route = useRoute()
|
|
|
+import { breadcrumbsClickDeal, getJobFairBreadcrumbs } from '@/utils/index'
|
|
|
+import { formatName } from '@/utils/getText'
|
|
|
+
|
|
|
+const showLoadingMore = ref(false)
|
|
|
+const breadcrumbs = ref(getJobFairBreadcrumbs(route?.query) || [])
|
|
|
+
|
|
|
+// 切换企业选中
|
|
|
+const enterpriseId = ref('')
|
|
|
+const enterpriseName = ref('')
|
|
|
+const selectChange = (val) => {
|
|
|
+ enterpriseId.value = val.enterprise.id
|
|
|
+ enterpriseName.value = formatName(val.enterprise.anotherName || val.enterprise.name)
|
|
|
+}
|
|
|
+
|
|
|
+const total = ref(0)
|
|
|
+const content = ref('')
|
|
|
+const query = reactive({
|
|
|
+ pageNo: 1,
|
|
|
+ pageSize: 10,
|
|
|
+ jobFairId: route.params.id
|
|
|
+})
|
|
|
+
|
|
|
+const items = ref([
|
|
|
+ // {
|
|
|
+ // "jobFairId": 1,
|
|
|
+ // "enterprise": {
|
|
|
+ // "id": "158258417071427584",
|
|
|
+ // "name": "苏州希尔顿酒店",
|
|
|
+ // "anotherName": "苏州希尔顿酒店",
|
|
|
+ // "website": "http://ilovechao.com/",
|
|
|
+ // "introduce": "CHAO\r\nCreate the Good Life Together\r\n品质生活发生地\r\n\r\n\r\nThrough all that we do, we want to attract and connect like-minded people to join our community, to discover, share and create a meaningful life and create the good life together.\r\n\r\nWe’ve created a series of venues and services to support every context of living the Good Life: work and leisure, recreation and socializing, travel and living, art and cultural discovery.\r\n\r\nCHAO,一个关于品质生活各种可能性的发生地。拥有酒店、会员及会员俱乐部、艺术中心,并通过独立媒体平台创造和分享优质的生活体验,同时推出品位卓越的生活方式产品。我们希望聚集趣味相投的高知人群,与CHAO共创品质生活。\r\n\r\n \r\n\r\nCHAO SANLITUN\r\n三里屯新地标\r\n\r\nLaunched at the end of 2016, our flagship property in the Sanlitun district of Beijing features a 180-room hotel, a 15,000m2 Clubhouse space with 2 F&B outlets as well as a 3000m2 Art Center featuring the city's most exciting exhibitions and events.\r\n\r\nCHAO was created to be a nesting place for our community of members and guests, providing them the opportunity to come together and share ideas, to build things together, to help each other developm",
|
|
|
+ // "contact": " 王东媛",
|
|
|
+ // "phone": "18618488218",
|
|
|
+ // "logoUrl": "https://www.mendunerhr.com/images/1572837192000_158258417071427584_mini.jpg",
|
|
|
+ // "industryId": null,
|
|
|
+ // "industryName": null,
|
|
|
+ // "financingStatus": null,
|
|
|
+ // "scale": null,
|
|
|
+ // "scaleName": null,
|
|
|
+ // "welfareList": null,
|
|
|
+ // "tagList": null,
|
|
|
+ // "vipFlag": null
|
|
|
+ // },
|
|
|
+ // "lastJobTop5": [
|
|
|
+ // {"name": "管理实习生-人力资源方向 Management Intern - HR"},
|
|
|
+ // {"name": "财务文员 Finance Clerk"},
|
|
|
+ // {"name": "财务实习生 Finance Intern"},
|
|
|
+ // {"name": "品牌部实习生 Brand & Communication Intern"},
|
|
|
+ // {"name": "市场销售实习生 Sales & Marketing Intern"}
|
|
|
+ // ],
|
|
|
+ // "jobCount": 2
|
|
|
+ // },
|
|
|
+ // {
|
|
|
+ // "jobFairId": 1,
|
|
|
+ // "enterprise": {
|
|
|
+ // "id": "158258417071427584",
|
|
|
+ // "name": "天津生态城世茂希尔顿酒店",
|
|
|
+ // "anotherName": "天津生态城世茂希尔顿酒店",
|
|
|
+ // "website": "http://ilovechao.com/",
|
|
|
+ // "introduce": "CHAO\r\nCreate the Good Life Together\r\n品质生活发生地\r\n\r\n\r\nThrough all that we do, we want to attract and connect like-minded people to join our community, to discover, share and create a meaningful life and create the good life together.\r\n\r\nWe’ve created a series of venues and services to support every context of living the Good Life: work and leisure, recreation and socializing, travel and living, art and cultural discovery.\r\n\r\nCHAO,一个关于品质生活各种可能性的发生地。拥有酒店、会员及会员俱乐部、艺术中心,并通过独立媒体平台创造和分享优质的生活体验,同时推出品位卓越的生活方式产品。我们希望聚集趣味相投的高知人群,与CHAO共创品质生活。\r\n\r\n \r\n\r\nCHAO SANLITUN\r\n三里屯新地标\r\n\r\nLaunched at the end of 2016, our flagship property in the Sanlitun district of Beijing features a 180-room hotel, a 15,000m2 Clubhouse space with 2 F&B outlets as well as a 3000m2 Art Center featuring the city's most exciting exhibitions and events.\r\n\r\nCHAO was created to be a nesting place for our community of members and guests, providing them the opportunity to come together and share ideas, to build things together, to help each other developm",
|
|
|
+ // "contact": " 王东媛",
|
|
|
+ // "phone": "18618488218",
|
|
|
+ // "logoUrl": "https://www.mendunerhr.com/images/1572837192000_158258417071427584_mini.jpg",
|
|
|
+ // "industryId": null,
|
|
|
+ // "industryName": null,
|
|
|
+ // "financingStatus": null,
|
|
|
+ // "scale": null,
|
|
|
+ // "scaleName": null,
|
|
|
+ // "welfareList": null,
|
|
|
+ // "tagList": null,
|
|
|
+ // "vipFlag": null
|
|
|
+ // },
|
|
|
+ // "lastJobTop5": [
|
|
|
+ // {"name": "行政总厨"},
|
|
|
+ // {"name": "销售经理"},
|
|
|
+ // {"name": "实习厨师"}
|
|
|
+ // ],
|
|
|
+ // "jobCount": 3
|
|
|
+ // },
|
|
|
+ // {
|
|
|
+ // "jobFairId": 1,
|
|
|
+ // "enterprise": {
|
|
|
+ // "id": "158258417071427584",
|
|
|
+ // "name": "济南鲁能希尔顿酒店及公寓",
|
|
|
+ // "anotherName": "济南鲁能希尔顿酒店及公寓",
|
|
|
+ // "website": "http://ilovechao.com/",
|
|
|
+ // "introduce": "CHAO\r\nCreate the Good Life Together\r\n品质生活发生地\r\n\r\n\r\nThrough all that we do, we want to attract and connect like-minded people to join our community, to discover, share and create a meaningful life and create the good life together.\r\n\r\nWe’ve created a series of venues and services to support every context of living the Good Life: work and leisure, recreation and socializing, travel and living, art and cultural discovery.\r\n\r\nCHAO,一个关于品质生活各种可能性的发生地。拥有酒店、会员及会员俱乐部、艺术中心,并通过独立媒体平台创造和分享优质的生活体验,同时推出品位卓越的生活方式产品。我们希望聚集趣味相投的高知人群,与CHAO共创品质生活。\r\n\r\n \r\n\r\nCHAO SANLITUN\r\n三里屯新地标\r\n\r\nLaunched at the end of 2016, our flagship property in the Sanlitun district of Beijing features a 180-room hotel, a 15,000m2 Clubhouse space with 2 F&B outlets as well as a 3000m2 Art Center featuring the city's most exciting exhibitions and events.\r\n\r\nCHAO was created to be a nesting place for our community of members and guests, providing them the opportunity to come together and share ideas, to build things together, to help each other developm",
|
|
|
+ // "contact": " 王东媛",
|
|
|
+ // "phone": "18618488218",
|
|
|
+ // "logoUrl": "https://www.mendunerhr.com/images/1572837192000_158258417071427584_mini.jpg",
|
|
|
+ // "industryId": null,
|
|
|
+ // "industryName": null,
|
|
|
+ // "financingStatus": null,
|
|
|
+ // "scale": null,
|
|
|
+ // "scaleName": null,
|
|
|
+ // "welfareList": null,
|
|
|
+ // "tagList": null,
|
|
|
+ // "vipFlag": null
|
|
|
+ // },
|
|
|
+ // "lastJobTop5": [
|
|
|
+ // {"name": "行政总厨"},
|
|
|
+ // {"name": "销售经理"},
|
|
|
+ // {"name": "实习厨师"}
|
|
|
+ // ],
|
|
|
+ // "jobCount": 6
|
|
|
+ // },
|
|
|
+ // {
|
|
|
+ // "jobFairId": 1,
|
|
|
+ // "enterprise": {
|
|
|
+ // "id": "158258417071427584",
|
|
|
+ // "name": "苏州华贸姑苏里服务公寓",
|
|
|
+ // "anotherName": "苏州华贸姑苏里服务公寓",
|
|
|
+ // "website": "http://ilovechao.com/",
|
|
|
+ // "introduce": "CHAO\r\nCreate the Good Life Together\r\n品质生活发生地\r\n\r\n\r\nThrough all that we do, we want to attract and connect like-minded people to join our community, to discover, share and create a meaningful life and create the good life together.\r\n\r\nWe’ve created a series of venues and services to support every context of living the Good Life: work and leisure, recreation and socializing, travel and living, art and cultural discovery.\r\n\r\nCHAO,一个关于品质生活各种可能性的发生地。拥有酒店、会员及会员俱乐部、艺术中心,并通过独立媒体平台创造和分享优质的生活体验,同时推出品位卓越的生活方式产品。我们希望聚集趣味相投的高知人群,与CHAO共创品质生活。\r\n\r\n \r\n\r\nCHAO SANLITUN\r\n三里屯新地标\r\n\r\nLaunched at the end of 2016, our flagship property in the Sanlitun district of Beijing features a 180-room hotel, a 15,000m2 Clubhouse space with 2 F&B outlets as well as a 3000m2 Art Center featuring the city's most exciting exhibitions and events.\r\n\r\nCHAO was created to be a nesting place for our community of members and guests, providing them the opportunity to come together and share ideas, to build things together, to help each other developm",
|
|
|
+ // "contact": " 王东媛",
|
|
|
+ // "phone": "18618488218",
|
|
|
+ // "logoUrl": "https://www.mendunerhr.com/images/1572837192000_158258417071427584_mini.jpg",
|
|
|
+ // "industryId": null,
|
|
|
+ // "industryName": null,
|
|
|
+ // "financingStatus": null,
|
|
|
+ // "scale": null,
|
|
|
+ // "scaleName": null,
|
|
|
+ // "welfareList": null,
|
|
|
+ // "tagList": null,
|
|
|
+ // "vipFlag": null
|
|
|
+ // },
|
|
|
+ // "lastJobTop5": [
|
|
|
+ // {"name": "行政总厨"},
|
|
|
+ // {"name": "销售经理"},
|
|
|
+ // {"name": "实习厨师"}
|
|
|
+ // ],
|
|
|
+ // "jobCount": 1
|
|
|
+ // }
|
|
|
+])
|
|
|
+const loadingText = ['加载更多', '加载中...', '没有更多数据了']
|
|
|
+const loadingType = ref(0)
|
|
|
+
|
|
|
+// 参与招聘会的企业
|
|
|
+const getList = async () => {
|
|
|
+ loadingType.value = 1
|
|
|
+ try {
|
|
|
+ const { list, total } = await getJobFairEnterprisePage(query)
|
|
|
+ console.log(list, '企业列表')
|
|
|
+ if (list.length) {
|
|
|
+ items.value = items.value.concat(list)
|
|
|
+ loadingType.value = list.length === query.pageSize ? 0 : 2
|
|
|
+ enterpriseId.value = items.value[0].enterprise.id
|
|
|
+ enterpriseName.value = formatName(items.value[0].enterprise.anotherName || items.value[0].enterprise.name)
|
|
|
+ getPositionList()
|
|
|
+ } else {
|
|
|
+ loadingType.value = 2
|
|
|
+ }
|
|
|
+ } catch {}
|
|
|
+}
|
|
|
+getList()
|
|
|
+
|
|
|
+const handleSearch = (val) => {}
|
|
|
+
|
|
|
+const handleChangePage = () => {
|
|
|
+ if (loadingType.value) return // 没有更多数据了
|
|
|
+ // 加载更多
|
|
|
+ query.pageNo++
|
|
|
+ getList()
|
|
|
+}
|
|
|
+
|
|
|
+const handleLoadMore = () => {
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped lang="scss">
|
|
|
+.position-details {
|
|
|
+ position: sticky;
|
|
|
+ top: 62px;
|
|
|
+ border-radius: 12px;
|
|
|
+ background-color: #fff;
|
|
|
+ margin-top: 12px;
|
|
|
+ height: calc(100vh - 127px);
|
|
|
+ widows: 100%;
|
|
|
+ overflow: hidden;
|
|
|
+ .position-content {
|
|
|
+ height: 100%;
|
|
|
+ width: 100%;
|
|
|
+ padding-right: 4px;
|
|
|
+ overflow-y: auto;
|
|
|
+ }
|
|
|
+}
|
|
|
+.loading {
|
|
|
+ margin-top: 8px;
|
|
|
+ text-align: center;
|
|
|
+ font-size: 13px;
|
|
|
+ color: gray;
|
|
|
+}
|
|
|
+.breadcrumbsText {
|
|
|
+ color: var(--color-999);
|
|
|
+ font-size: 15px;
|
|
|
+ &.active {
|
|
|
+ color: var(--v-primary-base);
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+}
|
|
|
+::-webkit-scrollbar {
|
|
|
+ width: 4px;
|
|
|
+ height: 10px;
|
|
|
+}
|
|
|
+::-webkit-scrollbar-thumb, .temporaryAdd ::-webkit-scrollbar-thumb, .details_edit ::-webkit-scrollbar-thumb {
|
|
|
+ // 滚动条-颜色
|
|
|
+ background: #c3c3c379;
|
|
|
+}
|
|
|
+::-webkit-scrollbar-track, .temporaryAdd ::-webkit-scrollbar-track, .details_edit ::-webkit-scrollbar-track {
|
|
|
+ // 滚动条-底色
|
|
|
+ background: #e5e5e58f;
|
|
|
+}
|
|
|
+</style>
|