import fs from 'fs'; // 读取交通物流岗位简历数据 const trafficLogisticsData = JSON.parse(fs.readFileSync('网页未导入数据/交通物流产业/交通物流岗位简历.json', 'utf-8')); // 按等级分组 const jobLevelData = { code: 200, message: "操作成功", data: { high: { name: "储备干部岗", list: [] }, middle: { name: "技术骨干岗", list: [] }, ordinary: { name: "基础岗", list: [] } } }; // 遍历数据,按等级分组 trafficLogisticsData.forEach((item, index) => { const record = { record_id: `traffic_logistics_${index + 1}`, position_name: item.岗位名称, img: item.简历头像url }; // 根据岗位等级标签分配到对应的级别 switch(item.岗位等级标签) { case "储备干部岗": jobLevelData.data.high.list.push(record); break; case "技术骨干岗": jobLevelData.data.middle.list.push(record); break; case "基础岗": case "普通岗": default: jobLevelData.data.ordinary.list.push(record); break; } }); // 统计信息 console.log('生成的joblevel.json统计:'); console.log(`- 储备干部岗: ${jobLevelData.data.high.list.length}个岗位`); console.log(`- 技术骨干岗: ${jobLevelData.data.middle.list.length}个岗位`); console.log(`- 基础岗: ${jobLevelData.data.ordinary.list.length}个岗位`); console.log(`- 总计: ${trafficLogisticsData.length}个岗位`); // 备份原文件 const backupFileName = `src/data/joblevel.json.backup_${new Date().toISOString().replace(/[:.]/g, '-')}`; try { const originalData = fs.readFileSync('src/data/joblevel.json', 'utf-8'); fs.writeFileSync(backupFileName, originalData); console.log(`\n原文件已备份到: ${backupFileName}`); } catch (error) { console.log('备份原文件失败:', error.message); } // 保存新的joblevel.json fs.writeFileSync('src/data/joblevel.json', JSON.stringify(jobLevelData, null, 4), 'utf-8'); console.log('\n新的joblevel.json已保存'); // 同时更新resumeInterviewMock.js中的简历内容格式 console.log('\n正在更新简历模板格式...'); // 生成更新后的resumeTemplates,确保content字段格式正确 const updatedResumeTemplates = trafficLogisticsData.map(item => ({ positionTitle: item.岗位名称, position: item.岗位名称, // 添加position字段用于匹配 level: item.岗位等级标签, avatar: item.简历头像url, department: item.简历岗位群, content: { original: item.简历内容, modified: item.简历内容 // 默认使用相同内容 }, projectName: item.对应项目案例名称, coreCompetencies: item["对应单元名称(复合能力课)"], verticalDirection: item.对应垂直方向, relatedUnits: item["关联单元名称(垂直能力课)"] })); // 读取现有的resumeInterviewMock.js文件 const mockFileContent = fs.readFileSync('src/mocks/resumeInterviewMock.js', 'utf-8'); // 找到resumeTemplates的位置并替换 const newMockContent = mockFileContent.replace( /export const resumeTemplates = \[[\s\S]*?\];/, `export const resumeTemplates = ${JSON.stringify(updatedResumeTemplates, null, 2)};` ); // 保存更新后的mock文件 fs.writeFileSync('src/mocks/resumeInterviewMock.js', newMockContent, 'utf-8'); console.log('resumeInterviewMock.js已更新,简历content格式已修正');