import fs from 'fs'; // 读取交通物流岗位简历数据 const trafficLogisticsData = JSON.parse(fs.readFileSync('网页未导入数据/交通物流产业/交通物流岗位简历.json', 'utf-8')); // 根据岗位群分组数据 const groupedData = {}; trafficLogisticsData.forEach(item => { if (!groupedData[item.简历岗位群]) { groupedData[item.简历岗位群] = []; } groupedData[item.简历岗位群].push(item); }); // 生成industries数据结构(保持原有格式) const industries = []; let industryIdCounter = 1; for (const [groupName, positions] of Object.entries(groupedData)) { const industry = { id: `traffic_logistics_${industryIdCounter}`, name: groupName, positions: positions.map((pos, index) => ({ id: `traffic_logistics_${industryIdCounter}_${index + 1}`, title: pos.岗位名称, level: pos.岗位等级标签, avatar: pos.简历头像url, department: groupName, type: "全职", experience: pos.岗位等级标签 === "基础岗" ? "1-3年" : pos.岗位等级标签 === "储备干部岗" ? "2-5年" : "3-7年", education: "大专", salary: pos.岗位等级标签 === "基础岗" ? "5-10K" : pos.岗位等级标签 === "储备干部岗" ? "8-15K" : "10-20K", location: "苏州", updateTime: "2024-01-20", description: `负责${pos.岗位名称}相关工作`, requirements: [ `具备${pos.岗位名称}相关的专业知识和技能`, `熟悉${groupName}领域的业务流程和操作规范`, `具有良好的团队协作和沟通能力`, `能够独立完成岗位职责要求的各项工作` ] })), questions: [] // 暂时为空 }; industries.push(industry); industryIdCounter++; } // 生成按岗位群分组的resumeTemplates对象(关键修改) const resumeTemplates = {}; for (const [groupName, positions] of Object.entries(groupedData)) { resumeTemplates[groupName] = positions.map(item => ({ position: item.岗位名称, // 用于匹配的关键字段 positionTitle: item.岗位名称, level: item.岗位等级标签, avatar: item.简历头像url, department: item.简历岗位群, content: { original: item.简历内容, modified: item.简历内容 // 默认使用相同内容 }, projectName: item.对应项目案例名称, coreCompetencies: item["对应单元名称(复合能力课)"], verticalDirection: item.对应垂直方向, relatedUnits: item["关联单元名称(垂直能力课)"] })); } // 生成myResume数据 const myResume = { personal: { name: "张明", studentId: "2021001", className: "交通物流2101", majorName: "交通物流管理", avatar: "https://ddcz-1315997005.cos.ap-nanjing.myqcloud.com/static/img/butler_position_avatar/recuPFXZhkWje7.jpeg" }, resumes: [ { id: "resume_1", positionTitle: "仓储管理员", submitTime: "2024-01-15 10:30:00", status: "已通过", score: 92, feedback: "简历内容完整,专业技能描述清晰" } ] }; // 统计信息 console.log('数据结构修复完成:'); console.log(`- 岗位群数量:${Object.keys(resumeTemplates).length}`); console.log(`- 各岗位群包含的简历模板:`); Object.entries(resumeTemplates).forEach(([group, templates]) => { console.log(` ${group}: ${templates.length}个模板`); }); // 生成最终的mock文件内容 const mockFileContent = `// 交通物流产业数据 export const industries = ${JSON.stringify(industries, null, 2)}; // 按岗位群分组的简历模板 export const resumeTemplates = ${JSON.stringify(resumeTemplates, null, 2)}; export const myResume = ${JSON.stringify(myResume, null, 2)}; export const resumeInterviewMockData = { industries, resumeTemplates, myResume }; export function getMockPageData() { return resumeInterviewMockData; } `; // 备份原文件 const backupFileName = `src/mocks/resumeInterviewMock.js.backup_${new Date().toISOString().replace(/[:.]/g, '-')}`; fs.copyFileSync('src/mocks/resumeInterviewMock.js', backupFileName); console.log(`\n原文件已备份到: ${backupFileName}`); // 保存新的mock文件 fs.writeFileSync('src/mocks/resumeInterviewMock.js', mockFileContent, 'utf-8'); console.log('\n新的resumeInterviewMock.js已保存'); console.log('数据结构已修正为按岗位群分组的对象格式');