|
@@ -1,50 +1,49 @@
|
|
|
<!-- 人才库 - 人才详情 -->
|
|
|
<template>
|
|
|
<div class="d-flex justify-center mb-10">
|
|
|
- <div style="width: 940px;overflow-y: auto;background: #fff;" class="px-8 py-3 my-n3 mr-3">
|
|
|
+ <div v-if="Object.keys(cvData).length" style="width: 940px;overflow-y: auto;background: #fff;" class="px-8 py-3 my-n3 mr-3">
|
|
|
<!-- 基本信息 -->
|
|
|
- <baseInfo class="mt-5"></baseInfo>
|
|
|
+ <baseInfo class="mt-5" :data="cvData.person"></baseInfo>
|
|
|
<!-- 个人优势 -->
|
|
|
<div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.personalAdvantages') }}</span>
|
|
|
- <div style="flex: 1; white-space: pre-line; font-size: 15px;" v-if="advantage" v-html="advantage"></div>
|
|
|
+ <div style="flex: 1; white-space: pre-line; font-size: 15px;" v-if="cvData?.person?.advantage" v-html="cvData.person.advantage"></div>
|
|
|
</div>
|
|
|
<!-- 职业技能 -->
|
|
|
<div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.vocationalSkills') }}</span>
|
|
|
- <vocationalSkills style="flex: 1;"></vocationalSkills>
|
|
|
+ <vocationalSkills style="flex: 1;" :data="cvData.skillList"></vocationalSkills>
|
|
|
</div>
|
|
|
<!-- 求职意向 -->
|
|
|
<div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.jobIntention') }}</span>
|
|
|
- <jobIntention style="flex: 1;" :list="[]"></jobIntention>
|
|
|
+ <jobIntention style="flex: 1;" :data="cvData.interestedList"></jobIntention>
|
|
|
</div>
|
|
|
<!-- 工作经历 -->
|
|
|
<div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.workExperience') }}</span>
|
|
|
- <workExperience style="flex: 1;"></workExperience>
|
|
|
+ <workExperience style="flex: 1;" :data="cvData.workList"></workExperience>
|
|
|
</div>
|
|
|
<!-- 项目经历 -->
|
|
|
<div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.projectExperience') }}</span>
|
|
|
- <projectExperience style="flex: 1;"></projectExperience>
|
|
|
+ <projectExperience style="flex: 1;" :data="cvData.projectList"></projectExperience>
|
|
|
</div>
|
|
|
<!-- 培训经历 -->
|
|
|
<div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.trainingExperience') }}</span>
|
|
|
- <trainingExperience style="flex: 1;"></trainingExperience>
|
|
|
+ <trainingExperience style="flex: 1;" :data="cvData.trainList"></trainingExperience>
|
|
|
</div>
|
|
|
<!-- 教育经历 -->
|
|
|
<div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.educationExp') }}</span>
|
|
|
- <educationExp style="flex: 1;"></educationExp>
|
|
|
+ <educationExp style="flex: 1;" :data="cvData.eduList"></educationExp>
|
|
|
</div>
|
|
|
<!-- 附件简历 -->
|
|
|
- <div class="d-flex mt-8">
|
|
|
+ <!-- <div class="d-flex mt-8">
|
|
|
<span class="mr-6">{{ $t('resume.attachmentResume') }}</span>
|
|
|
<attachmentResume style="flex: 1;"></attachmentResume>
|
|
|
- </div>
|
|
|
- <!-- -->
|
|
|
+ </div> -->
|
|
|
</div>
|
|
|
<div class="operate pa-3">
|
|
|
<v-list>
|
|
@@ -63,6 +62,7 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
+defineOptions({name: 'enterprise-talentPool-details'})
|
|
|
import baseInfo from './details/baseInfo.vue'
|
|
|
import vocationalSkills from './details/vocationalSkills.vue'
|
|
|
import jobIntention from './details/jobIntention.vue'
|
|
@@ -70,10 +70,12 @@ import workExperience from './details/workExperience.vue'
|
|
|
import projectExperience from './details/projectExperience.vue'
|
|
|
import trainingExperience from './details/trainingExperience.vue'
|
|
|
import educationExp from './details/educationExp.vue'
|
|
|
-import attachmentResume from './details/attachmentResume.vue'
|
|
|
-defineOptions({name: 'enterprise-talentPool-details'})
|
|
|
+// import attachmentResume from './details/attachmentResume.vue'
|
|
|
+import { getPersonCvDetail } from '@/api/enterprise'
|
|
|
+import { ref } from 'vue'
|
|
|
+import { useRouter } from 'vue-router'
|
|
|
|
|
|
-const advantage = "1、熟悉 Java 技术平台,并稳定形成生产力,CCF 中国计算机学会会员,获得微软 MCP、MCSA 认证。 \n2、熟悉通用缓存/DB /搜索引擎/消息队列等中间件。对业内高可用高并发及分布式技术解决方案有充分理解。\n3、同时具备常用大数据解决方案实践经验,包括实时计算(Storm/Flink )及离线计算(Hive/ETL/Spark)。 \n4、对搜索推荐/订单交易等业务方向具备多年实践经验。\n5、上班。"
|
|
|
+const router = useRouter()
|
|
|
const operateItems = [
|
|
|
{ text: '邀请面试', icon: 'mdi-account-check' },
|
|
|
{ text: '不合适', icon: 'mdi-close-circle-outline' },
|
|
@@ -81,6 +83,16 @@ const operateItems = [
|
|
|
{ text: '加入人才库', icon: 'mdi-tab-plus' },
|
|
|
{ text: '操作记录', icon: 'mdi-clock-edit-outline' },
|
|
|
]
|
|
|
+
|
|
|
+// 获取人才详情
|
|
|
+const cvData = ref({})
|
|
|
+const getCvDetail = async () => {
|
|
|
+ const { id } = router.currentRoute.value.params
|
|
|
+ const data = await getPersonCvDetail(id)
|
|
|
+ cvData.value = data
|
|
|
+}
|
|
|
+getCvDetail()
|
|
|
+
|
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
|
.operate {
|
|
@@ -88,7 +100,5 @@ const operateItems = [
|
|
|
height: 500px; // 272px
|
|
|
position: sticky;
|
|
|
top: 60px;
|
|
|
- // background-color: var(--default-bgc);
|
|
|
- // background-color: #f7f8fa;
|
|
|
}
|
|
|
</style>
|