- 包含4个产业方向的前端项目:智能开发、智能制造、大健康、财经商贸 - 已清理node_modules、.yoyo等大文件,项目大小从2.6GB优化至631MB - 配置完善的.gitignore文件 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
105 lines
3.2 KiB
JavaScript
105 lines
3.2 KiB
JavaScript
const fs = require('fs');
|
||
|
||
// 读取智能开发岗位面试状态数据
|
||
const interviewStatusData = JSON.parse(
|
||
fs.readFileSync('./网页未导入数据/智能开发产业/智能开发岗位面试状态.json', 'utf-8')
|
||
);
|
||
|
||
console.log(`找到 ${interviewStatusData.length} 个岗位面试状态记录`);
|
||
|
||
// 转换为页面需要的格式
|
||
const transformedStatus = interviewStatusData.map((status, index) => {
|
||
// 根据流程标签和内容生成更详细的面试状态描述
|
||
let statusText = status['内容'];
|
||
|
||
// 根据不同的流程标签,生成更友好的状态文本
|
||
switch(status['流程标签']) {
|
||
case '简历投递':
|
||
statusText = `简历已投递,${status['内容']}`;
|
||
break;
|
||
case '简历通过':
|
||
statusText = `简历审核通过,${status['内容']}`;
|
||
break;
|
||
case '简历未通过':
|
||
statusText = `简历未通过审核,${status['内容']}`;
|
||
break;
|
||
case '面试日期':
|
||
statusText = `面试时间:${status['流程时间']},${status['内容']}`;
|
||
break;
|
||
case '面试完成':
|
||
statusText = `面试已完成,${status['内容']}`;
|
||
break;
|
||
case '面试通过':
|
||
statusText = `面试已通过,${status['内容']}`;
|
||
break;
|
||
case '面试日期已过':
|
||
statusText = `${status['内容']}`;
|
||
break;
|
||
case '收到Offer':
|
||
statusText = `已收到Offer,请于2天内答复`;
|
||
break;
|
||
case '简历接收':
|
||
statusText = `简历已接收,${status['内容']}`;
|
||
break;
|
||
default:
|
||
statusText = status['内容'];
|
||
}
|
||
|
||
// 构建阶段日期显示
|
||
let stageDate = '';
|
||
switch(status['岗位内推流程']) {
|
||
case '简历投递':
|
||
stageDate = `简历投递:${status['流程时间']}`;
|
||
break;
|
||
case 'HR评估':
|
||
stageDate = `HR评估:${status['流程时间']}`;
|
||
break;
|
||
case '面试':
|
||
stageDate = `面试阶段:${status['流程时间']}`;
|
||
break;
|
||
case '面试结果':
|
||
stageDate = `面试结果:${status['流程时间']}`;
|
||
break;
|
||
case 'Offer':
|
||
stageDate = `收到Offer:${status['流程时间']}`;
|
||
break;
|
||
default:
|
||
stageDate = `${status['岗位内推流程']}:${status['流程时间']}`;
|
||
}
|
||
|
||
return {
|
||
"查询岗位名称": status['查询岗位名称'],
|
||
"阶段日期": stageDate,
|
||
"面试状态": statusText,
|
||
"流程标签": status['流程标签'],
|
||
"截止日期": status['查询_截止日期']
|
||
};
|
||
});
|
||
|
||
// 写入文件
|
||
fs.writeFileSync(
|
||
'./src/data/interviewStatus.json',
|
||
JSON.stringify(transformedStatus, null, 2),
|
||
'utf-8'
|
||
);
|
||
|
||
console.log('✅ 面试状态数据更新成功!');
|
||
console.log(`- 共更新 ${transformedStatus.length} 个面试状态记录`);
|
||
|
||
// 统计各种状态
|
||
const statusCount = {};
|
||
transformedStatus.forEach(item => {
|
||
const label = item['流程标签'];
|
||
statusCount[label] = (statusCount[label] || 0) + 1;
|
||
});
|
||
|
||
console.log('\n流程标签统计:');
|
||
Object.entries(statusCount).forEach(([label, count]) => {
|
||
console.log(` ${label}: ${count}个`);
|
||
});
|
||
|
||
// 输出前5个示例
|
||
console.log('\n面试状态示例:');
|
||
transformedStatus.slice(0, 5).forEach((status, index) => {
|
||
console.log(` ${index + 1}. ${status['查询岗位名称']} - ${status['流程标签']} - ${status['面试状态']}`);
|
||
}); |