Files
online_sys/frontend_智能开发/updateMyProjects.cjs
KQL a7242f0c69 Initial commit: 教务系统在线平台
- 包含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>
2025-12-12 18:16:55 +08:00

50 lines
1.6 KiB
JavaScript

const fs = require('fs');
// 读取学生完成的项目数据
const projectsData = JSON.parse(
fs.readFileSync('./网页未导入数据/学生完成的项目.json', 'utf-8')
);
// 筛选出智能开发产业的项目
const smartDevProjects = projectsData.filter(item =>
item['所属就业管家'] === '智能开发' &&
item['所属垂直方向'] === 'AI大前端'
);
// 转换为页面需要的格式
const myProjectsData = smartDevProjects.map(item => ({
unitName: item['单元名称查询'],
projects: item['AI项目名称'].filter(p => p && p.trim() !== '')
.map(p => {
// 去掉项目名称前面的序号
return p.replace(/^\d+\.\s*/, '');
})
}));
// 生成要替换的代码
const projectsCode = `const myProjectsData = ${JSON.stringify(myProjectsData, null, 2)};`;
// 读取原文件
const filePath = './src/pages/ProjectLibraryPage/index.jsx';
let fileContent = fs.readFileSync(filePath, 'utf-8');
// 备份原文件
const backupPath = `${filePath}.backup_myprojects_${new Date().toISOString().replace(/[:.]/g, '-')}`;
fs.writeFileSync(backupPath, fileContent);
console.log(`✅ 已创建备份:${backupPath}`);
// 替换myProjectsData数据
fileContent = fileContent.replace(
/const myProjectsData = \[\s*[\s\S]*?\];/,
projectsCode
);
// 写回文件
fs.writeFileSync(filePath, fileContent);
console.log('✅ 我的项目库数据更新完成!');
console.log(`共导入 ${myProjectsData.length} 个单元的项目数据`);
console.log('单元列表:');
myProjectsData.forEach((unit, index) => {
console.log(`${index + 1}. ${unit.unitName} (${unit.projects.length}个项目)`);
});