import fs from 'fs'; // 读取财经商贸岗位简历.json const jobsData = JSON.parse(fs.readFileSync('网页未导入数据/财经商贸产业/财经商贸岗位简历.json', 'utf8')); // 创建岗位名称到等级的映射 const levelMapping = {}; jobsData.forEach(job => { levelMapping[job['岗位名称']] = job['岗位等级标签']; }); console.log('岗位等级映射:'); console.log(JSON.stringify(levelMapping, null, 2)); // 读取当前的项目库Mock数据 const mockFilePath = 'src/mocks/projectLibraryMock.js'; let mockContent = fs.readFileSync(mockFilePath, 'utf8'); // 提取projects数组 const projectsMatch = mockContent.match(/const projects = (\[[\s\S]*?\n\]);/); if (projectsMatch) { let projectsStr = projectsMatch[1]; // 手动更新每个岗位的等级 // 项目1的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "出口退税专员"/, '"level": "基础岗",\n "position": "出口退税专员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "国贸\/贸易储备干部"/, '"level": "储备干部岗",\n "position": "国贸/贸易储备干部"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "外贸业务员"/, '"level": "基础岗",\n "position": "外贸业务员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "外贸跟单员"/, '"level": "基础岗",\n "position": "外贸跟单员"'); projectsStr = projectsStr.replace(/"level": "储备干部岗",\s*"position": "外贸业务主管"/, '"level": "技术骨干岗",\n "position": "外贸业务主管"'); // 项目2的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "国际物流顾问"/, '"level": "技术骨干岗",\n "position": "国际物流顾问"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "国际货运代理"/, '"level": "技术骨干岗",\n "position": "国际货运代理"'); projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "国际物流专员"/, '"level": "基础岗",\n "position": "国际物流专员"'); // 项目3的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "进出口关务员"/, '"level": "基础岗",\n "position": "进出口关务员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "报关员"/, '"level": "基础岗",\n "position": "报关员"'); // 项目4的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "国际贸易专员"/, '"level": "基础岗",\n "position": "国际贸易专员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "报检员"/, '"level": "基础岗",\n "position": "报检员"'); projectsStr = projectsStr.replace(/"level": "储备干部岗",\s*"position": "报关查验主管"/, '"level": "技术骨干岗",\n "position": "报关查验主管"'); // 项目5的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "供应链专员"/, '"level": "基础岗",\n "position": "供应链专员"'); projectsStr = projectsStr.replace(/"level": "储备干部岗",\s*"position": "供应链经理"/, '"level": "储备干部岗",\n "position": "供应链经理"'); // 项目6的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "人力资源顾问"/, '"level": "基础岗",\n "position": "人力资源顾问"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "HRBP"/, '"level": "技术骨干岗",\n "position": "HRBP"'); // 项目7的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "采购专员"/, '"level": "基础岗",\n "position": "采购专员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "国际采购助理"/, '"level": "储备干部岗",\n "position": "国际采购助理"'); // 项目8的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "成本核算员"/, '"level": "基础岗",\n "position": "成本核算员"'); // 项目9的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "客户关系管理助理"/, '"level": "储备干部岗",\n "position": "客户关系管理助理"'); projectsStr = projectsStr.replace(/"level": "储备干部岗",\s*"position": "客户关系经理"/, '"level": "储备干部岗",\n "position": "客户关系经理"'); // 项目10的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "市场营销专员"/, '"level": "基础岗",\n "position": "市场营销专员"'); projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "市场推广专员"/, '"level": "基础岗",\n "position": "市场推广专员"'); // 项目11的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "电商推广专员"/, '"level": "基础岗",\n "position": "电商推广专员"'); projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "电商选品专员"/, '"level": "基础岗",\n "position": "电商选品专员"'); // 项目12的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "电商运营专员"/, '"level": "基础岗",\n "position": "电商运营专员"'); // 项目13的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "跨境电商运营助理"/, '"level": "基础岗",\n "position": "跨境电商运营助理"'); projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "跨境电商运营专员"/, '"level": "基础岗",\n "position": "跨境电商运营专员"'); // 项目14的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "跨境电商个人运营"/, '"level": "基础岗",\n "position": "跨境电商个人运营"'); projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "跨境电商供应链专员"/, '"level": "基础岗",\n "position": "跨境电商供应链专员"'); // 项目15的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "TikTok电商运营"/, '"level": "基础岗",\n "position": "TikTok电商运营"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "海外社交媒体运营"/, '"level": "基础岗",\n "position": "海外社交媒体运营"'); // 项目16的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "物流跟单专员"/, '"level": "基础岗",\n "position": "物流跟单专员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "贸易单证员"/, '"level": "基础岗",\n "position": "贸易单证员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "单证文员"/, '"level": "基础岗",\n "position": "单证文员"'); // 项目17的岗位 projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "金融数据处理专员"/, '"level": "基础岗",\n "position": "金融数据处理专员"'); projectsStr = projectsStr.replace(/"level": "储备干部岗",\s*"position": "金融科技产品经理"/, '"level": "储备干部岗",\n "position": "金融科技产品经理"'); // 项目18的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "投资管培生"/, '"level": "基础岗",\n "position": "投资管培生"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "证券经纪人"/, '"level": "技术骨干岗",\n "position": "证券经纪人"'); // 项目19的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "保险精算师"/, '"level": "技术骨干岗",\n "position": "保险精算师"'); projectsStr = projectsStr.replace(/"level": "储备干部岗",\s*"position": "保险产品经理助理"/, '"level": "储备干部岗",\n "position": "保险产品经理助理"'); projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "保险专员"/, '"level": "基础岗",\n "position": "保险专员"'); // 项目20的岗位 projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "财务管理培训生"/, '"level": "基础岗",\n "position": "财务管理培训生"'); projectsStr = projectsStr.replace(/"level": "技术骨干岗",\s*"position": "外汇专员"/, '"level": "基础岗",\n "position": "外汇专员"'); projectsStr = projectsStr.replace(/"level": "普通岗",\s*"position": "商务管理培训生"/, '"level": "基础岗",\n "position": "商务管理培训生"'); // 替换文件中的projects数组 mockContent = mockContent.replace(/const projects = \[[\s\S]*?\n\];/, `const projects = ${projectsStr};`); // 写回文件 fs.writeFileSync(mockFilePath, mockContent, 'utf8'); console.log('\n项目库岗位等级已更新完成!'); console.log('所有"普通岗"已替换为"基础岗"'); console.log('岗位等级已根据财经商贸岗位简历.json重新分配'); } else { console.error('无法找到projects数组!'); }