Files
online_sys/frontend_财经商贸/updateTeachers.js

64 lines
2.3 KiB
JavaScript
Raw Normal View History

import fs from 'fs';
import path from 'path';
import { fileURLToPath } from 'url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
// 读取导师信息(通用)数据
const allTeachersData = JSON.parse(
fs.readFileSync(path.join(__dirname, '网页未导入数据/导师信息(通用).json'), 'utf-8')
);
// 筛选财经商贸产业的导师
const financeTeachers = allTeachersData.filter(teacher => teacher["就业管家"] === "财经商贸");
// 创建财经商贸导师数据字符串,使用正确的格式
const financeTeachersText = financeTeachers.map(teacher => {
const teacherName = teacher["查询导师名称"];
return ` "${teacherName}": {
name: "${teacherName}",
introduction: "${teacher["导师介绍"]}",
specialties: ${JSON.stringify(teacher["导师特长"])},
avatar: "${teacher["导师头像url链接"]}",
type: "${teacher["导师类型"] === "任课老师" ? "复合课导师" : teacher["导师类型"]}",
verticalDirection: "${teacher["所属垂直方向"]}",
courses: []
}`;
}).join(',\n');
// 读取mockData.js文件
let mockDataContent = fs.readFileSync(path.join(__dirname, 'src/data/mockData.js'), 'utf-8');
// 备份原文件
const backupPath = path.join(__dirname, 'src/data', `mockData.js.backup_${new Date().toISOString().replace(/[:.]/g, '-')}`);
fs.copyFileSync(
path.join(__dirname, 'src/data/mockData.js'),
backupPath
);
console.log(`备份已创建: ${backupPath}`);
// 找到teacherData的位置在"李奇"导师后面添加财经商贸导师
const liQiPattern = /"": \{[^}]*\}/s;
const liQiMatch = mockDataContent.match(liQiPattern);
if (liQiMatch) {
// 在李奇导师后面添加财经商贸导师
const insertPosition = liQiMatch.index + liQiMatch[0].length;
const beforeContent = mockDataContent.substring(0, insertPosition);
const afterContent = mockDataContent.substring(insertPosition);
// 添加财经商贸导师
mockDataContent = beforeContent + ',\n' + financeTeachersText + afterContent;
// 写入更新后的文件
fs.writeFileSync(
path.join(__dirname, 'src/data/mockData.js'),
mockDataContent,
'utf-8'
);
console.log(`成功添加 ${financeTeachers.length} 位财经商贸导师`);
} else {
console.error('未找到李奇导师的位置,无法添加财经商贸导师');
}