122 lines
9.8 KiB
JavaScript
122 lines
9.8 KiB
JavaScript
|
|
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数组!');
|
|||
|
|
}
|