生成定制简历部分默认优化选项全选
This commit is contained in:
@@ -401,9 +401,11 @@ const resumeCustomJobInfo = computed(() => ({
|
||||
companyLogoUrl: job.companyLogoUrl,
|
||||
location: job.location,
|
||||
matchScore: skillGapData.value?.score ?? +(job.matchScore / 10).toFixed(1),
|
||||
missingSkills: skillGapData.value?.missingSkills || [],
|
||||
missingSkills: skillGapData.value?.missingSkills || skillGapData.value?.gaps?.map(g => g.keyword) || [],
|
||||
keywords: skillGapData.value?.job?.skillTags || job.requiredSkills.map(s => s.name),
|
||||
sourceUrl: job.sourceUrl,
|
||||
/** 差距分析列表(来自 skill-gap 接口) */
|
||||
gaps: skillGapData.value?.gaps || [],
|
||||
/** 默认简历信息(来自 skill-gap 接口) */
|
||||
defaultResume: skillGapData.value?.resume || null,
|
||||
}))
|
||||
|
||||
+9
-6
@@ -15,7 +15,7 @@
|
||||
</div>
|
||||
|
||||
<!-- 页面标题 + Tab 切换 -->
|
||||
<JobPageHeader v-model:activeTab="activeTab" :favoriteCount="favoriteTotal" :applyCount="applyTotal" />
|
||||
<JobPageHeader v-model:activeTab="activeTab" />
|
||||
|
||||
<!-- 筛选条件 -->
|
||||
<div v-if="isRecommendTab" class="jobs-page__filters-bar">
|
||||
@@ -214,7 +214,7 @@
|
||||
<template v-if="isAuthenticated">
|
||||
<div class="jobs-page__match-ring">
|
||||
<svg viewBox="0 0 80 80" class="jobs-page__ring-svg">
|
||||
<circle cx="40" cy="40" r="34" stroke-width="5" stroke="#9FD051" fill="none" opacity="0.3"/>
|
||||
<circle cx="40" cy="40" r="34" stroke-width="5" :stroke="matchRingColor(job.matchScore)" fill="none" opacity="0.3"/>
|
||||
<circle cx="40" cy="40" r="34" stroke-width="5" fill="none"
|
||||
:stroke="matchRingColor(job.matchScore)"
|
||||
stroke-linecap="round"
|
||||
@@ -1194,20 +1194,23 @@ async function handleRemoveFromList(job: JobItem) {
|
||||
|
||||
/** 根据匹配分数返回对应的 CSS 类名 */
|
||||
function matchClass(score: number) {
|
||||
return score >= 80 ? 'jobs-page__job-match--high' : 'jobs-page__job-match--low'
|
||||
if (score >= 80) return 'jobs-page__job-match--high'
|
||||
if (score >= 40) return 'jobs-page__job-match--medium'
|
||||
return 'jobs-page__job-match--low'
|
||||
}
|
||||
|
||||
/** 根据匹配分数返回环形颜色 */
|
||||
function matchRingColor(score: number) {
|
||||
if (score >= 80) return '#9FD051'
|
||||
return '#9FD051'
|
||||
if (score >= 40) return '#F59E0B'
|
||||
return '#FE6D52'
|
||||
}
|
||||
|
||||
/** 根据匹配分数返回匹配等级文案 */
|
||||
function matchLevelText(score: number) {
|
||||
if (score >= 80) return '高匹配度'
|
||||
if (score >= 60) return '一般匹配'
|
||||
return '匹配度偏低'
|
||||
if (score >= 40) return '中匹配度'
|
||||
return '低匹配度'
|
||||
}
|
||||
|
||||
/** 跳转到岗位详情页 — 未登录弹登录框,登录后再跳转 */
|
||||
|
||||
Reference in New Issue
Block a user