AI投递助手样式优化
This commit is contained in:
@@ -917,6 +917,8 @@ body:not(#_) {
|
|||||||
.w192{width: 1.92rem;}
|
.w192{width: 1.92rem;}
|
||||||
.w200{width: 2rem;}
|
.w200{width: 2rem;}
|
||||||
.w244{width: 2.44rem;}
|
.w244{width: 2.44rem;}
|
||||||
|
.w263{width: 2.63rem;}
|
||||||
|
.w444{width: 4.44rem;}
|
||||||
.w1200{width:12rem}
|
.w1200{width:12rem}
|
||||||
|
|
||||||
/*height*/
|
/*height*/
|
||||||
|
|||||||
@@ -392,3 +392,234 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ==================== 浏览器插件安装教程抽屉 ====================
|
||||||
|
|
||||||
|
/* 遮罩层 */
|
||||||
|
.agent-browser-guide-mask {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: var(--app-height, 100vh);
|
||||||
|
background: rgba(0, 0, 0, 0.3);
|
||||||
|
z-index: 2000;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 抽屉主体 */
|
||||||
|
.agent-browser-guide-drawer {
|
||||||
|
width: 9.6rem;
|
||||||
|
max-width: 9.6rem;
|
||||||
|
height: var(--app-height, 100vh);
|
||||||
|
background: $bg-white;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
font-size: 0.14rem;
|
||||||
|
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.08);
|
||||||
|
|
||||||
|
/* 顶部标题栏 */
|
||||||
|
&__header {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
padding: 0.2rem 0.24rem;
|
||||||
|
height: 0.64rem;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__header-left {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.16rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__close {
|
||||||
|
width: 0.24rem;
|
||||||
|
height: 0.24rem;
|
||||||
|
cursor: pointer;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__close-icon {
|
||||||
|
width: 0.24rem;
|
||||||
|
height: 0.24rem;
|
||||||
|
color: $text-middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__title {
|
||||||
|
font-size: 0.18rem;
|
||||||
|
font-weight: 520;
|
||||||
|
color: $text-dark;
|
||||||
|
line-height: 0.24rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 内容区域 */
|
||||||
|
&__body {
|
||||||
|
flex: 1;
|
||||||
|
overflow-y: auto;
|
||||||
|
padding: 0 0.32rem 0.32rem;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
gap: 0.16rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 步骤卡片 */
|
||||||
|
&__card {
|
||||||
|
border: 1px solid #F0F0F0;
|
||||||
|
border-radius: 0.12rem;
|
||||||
|
padding: 0.16rem 0.2rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__step-row {
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: 0.12rem;
|
||||||
|
margin-bottom: 0.16rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__step-num {
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
width: 0.32rem;
|
||||||
|
height: 0.32rem;
|
||||||
|
background: #EDF9FA;
|
||||||
|
border-radius: 0.08rem;
|
||||||
|
font-size: 0.18rem;
|
||||||
|
font-weight: 520;
|
||||||
|
color: $accent;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__step-info {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__step-title {
|
||||||
|
font-size: 0.18rem;
|
||||||
|
font-weight: 520;
|
||||||
|
color: $text-dark;
|
||||||
|
line-height: 0.24rem;
|
||||||
|
margin: 0 0 0.04rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__step-desc {
|
||||||
|
font-size: 0.14rem;
|
||||||
|
font-weight: 330;
|
||||||
|
color: $text-middle;
|
||||||
|
line-height: 0.19rem;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 下载按钮区域 */
|
||||||
|
&__download-box {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.16rem;
|
||||||
|
padding: 0.04rem 0.04rem 0.04rem 0.16rem;
|
||||||
|
background: $bg-main;
|
||||||
|
border-radius: 0.12rem;
|
||||||
|
height: 0.44rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__download-name {
|
||||||
|
font-size: 0.14rem;
|
||||||
|
font-weight: 450;
|
||||||
|
color: $text-dark;
|
||||||
|
line-height: 0.19rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__download-btn {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.04rem;
|
||||||
|
padding: 0.08rem 0.12rem;
|
||||||
|
background: $accent;
|
||||||
|
border: none;
|
||||||
|
border-radius: 0.08rem;
|
||||||
|
color: $bg-white;
|
||||||
|
font-size: 0.14rem;
|
||||||
|
font-weight: 520;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: background 0.2s;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
background: $accent-hover;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 浏览器链接区域 */
|
||||||
|
&__browser-links {
|
||||||
|
display: flex;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: 0.24rem;
|
||||||
|
margin-bottom: 0.16rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__browser-link {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.04rem;
|
||||||
|
padding: 0.12rem 0.16rem;
|
||||||
|
background: $bg-white;
|
||||||
|
border: 1px solid #F0F0F0;
|
||||||
|
border-radius: 0.08rem;
|
||||||
|
font-size: 0.14rem;
|
||||||
|
font-weight: 450;
|
||||||
|
color: $text-middle;
|
||||||
|
cursor: pointer;
|
||||||
|
transition: border-color 0.2s;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
border-color: $accent;
|
||||||
|
}
|
||||||
|
|
||||||
|
svg {
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
span {
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&__copy-btn {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.04rem;
|
||||||
|
color: $accent;
|
||||||
|
font-size: 0.14rem;
|
||||||
|
font-weight: 450;
|
||||||
|
margin-left: 0.12rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 步骤示意图 */
|
||||||
|
&__step-img {
|
||||||
|
width: 100%;
|
||||||
|
max-width: 4rem;
|
||||||
|
border-radius: 0.08rem;
|
||||||
|
margin-top: 0.12rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 抽屉动画 */
|
||||||
|
.agent-browser-guide-drawer-enter-active,
|
||||||
|
.agent-browser-guide-drawer-leave-active {
|
||||||
|
transition: opacity 0.3s ease;
|
||||||
|
|
||||||
|
.agent-browser-guide-drawer {
|
||||||
|
transition: transform 0.3s ease;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.agent-browser-guide-drawer-enter-from,
|
||||||
|
.agent-browser-guide-drawer-leave-to {
|
||||||
|
opacity: 0;
|
||||||
|
|
||||||
|
.agent-browser-guide-drawer {
|
||||||
|
transform: translateX(100%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -1710,3 +1710,161 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ==================== 简历预览抽屉 ====================
|
||||||
|
|
||||||
|
/* 遮罩层 */
|
||||||
|
.agent-resume-drawer-mask {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100vw;
|
||||||
|
height: var(--app-height, 100vh);
|
||||||
|
background: rgba(0, 0, 0, 0.3);
|
||||||
|
z-index: 2000;
|
||||||
|
display: flex;
|
||||||
|
justify-content: flex-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 抽屉主体 */
|
||||||
|
.agent-resume-drawer {
|
||||||
|
width: 9.6rem;
|
||||||
|
max-width: 9.6rem;
|
||||||
|
height: var(--app-height, 100vh);
|
||||||
|
background: $bg-white;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
font-size: 0.14rem;
|
||||||
|
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.08);
|
||||||
|
|
||||||
|
/* 顶部标题栏 */
|
||||||
|
&__header {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 0.2rem 0.24rem;
|
||||||
|
height: 0.64rem;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border-bottom: 1px solid $border-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__header-left {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.16rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 关闭按钮 */
|
||||||
|
&__close {
|
||||||
|
width: 0.24rem;
|
||||||
|
height: 0.24rem;
|
||||||
|
cursor: pointer;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__close-icon {
|
||||||
|
width: 0.24rem;
|
||||||
|
height: 0.24rem;
|
||||||
|
color: $text-middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 标题文字 */
|
||||||
|
&__title {
|
||||||
|
font-size: 0.18rem;
|
||||||
|
font-weight: 520;
|
||||||
|
color: $text-dark;
|
||||||
|
line-height: 0.24rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 匹配分提示区域 */
|
||||||
|
&__score-info {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
gap: 0.16rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__score-tip {
|
||||||
|
font-size: 0.13rem;
|
||||||
|
font-weight: 400;
|
||||||
|
color: $text-dark;
|
||||||
|
line-height: 0.2rem;
|
||||||
|
background: #F0FAFB;
|
||||||
|
border-radius: 0.08rem;
|
||||||
|
padding: 0.06rem 0.12rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__score-old {
|
||||||
|
font-weight: 630;
|
||||||
|
color: $accent;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__score-new {
|
||||||
|
font-weight: 630;
|
||||||
|
color: $accent;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 匹配度环 */
|
||||||
|
&__score-ring {
|
||||||
|
position: relative;
|
||||||
|
width: 0.56rem;
|
||||||
|
height: 0.56rem;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__ring-svg {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__ring-text {
|
||||||
|
position: absolute;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%, -50%);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__ring-number {
|
||||||
|
font-size: 0.16rem;
|
||||||
|
font-weight: 630;
|
||||||
|
color: $text-dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
&__ring-label {
|
||||||
|
font-size: 0.08rem;
|
||||||
|
font-weight: 400;
|
||||||
|
color: $text-middle;
|
||||||
|
margin-top: 0.02rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 内容区域(可滚动) */
|
||||||
|
&__body {
|
||||||
|
flex: 1;
|
||||||
|
overflow-y: auto;
|
||||||
|
padding: 0.24rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 抽屉动画 */
|
||||||
|
.agent-resume-drawer-enter-active,
|
||||||
|
.agent-resume-drawer-leave-active {
|
||||||
|
transition: opacity 0.3s ease;
|
||||||
|
|
||||||
|
.agent-resume-drawer {
|
||||||
|
transition: transform 0.3s ease;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.agent-resume-drawer-enter-from,
|
||||||
|
.agent-resume-drawer-leave-to {
|
||||||
|
opacity: 0;
|
||||||
|
|
||||||
|
.agent-resume-drawer {
|
||||||
|
transform: translateX(100%);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|||||||
@@ -231,6 +231,164 @@
|
|||||||
|
|
||||||
<!-- 求职目标设置弹窗 -->
|
<!-- 求职目标设置弹窗 -->
|
||||||
<JobGoalDialog v-model="showJobGoalDialog" />
|
<JobGoalDialog v-model="showJobGoalDialog" />
|
||||||
|
|
||||||
|
<!-- 浏览器插件安装教程抽屉 -->
|
||||||
|
<Teleport to="body">
|
||||||
|
<Transition name="agent-browser-guide-drawer">
|
||||||
|
<div v-if="showBrowserGuideDrawer" class="agent-browser-guide-mask" @click.self="closeBrowserGuideDrawer">
|
||||||
|
<div class="agent-browser-guide-drawer">
|
||||||
|
<!-- 顶部标题栏 -->
|
||||||
|
<div class="agent-browser-guide-drawer__header">
|
||||||
|
<div class="agent-browser-guide-drawer__header-left">
|
||||||
|
<div class="agent-browser-guide-drawer__close" @click="closeBrowserGuideDrawer">
|
||||||
|
<svg viewBox="0 0 24 24" fill="none" class="agent-browser-guide-drawer__close-icon">
|
||||||
|
<path d="M18 6L6 18M6 6l12 12" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
<span class="agent-browser-guide-drawer__title">安装浏览器插件教程</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 步骤内容 -->
|
||||||
|
<div class="agent-browser-guide-drawer__body">
|
||||||
|
<!-- 步骤1:下载插件包 -->
|
||||||
|
<div class="agent-browser-guide-drawer__card">
|
||||||
|
<div class="agent-browser-guide-drawer__step-row">
|
||||||
|
<span class="agent-browser-guide-drawer__step-num">1</span>
|
||||||
|
<div class="agent-browser-guide-drawer__step-info">
|
||||||
|
<h4 class="agent-browser-guide-drawer__step-title">下载插件包</h4>
|
||||||
|
<p class="agent-browser-guide-drawer__step-desc">下载 Offer派自动投递助手安装包,下载完成后由步骤 2 进入浏览器扩展页面</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="agent-browser-guide-drawer__download-box w263">
|
||||||
|
<span class="agent-browser-guide-drawer__download-name">Offer派自动投递助手.crx</span>
|
||||||
|
<button class="agent-browser-guide-drawer__download-btn" @click="downloadExtension">
|
||||||
|
<svg viewBox="0 0 16 16" fill="none" width="14" height="14"><path d="M8 2v8M8 10L5 7M8 10l3-3M3 13h10" stroke="currentColor" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"/></svg>
|
||||||
|
<span>下载</span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 步骤2:打开扩展管理页面 -->
|
||||||
|
<div class="agent-browser-guide-drawer__card">
|
||||||
|
<div class="agent-browser-guide-drawer__step-row">
|
||||||
|
<span class="agent-browser-guide-drawer__step-num">2</span>
|
||||||
|
<div class="agent-browser-guide-drawer__step-info">
|
||||||
|
<h4 class="agent-browser-guide-drawer__step-title">打开扩展管理页面</h4>
|
||||||
|
<p class="agent-browser-guide-drawer__step-desc">在浏览器地址栏输入对应地址并回车,打开扩展管理页面</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 浏览器地址链接 -->
|
||||||
|
<div class="agent-browser-guide-drawer__browser-links">
|
||||||
|
<div class="agent-browser-guide-drawer__browser-link" @click="copyToClipboard('chrome://extensions')">
|
||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_498_5140)">
|
||||||
|
<path d="M8.00027 12.4507C10.4587 12.4507 12.4516 10.4577 12.4516 7.99929C12.4516 5.54085 10.4587 3.54785 8.00027 3.54785C5.54183 3.54785 3.54883 5.54085 3.54883 7.99929C3.54883 10.4577 5.54177 12.4507 8.0002 12.4507" fill="white"/>
|
||||||
|
<path d="M2.24303 5.81204C1.91094 5.23683 1.52061 4.63314 1.07203 4.00098C0.369757 5.21706 2.38548e-05 6.59661 1.15428e-09 8.0009C-2.38525e-05 9.4052 0.369663 10.7848 1.07189 12.0009C1.77412 13.217 2.78414 14.2268 4.0004 14.9288C5.21666 15.6307 6.59629 16.0001 8.00059 15.9998C8.73688 14.9671 9.2368 14.2225 9.50034 13.766C10.0065 12.8893 10.6612 11.6341 11.4643 10.0004V9.99941C11.1134 10.6077 10.6086 11.113 10.0005 11.4643C9.39241 11.8156 8.70256 12.0006 8.0003 12.0007C7.29804 12.0008 6.60813 11.816 5.99995 11.4649C5.39178 11.1138 4.88677 10.6087 4.53571 10.0005C3.44496 7.96623 2.68073 6.57004 2.24303 5.81204Z" fill="#229342"/>
|
||||||
|
<path d="M8.00046 16.0002C9.05106 16.0004 10.0914 15.7936 11.0621 15.3916C12.0327 14.9896 12.9147 14.4003 13.6575 13.6574C14.4004 12.9145 14.9896 12.0325 15.3915 11.0619C15.7935 10.0912 16.0002 9.05084 16 8.00024C15.9997 6.59593 15.6297 5.21644 14.9273 4.00043C13.4118 3.85105 12.2933 3.77637 11.5719 3.77637C10.7539 3.77637 9.56323 3.85105 7.9999 4.00043L7.99902 4.00105C8.7013 4.00071 9.39128 4.18529 9.99958 4.53623C10.6079 4.88717 11.113 5.39211 11.4643 6.00024C11.8155 6.60838 12.0004 7.29828 12.0004 8.00056C12.0004 8.70284 11.8155 9.39274 11.4642 10.0009L8.00046 16.0002Z" fill="#FBC116"/>
|
||||||
|
<path d="M8.00013 11.1677C9.74913 11.1677 11.1669 9.74992 11.1669 8.00086C11.1669 6.2518 9.74913 4.83398 8.00006 4.83398C6.25113 4.83398 4.83325 6.25186 4.83325 8.00086C4.83325 9.74986 6.25113 11.1677 8.00013 11.1677Z" fill="#1A73E8"/>
|
||||||
|
<path d="M8.00027 4.00027H14.9276C14.2256 2.78399 13.2158 1.77397 11.9997 1.07176C10.7835 0.369547 9.40396 -9.50021e-05 7.99965 1.83149e-08C6.59534 9.50388e-05 5.21581 0.369924 3.99978 1.0723C2.78374 1.77467 1.77406 2.78484 1.07227 4.00121L4.53595 10.0006L4.53689 10.0011C4.18549 9.39306 4.00037 8.70322 4.00017 8.00095C3.99996 7.29868 4.18467 6.60873 4.53571 6.0005C4.88676 5.39226 5.39177 4.88718 5.99995 4.53605C6.60814 4.18491 7.29806 4.0001 8.00033 4.00021L8.00027 4.00027Z" fill="#E33B2E"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_498_5140">
|
||||||
|
<rect width="16" height="16" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
<span>Chrome浏览器:chrome://extensions</span>
|
||||||
|
<span class="agent-browser-guide-drawer__copy-btn">
|
||||||
|
<svg viewBox="0 0 14 14" fill="none" width="12" height="12"><rect x="4" y="4" width="8" height="8" rx="1" stroke="currentColor" stroke-width="1"/><path d="M10 4V3a1 1 0 00-1-1H3a1 1 0 00-1 1v6a1 1 0 001 1h1" stroke="currentColor" stroke-width="1"/></svg>
|
||||||
|
复制
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div class="agent-browser-guide-drawer__browser-link" @click="copyToClipboard('edge://extensions')">
|
||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_498_5157)">
|
||||||
|
<path d="M14.4375 11.9059C14.225 12.0184 14.0062 12.1184 13.7812 12.1996C13.0625 12.4684 12.3062 12.6059 11.5375 12.6059C8.5812 12.6059 6.0062 10.5746 6.0062 7.96211C6.01245 7.24961 6.4062 6.59336 7.0312 6.25586C4.3562 6.36836 3.6687 9.15586 3.6687 10.7871C3.6687 15.4059 7.92495 15.8746 8.8437 15.8746C9.33745 15.8746 10.0812 15.7309 10.5312 15.5871L10.6125 15.5621C12.3375 14.9684 13.8 13.8059 14.775 12.2621C14.85 12.1434 14.8125 11.9934 14.7 11.9184C14.6187 11.8684 14.5187 11.8621 14.4375 11.9059Z" fill="url(#paint0_linear_498_5157)"/>
|
||||||
|
<path opacity="0.35" d="M14.4375 11.9059C14.225 12.0184 14.0062 12.1184 13.7812 12.1996C13.0625 12.4684 12.3062 12.6059 11.5375 12.6059C8.5812 12.6059 6.0062 10.5746 6.0062 7.96211C6.01245 7.24961 6.4062 6.59336 7.0312 6.25586C4.3562 6.36836 3.6687 9.15586 3.6687 10.7871C3.6687 15.4059 7.92495 15.8746 8.8437 15.8746C9.33745 15.8746 10.0812 15.7309 10.5312 15.5871L10.6125 15.5621C12.3375 14.9684 13.8 13.8059 14.775 12.2621C14.85 12.1434 14.8125 11.9934 14.7 11.9184C14.6187 11.8684 14.5187 11.8621 14.4375 11.9059Z" fill="url(#paint1_radial_498_5157)"/>
|
||||||
|
<path d="M6.60629 15.0877C6.05004 14.7439 5.56879 14.2877 5.18754 13.7564C3.54379 11.5064 4.03754 8.3502 6.28754 6.70645C6.52504 6.5377 6.76879 6.38145 7.03129 6.25645C7.22504 6.1627 7.55629 6.0002 8.00004 6.00645C8.63129 6.0127 9.22504 6.3127 9.60629 6.81895C9.85629 7.15645 10 7.5627 10.0063 7.9877C10.0063 7.9752 11.5375 3.0127 5.00629 3.0127C2.26254 3.0127 0.00628588 5.61895 0.00628588 7.9002C-0.00621412 9.10645 0.256286 10.3064 0.762536 11.4002C2.48754 15.0752 6.68754 16.8752 10.5375 15.5939C9.21879 16.0064 7.78129 15.8252 6.60629 15.0877Z" fill="url(#paint2_linear_498_5157)"/>
|
||||||
|
<path opacity="0.41" d="M6.60629 15.0877C6.05004 14.7439 5.56879 14.2877 5.18754 13.7564C3.54379 11.5064 4.03754 8.3502 6.28754 6.70645C6.52504 6.5377 6.76879 6.38145 7.03129 6.25645C7.22504 6.1627 7.55629 6.0002 8.00004 6.00645C8.63129 6.0127 9.22504 6.3127 9.60629 6.81895C9.85629 7.15645 10 7.5627 10.0063 7.9877C10.0063 7.9752 11.5375 3.0127 5.00629 3.0127C2.26254 3.0127 0.00628588 5.61895 0.00628588 7.9002C-0.00621412 9.10645 0.256286 10.3064 0.762536 11.4002C2.48754 15.0752 6.68754 16.8752 10.5375 15.5939C9.21879 16.0064 7.78129 15.8252 6.60629 15.0877Z" fill="url(#paint3_radial_498_5157)"/>
|
||||||
|
<path d="M9.51875 9.30625C9.46875 9.36875 9.3125 9.4625 9.3125 9.6625C9.3125 9.825 9.41875 9.98125 9.60625 10.1125C10.5062 10.7375 12.2 10.6562 12.2063 10.6562C12.875 10.6562 13.525 10.475 14.1 10.1375C15.275 9.45 16 8.19375 16 6.83125C16.0187 5.43125 15.5 4.5 15.2937 4.0875C13.9688 1.49375 11.1062 0 8 0C3.625 0 0.0625 3.5125 0 7.8875C0.03125 5.60625 2.3 3.7625 5 3.7625C5.21875 3.7625 6.46875 3.78125 7.625 4.39375C8.64375 4.93125 9.18125 5.575 9.55 6.21875C9.9375 6.8875 10.0063 7.725 10.0063 8.0625C10.0063 8.39375 9.8375 8.89375 9.51875 9.30625Z" fill="url(#paint4_radial_498_5157)"/>
|
||||||
|
<path d="M9.51875 9.30625C9.46875 9.36875 9.3125 9.4625 9.3125 9.6625C9.3125 9.825 9.41875 9.98125 9.60625 10.1125C10.5062 10.7375 12.2 10.6562 12.2063 10.6562C12.875 10.6562 13.525 10.475 14.1 10.1375C15.275 9.45 16 8.19375 16 6.83125C16.0187 5.43125 15.5 4.5 15.2937 4.0875C13.9688 1.49375 11.1062 0 8 0C3.625 0 0.0625 3.5125 0 7.8875C0.03125 5.60625 2.3 3.7625 5 3.7625C5.21875 3.7625 6.46875 3.78125 7.625 4.39375C8.64375 4.93125 9.18125 5.575 9.55 6.21875C9.9375 6.8875 10.0063 7.725 10.0063 8.0625C10.0063 8.39375 9.8375 8.89375 9.51875 9.30625Z" fill="url(#paint5_radial_498_5157)"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<linearGradient id="paint0_linear_498_5157" x1="3.66895" y1="11.0634" x2="14.8116" y2="11.0634" gradientUnits="userSpaceOnUse">
|
||||||
|
<stop stop-color="#0C59A4"/>
|
||||||
|
<stop offset="1" stop-color="#114A8B"/>
|
||||||
|
</linearGradient>
|
||||||
|
<radialGradient id="paint1_radial_498_5157" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(9.82444 11.1519) scale(5.96065 5.662)">
|
||||||
|
<stop offset="0.72" stop-opacity="0"/>
|
||||||
|
<stop offset="0.95" stop-opacity="0.53"/>
|
||||||
|
<stop offset="1"/>
|
||||||
|
</radialGradient>
|
||||||
|
<linearGradient id="paint2_linear_498_5157" x1="9.54822" y1="6.23432" x2="2.58741" y2="13.8163" gradientUnits="userSpaceOnUse">
|
||||||
|
<stop stop-color="#1B9DE2"/>
|
||||||
|
<stop offset="0.16" stop-color="#1595DF"/>
|
||||||
|
<stop offset="0.67" stop-color="#0680D7"/>
|
||||||
|
<stop offset="1" stop-color="#0078D4"/>
|
||||||
|
</linearGradient>
|
||||||
|
<radialGradient id="paint3_radial_498_5157" cx="0" cy="0" r="1" gradientTransform="matrix(1.34287 -8.86118 7.162 1.0743 4.41307 12.4383)" gradientUnits="userSpaceOnUse">
|
||||||
|
<stop offset="0.76" stop-opacity="0"/>
|
||||||
|
<stop offset="0.95" stop-opacity="0.5"/>
|
||||||
|
<stop offset="1"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint4_radial_498_5157" cx="0" cy="0" r="1" gradientTransform="matrix(-0.506075 12.6493 -26.9472 -1.0119 1.61573 2.96205)" gradientUnits="userSpaceOnUse">
|
||||||
|
<stop stop-color="#35C1F1"/>
|
||||||
|
<stop offset="0.11" stop-color="#34C1ED"/>
|
||||||
|
<stop offset="0.23" stop-color="#2FC2DF"/>
|
||||||
|
<stop offset="0.31" stop-color="#2BC3D2"/>
|
||||||
|
<stop offset="0.67" stop-color="#36C752"/>
|
||||||
|
</radialGradient>
|
||||||
|
<radialGradient id="paint5_radial_498_5157" cx="0" cy="0" r="1" gradientTransform="matrix(1.70345 5.83918 -4.74533 1.39926 15.0038 4.83786)" gradientUnits="userSpaceOnUse">
|
||||||
|
<stop stop-color="#66EB6E"/>
|
||||||
|
<stop offset="1" stop-color="#66EB6E" stop-opacity="0"/>
|
||||||
|
</radialGradient>
|
||||||
|
<clipPath id="clip0_498_5157">
|
||||||
|
<rect width="16" height="16" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
<span>Edge浏览器:edge://extensions</span>
|
||||||
|
<span class="agent-browser-guide-drawer__copy-btn">
|
||||||
|
<svg viewBox="0 0 14 14" fill="none" width="12" height="12"><rect x="4" y="4" width="8" height="8" rx="1" stroke="currentColor" stroke-width="1"/><path d="M10 4V3a1 1 0 00-1-1H3a1 1 0 00-1 1v6a1 1 0 001 1h1" stroke="currentColor" stroke-width="1"/></svg>
|
||||||
|
复制
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 步骤2示意图 -->
|
||||||
|
<img src="@/assets/images/agent-setting/2-1.png" alt="输入扩展地址" class="agent-browser-guide-drawer__step-img" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 步骤3:打开开发者模式 -->
|
||||||
|
<div class="agent-browser-guide-drawer__card">
|
||||||
|
<div class="agent-browser-guide-drawer__step-row">
|
||||||
|
<span class="agent-browser-guide-drawer__step-num">3</span>
|
||||||
|
<div class="agent-browser-guide-drawer__step-info">
|
||||||
|
<h4 class="agent-browser-guide-drawer__step-title">打开开发者模式</h4>
|
||||||
|
<p class="agent-browser-guide-drawer__step-desc">在扩展管理页面的右上角,找到「开发者模式」开关并打开</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 步骤3示意图 -->
|
||||||
|
<img src="@/assets/images/agent-setting/3-1.png" alt="打开开发者模式" class="agent-browser-guide-drawer__step-img" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- 步骤4:将CRX安装包拖入安装 -->
|
||||||
|
<div class="agent-browser-guide-drawer__card">
|
||||||
|
<div class="agent-browser-guide-drawer__step-row">
|
||||||
|
<span class="agent-browser-guide-drawer__step-num">4</span>
|
||||||
|
<div class="agent-browser-guide-drawer__step-info">
|
||||||
|
<h4 class="agent-browser-guide-drawer__step-title">将 CRX 安装包拖入安装</h4>
|
||||||
|
<p class="agent-browser-guide-drawer__step-desc">直接将下载好的CRX文件拖拽到扩展管理页面中,浏览器会自动识别并安装插件</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 步骤4示意图 -->
|
||||||
|
<img src="@/assets/images/agent-setting/4-1.png" alt="拖入安装" class="agent-browser-guide-drawer__step-img" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</Transition>
|
||||||
|
</Teleport>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -500,13 +658,34 @@ async function handleSavePreference() {
|
|||||||
|
|
||||||
// ==================== 浏览器插件 ====================
|
// ==================== 浏览器插件 ====================
|
||||||
|
|
||||||
/** 打开浏览器安装指引 */
|
/** 浏览器插件安装教程抽屉是否显示 */
|
||||||
function openBrowserGuide(browser: string) {
|
const showBrowserGuideDrawer = ref(false)
|
||||||
if (browser === 'chrome') {
|
|
||||||
ElMessage.info('请复制地址 chrome://extensions 到浏览器打开')
|
/** 插件下载地址 */
|
||||||
} else {
|
const extensionDownloadUrl = 'https://offerpie.oss-cn-guangzhou.aliyuncs.com/extension/chrome-mv3-prod.rar'
|
||||||
ElMessage.info('请复制地址 edge://extensions/ 到浏览器打开')
|
|
||||||
|
/** 打开浏览器安装指引抽屉 */
|
||||||
|
function openBrowserGuide(_browser: string) {
|
||||||
|
showBrowserGuideDrawer.value = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** 关闭浏览器安装指引抽屉 */
|
||||||
|
function closeBrowserGuideDrawer() {
|
||||||
|
showBrowserGuideDrawer.value = false
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 下载插件 */
|
||||||
|
function downloadExtension() {
|
||||||
|
window.open(extensionDownloadUrl, '_blank')
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 复制文本到剪贴板 */
|
||||||
|
function copyToClipboard(text: string) {
|
||||||
|
navigator.clipboard.writeText(text).then(() => {
|
||||||
|
ElMessage.success('已复制到剪贴板')
|
||||||
|
}).catch(() => {
|
||||||
|
ElMessage.error('复制失败,请手动复制')
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// ==================== 初始化 ====================
|
// ==================== 初始化 ====================
|
||||||
|
|||||||
+94
-23
@@ -169,13 +169,7 @@
|
|||||||
<!-- 底层:设置面板(常驻) -->
|
<!-- 底层:设置面板(常驻) -->
|
||||||
<AgentSettingPanel />
|
<AgentSettingPanel />
|
||||||
|
|
||||||
<!-- 覆盖层:其他面板(绝对定位覆盖设置面板) -->
|
<!-- 覆盖层已移除,简历预览改为独立抽屉(见页面底部) -->
|
||||||
<div v-if="showRightPanel" class="agent-main__right-overlay">
|
|
||||||
<!-- 模式3:简历预览 -->
|
|
||||||
<div v-if="rightPanelMode === 'resume'" class="agent-main__right-resume">
|
|
||||||
<JobResumeTemplate ref="applyResumeTemplateRef" :resume-data="applyResumeData" :mode="applyResumeMode" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -193,6 +187,56 @@
|
|||||||
@remove="handleJobPreviewRemove"
|
@remove="handleJobPreviewRemove"
|
||||||
@update:visible="(val: boolean) => showJobPreviewDrawer = val"
|
@update:visible="(val: boolean) => showJobPreviewDrawer = val"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
<!-- 简历预览抽屉(从右侧弹出) -->
|
||||||
|
<Teleport to="body">
|
||||||
|
<Transition name="agent-resume-drawer">
|
||||||
|
<div v-if="showResumeDrawer" class="agent-resume-drawer-mask" @click.self="handleCloseResumeDrawer">
|
||||||
|
<div class="agent-resume-drawer">
|
||||||
|
<!-- 顶部标题栏 -->
|
||||||
|
<div class="agent-resume-drawer__header">
|
||||||
|
<div class="agent-resume-drawer__header-left">
|
||||||
|
<div class="agent-resume-drawer__close" @click="handleCloseResumeDrawer">
|
||||||
|
<svg viewBox="0 0 24 24" fill="none" class="agent-resume-drawer__close-icon">
|
||||||
|
<path d="M18 6L6 18M6 6l12 12" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
<span class="agent-resume-drawer__title">岗位专属优化简历</span>
|
||||||
|
</div>
|
||||||
|
<!-- 匹配提升提示 -->
|
||||||
|
<div class="agent-resume-drawer__score-info">
|
||||||
|
<span class="agent-resume-drawer__score-tip">
|
||||||
|
🎉 恭喜!你的简历匹配值
|
||||||
|
<br/>
|
||||||
|
从<span class="agent-resume-drawer__score-old">{{ resumeScoreBefore }}分</span>
|
||||||
|
提升到了<span class="agent-resume-drawer__score-new">{{ resumeScoreAfter }}分</span>!
|
||||||
|
</span>
|
||||||
|
<!-- 匹配度环 -->
|
||||||
|
<div class="agent-resume-drawer__score-ring">
|
||||||
|
<svg viewBox="0 0 60 60" class="agent-resume-drawer__ring-svg">
|
||||||
|
<circle cx="30" cy="30" r="25" stroke-width="3" stroke="#E8E8E8" fill="none" />
|
||||||
|
<circle cx="30" cy="30" r="25" stroke-width="3" fill="none"
|
||||||
|
:stroke="resumeScoreAfter >= 4 ? '#52CAD1' : '#F59E0B'" stroke-linecap="round"
|
||||||
|
:stroke-dasharray="2 * Math.PI * 25"
|
||||||
|
:stroke-dashoffset="2 * Math.PI * 25 * (1 - resumeScoreAfter / 10)"
|
||||||
|
transform="rotate(-90 30 30)"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
<div class="agent-resume-drawer__ring-text">
|
||||||
|
<span class="agent-resume-drawer__ring-number">{{ resumeScoreAfter }}</span>
|
||||||
|
<span class="agent-resume-drawer__ring-label">{{ resumeScoreAfter >= 4 ? '高匹配度' : '匹配度' }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- 简历内容 -->
|
||||||
|
<div class="agent-resume-drawer__body">
|
||||||
|
<JobResumeTemplate ref="applyResumeTemplateRef" :resume-data="applyResumeData" :mode="applyResumeMode" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</Transition>
|
||||||
|
</Teleport>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -259,9 +303,6 @@ const showSetupWizard = ref(true)
|
|||||||
/** 从接口查询到的配置数据 — 传给向导组件做初始值 */
|
/** 从接口查询到的配置数据 — 传给向导组件做初始值 */
|
||||||
const agentConfig = ref<AgentConfig | null>(null)
|
const agentConfig = ref<AgentConfig | null>(null)
|
||||||
|
|
||||||
/** 是否显示右侧面板 */
|
|
||||||
const showRightPanel = ref(false)
|
|
||||||
|
|
||||||
/** 推荐岗位全量列表(接口返回200个) */
|
/** 推荐岗位全量列表(接口返回200个) */
|
||||||
const recommendJobs = ref<AgentRecommendJob[]>([])
|
const recommendJobs = ref<AgentRecommendJob[]>([])
|
||||||
|
|
||||||
@@ -664,8 +705,16 @@ function handleChatJobClick(job: AgentRecommendJob) {
|
|||||||
|
|
||||||
// ==================== 投递流程 ====================
|
// ==================== 投递流程 ====================
|
||||||
|
|
||||||
/** 右侧面板显示模式 */
|
/** 右侧面板显示模式(已废弃,保留仅兼容) */
|
||||||
const rightPanelMode = ref<'recommend' | 'resume'>('recommend')
|
|
||||||
|
/** 简历预览抽屉是否显示 */
|
||||||
|
const showResumeDrawer = ref(false)
|
||||||
|
|
||||||
|
/** 简历优化前分数(2-4之间随机) */
|
||||||
|
const resumeScoreBefore = ref(3.2)
|
||||||
|
|
||||||
|
/** 简历优化后分数(matchScore / 10) */
|
||||||
|
const resumeScoreAfter = ref(6.0)
|
||||||
|
|
||||||
/** 当前投递流程的简历数据 */
|
/** 当前投递流程的简历数据 */
|
||||||
const applyResumeData = ref<ResumeTemplateData>({} as ResumeTemplateData)
|
const applyResumeData = ref<ResumeTemplateData>({} as ResumeTemplateData)
|
||||||
@@ -676,6 +725,11 @@ const applyResumeTemplateRef = ref<InstanceType<typeof JobResumeTemplate> | null
|
|||||||
/** 简历模板模式:preview=预览,export=导出 */
|
/** 简历模板模式:preview=预览,export=导出 */
|
||||||
const applyResumeMode = ref<'preview' | 'export'>('preview')
|
const applyResumeMode = ref<'preview' | 'export'>('preview')
|
||||||
|
|
||||||
|
/** 关闭简历预览抽屉 */
|
||||||
|
function handleCloseResumeDrawer() {
|
||||||
|
showResumeDrawer.value = false
|
||||||
|
}
|
||||||
|
|
||||||
/** 学历文字转数字 */
|
/** 学历文字转数字 */
|
||||||
function degreeToNumber(degree?: string): number {
|
function degreeToNumber(degree?: string): number {
|
||||||
const map: Record<string, number> = { '大专': 1, '本科': 2, '硕士': 3, '博士': 4 }
|
const map: Record<string, number> = { '大专': 1, '本科': 2, '硕士': 3, '博士': 4 }
|
||||||
@@ -829,16 +883,36 @@ async function startResumeOptimization(targetJob: JobListItem) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** 第1步完成:查看优化简历 */
|
/** 第1步完成:查看优化简历 */
|
||||||
function handleViewResumeStep() {
|
async function handleViewResumeStep() {
|
||||||
const progressItem = applyProgressList.value[0]
|
const progressItem = applyProgressList.value[0]
|
||||||
if (!progressItem) return
|
if (!progressItem) return
|
||||||
|
|
||||||
// 打开右侧简历预览面板
|
// 打开简历预览抽屉
|
||||||
if (progressItem.resumeData) {
|
if (progressItem.resumeData) {
|
||||||
applyResumeData.value = mapOptimizeResumeToTemplate(progressItem.resumeData)
|
applyResumeData.value = mapOptimizeResumeToTemplate(progressItem.resumeData)
|
||||||
}
|
}
|
||||||
rightPanelMode.value = 'resume'
|
showResumeDrawer.value = true
|
||||||
showRightPanel.value = true
|
|
||||||
|
// 生成优化前随机分(2到4之间,保留1位小数)
|
||||||
|
resumeScoreBefore.value = Number((Math.random() * 2 + 2).toFixed(1))
|
||||||
|
|
||||||
|
// 查询匹配分
|
||||||
|
try {
|
||||||
|
const customizeRes = await fetchCustomizeResume(String(progressItem.jobInfo.id))
|
||||||
|
const customizeResumeId = customizeRes?.data?.id
|
||||||
|
if (customizeResumeId) {
|
||||||
|
const scoreRes = await fetchMatchScore({
|
||||||
|
customizeResumeId: String(customizeResumeId),
|
||||||
|
jobId: String(progressItem.jobInfo.id),
|
||||||
|
})
|
||||||
|
const rawScore = scoreRes?.data ?? 60
|
||||||
|
// 接口返回10-100,除以10得到1.0-10.0
|
||||||
|
resumeScoreAfter.value = Number((rawScore / 10).toFixed(1))
|
||||||
|
}
|
||||||
|
} catch {
|
||||||
|
// 查询失败时用默认值
|
||||||
|
resumeScoreAfter.value = 6.0
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 第1步完成:确认简历 → 自动进入第2步匹配分析 */
|
/** 第1步完成:确认简历 → 自动进入第2步匹配分析 */
|
||||||
@@ -852,9 +926,8 @@ async function handleConfirmResumeStep() {
|
|||||||
applyProgressList.value = [...applyProgressList.value]
|
applyProgressList.value = [...applyProgressList.value]
|
||||||
saveProgressToStorage()
|
saveProgressToStorage()
|
||||||
|
|
||||||
// 关闭简历预览面板
|
// 关闭简历预览抽屉
|
||||||
showRightPanel.value = false
|
showResumeDrawer.value = false
|
||||||
rightPanelMode.value = 'recommend'
|
|
||||||
|
|
||||||
// 调用匹配分析流程
|
// 调用匹配分析流程
|
||||||
await startMatchAnalysis()
|
await startMatchAnalysis()
|
||||||
@@ -999,8 +1072,7 @@ function handleCancelApply() {
|
|||||||
applyProgressList.value = []
|
applyProgressList.value = []
|
||||||
saveProgressToStorage()
|
saveProgressToStorage()
|
||||||
|
|
||||||
showRightPanel.value = false
|
showResumeDrawer.value = false
|
||||||
rightPanelMode.value = 'recommend'
|
|
||||||
isApplying.value = false
|
isApplying.value = false
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1015,8 +1087,7 @@ async function autoStartNextApply() {
|
|||||||
|
|
||||||
if (applyJobList.value.length === 0) {
|
if (applyJobList.value.length === 0) {
|
||||||
isApplying.value = false
|
isApplying.value = false
|
||||||
showRightPanel.value = false
|
showResumeDrawer.value = false
|
||||||
rightPanelMode.value = 'recommend'
|
|
||||||
ElMessage.success('所有待投递岗位已处理完毕')
|
ElMessage.success('所有待投递岗位已处理完毕')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user