AI定制专属简历和简历预览调整

This commit is contained in:
2026-07-07 11:34:14 +08:00
parent 9e791345f2
commit b740e0cd39
10 changed files with 483 additions and 197 deletions
+84 -7
View File
@@ -1193,7 +1193,21 @@ async function updateModuleContent(item: FixAllSubmitItem) {
// 更新个人概述
const newSummary = item.newContent as string
resumeMain.value.summary = newSummary
await saveResumeMain({ resumeId, summary: newSummary })
await saveResumeMain({
resumeId,
resumeName: resumeMain.value.resumeName,
targetPosition: resumeMain.value.targetPosition,
name: resumeMain.value.name || '',
email: resumeMain.value.email || '',
mobileNumber: resumeMain.value.mobileNumber || '',
city: resumeMain.value.city || '',
regionCode: resumeMain.value.regionCode || '',
wechatNumber: resumeMain.value.wechatNumber || '',
portfolioUrl: resumeMain.value.portfolioUrl || '',
skills: resumeMain.value.skills || [],
certificates: resumeMain.value.certificates || [],
summary: newSummary,
})
return
}
@@ -1230,7 +1244,21 @@ async function handleFixSubmit(content: string[]) {
// 个人概述:content 只有一个元素,直接更新 summary 字段
const newSummary = content.join('\n')
resumeMain.value.summary = newSummary
await saveResumeMain({ resumeId, summary: newSummary })
await saveResumeMain({
resumeId,
resumeName: resumeMain.value.resumeName,
targetPosition: resumeMain.value.targetPosition,
name: resumeMain.value.name || '',
email: resumeMain.value.email || '',
mobileNumber: resumeMain.value.mobileNumber || '',
city: resumeMain.value.city || '',
regionCode: resumeMain.value.regionCode || '',
wechatNumber: resumeMain.value.wechatNumber || '',
portfolioUrl: resumeMain.value.portfolioUrl || '',
skills: resumeMain.value.skills || [],
certificates: resumeMain.value.certificates || [],
summary: newSummary,
})
} else {
// 5 大经历模块:找到对应经历记录,按 id 对应更新 description 数组里的 text
const listMap: Record<string, any[]> = {
@@ -1529,9 +1557,11 @@ function openEditDrawer(section: string) {
async function handleSaveEdit(data: Record<string, any>) {
try {
if (editModule.value === 'info') {
// 保存基本信息到简历主表(含作品集链接)
// 保存基本信息到简历主表(含作品集链接)— 传入完整主表字段
await saveResumeMain({
resumeId,
resumeName: resumeMain.value.resumeName,
targetPosition: resumeMain.value.targetPosition,
name: data.name,
email: data.email,
mobileNumber: data.phone,
@@ -1539,6 +1569,9 @@ async function handleSaveEdit(data: Record<string, any>) {
regionCode: data.location || '',
wechatNumber: data.wechat,
portfolioUrl: data.portfolioUrl,
skills: resumeMain.value.skills || [],
certificates: resumeMain.value.certificates || [],
summary: resumeMain.value.summary || '',
})
resumeMain.value.name = data.name
resumeMain.value.email = data.email
@@ -1548,9 +1581,20 @@ async function handleSaveEdit(data: Record<string, any>) {
resumeMain.value.wechatNumber = data.wechat
resumeMain.value.portfolioUrl = data.portfolioUrl
} else if (editModule.value === 'summary') {
// 保存个人概述到简历主表
// 保存个人概述到简历主表 — 传入完整主表字段
await saveResumeMain({
resumeId,
resumeName: resumeMain.value.resumeName,
targetPosition: resumeMain.value.targetPosition,
name: resumeMain.value.name || '',
email: resumeMain.value.email || '',
mobileNumber: resumeMain.value.mobileNumber || '',
city: resumeMain.value.city || '',
regionCode: resumeMain.value.regionCode || '',
wechatNumber: resumeMain.value.wechatNumber || '',
portfolioUrl: resumeMain.value.portfolioUrl || '',
skills: resumeMain.value.skills || [],
certificates: resumeMain.value.certificates || [],
summary: data.summary,
})
resumeMain.value.summary = data.summary
@@ -1685,24 +1729,57 @@ async function handleSaveEdit(data: Record<string, any>) {
}
await Promise.all([...addPromises, ...updatePromises, ...deletePromises])
} else if (editModule.value === 'portfolio') {
// 保存作品集链接到简历主表
// 保存作品集链接到简历主表 — 传入完整主表字段
await saveResumeMain({
resumeId,
resumeName: resumeMain.value.resumeName,
targetPosition: resumeMain.value.targetPosition,
name: resumeMain.value.name || '',
email: resumeMain.value.email || '',
mobileNumber: resumeMain.value.mobileNumber || '',
city: resumeMain.value.city || '',
regionCode: resumeMain.value.regionCode || '',
wechatNumber: resumeMain.value.wechatNumber || '',
portfolioUrl: data.portfolioUrl,
skills: resumeMain.value.skills || [],
certificates: resumeMain.value.certificates || [],
summary: resumeMain.value.summary || '',
})
resumeMain.value.portfolioUrl = data.portfolioUrl
} else if (editModule.value === 'skills') {
// 保存技能到简历主表
// 保存技能到简历主表 — 传入完整主表字段
await saveResumeMain({
resumeId,
resumeName: resumeMain.value.resumeName,
targetPosition: resumeMain.value.targetPosition,
name: resumeMain.value.name || '',
email: resumeMain.value.email || '',
mobileNumber: resumeMain.value.mobileNumber || '',
city: resumeMain.value.city || '',
regionCode: resumeMain.value.regionCode || '',
wechatNumber: resumeMain.value.wechatNumber || '',
portfolioUrl: resumeMain.value.portfolioUrl || '',
skills: [...data.skills],
certificates: resumeMain.value.certificates || [],
summary: resumeMain.value.summary || '',
})
resumeMain.value.skills = [...data.skills]
} else if (editModule.value === 'certificate') {
// 保存证书到简历主表
// 保存证书到简历主表 — 传入完整主表字段
await saveResumeMain({
resumeId,
resumeName: resumeMain.value.resumeName,
targetPosition: resumeMain.value.targetPosition,
name: resumeMain.value.name || '',
email: resumeMain.value.email || '',
mobileNumber: resumeMain.value.mobileNumber || '',
city: resumeMain.value.city || '',
regionCode: resumeMain.value.regionCode || '',
wechatNumber: resumeMain.value.wechatNumber || '',
portfolioUrl: resumeMain.value.portfolioUrl || '',
skills: resumeMain.value.skills || [],
certificates: [...data.certificates],
summary: resumeMain.value.summary || '',
})
resumeMain.value.certificates = [...data.certificates]
}