89 lines
2.8 KiB
JavaScript
89 lines
2.8 KiB
JavaScript
|
|
import fs from 'fs';
|
|||
|
|
import path from 'path';
|
|||
|
|
import { fileURLToPath } from 'url';
|
|||
|
|
|
|||
|
|
const __filename = fileURLToPath(import.meta.url);
|
|||
|
|
const __dirname = path.dirname(__filename);
|
|||
|
|
|
|||
|
|
// 读取导师信息文件
|
|||
|
|
const teacherInfoPath = path.join(__dirname, '网页未导入数据/导师信息(通用).json');
|
|||
|
|
const teacherInfo = JSON.parse(fs.readFileSync(teacherInfoPath, 'utf-8'));
|
|||
|
|
|
|||
|
|
// 提取公共课导师信息
|
|||
|
|
const publicTeachers = {};
|
|||
|
|
teacherInfo.forEach(teacher => {
|
|||
|
|
if (teacher['导师类型'] === '公共课导师') {
|
|||
|
|
const name = teacher['查询导师名称'];
|
|||
|
|
publicTeachers[name] = {
|
|||
|
|
name: name,
|
|||
|
|
introduction: teacher['导师介绍'],
|
|||
|
|
specialties: teacher['标签'] || [],
|
|||
|
|
avatar: teacher['导师头像'],
|
|||
|
|
type: '公共课导师'
|
|||
|
|
};
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
// 提取营销课导师信息
|
|||
|
|
const marketingTeachers = {};
|
|||
|
|
teacherInfo.forEach(teacher => {
|
|||
|
|
if (teacher['导师类型'] === '营销课老师') {
|
|||
|
|
const name = teacher['查询导师名称'];
|
|||
|
|
marketingTeachers[name] = {
|
|||
|
|
name: name,
|
|||
|
|
introduction: teacher['导师介绍'],
|
|||
|
|
specialties: teacher['标签'] || [],
|
|||
|
|
avatar: teacher['导师头像'],
|
|||
|
|
type: '营销课导师'
|
|||
|
|
};
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
console.log('找到的公共课导师:');
|
|||
|
|
Object.keys(publicTeachers).forEach(name => {
|
|||
|
|
console.log(` - ${name}`);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
console.log('\n找到的营销课导师:');
|
|||
|
|
Object.keys(marketingTeachers).forEach(name => {
|
|||
|
|
console.log(` - ${name}`);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
// 输出要添加到mockData.js的代码
|
|||
|
|
console.log('\n\n需要添加到mockData.js teacherData对象中的导师信息:\n');
|
|||
|
|
|
|||
|
|
// 输出公共课导师
|
|||
|
|
Object.entries(publicTeachers).forEach(([name, info]) => {
|
|||
|
|
console.log(` "${name}": {
|
|||
|
|
name: "${info.name}",
|
|||
|
|
introduction: "${info.introduction}",
|
|||
|
|
specialties: ${JSON.stringify(info.specialties, null, 0)},
|
|||
|
|
avatar: "${info.avatar}",
|
|||
|
|
type: "${info.type}",
|
|||
|
|
courses: []
|
|||
|
|
},`);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
// 输出营销课导师
|
|||
|
|
Object.entries(marketingTeachers).forEach(([name, info]) => {
|
|||
|
|
console.log(` "${name}": {
|
|||
|
|
name: "${info.name}",
|
|||
|
|
introduction: "${info.introduction}",
|
|||
|
|
specialties: ${JSON.stringify(info.specialties, null, 0)},
|
|||
|
|
avatar: "${info.avatar}",
|
|||
|
|
type: "${info.type}",
|
|||
|
|
courses: []
|
|||
|
|
},`);
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
// 还需要处理企业高管公开课和营销能力课的默认导师分配
|
|||
|
|
console.log('\n\n建议的导师分配逻辑修改:');
|
|||
|
|
console.log(`
|
|||
|
|
在generatePublicCourseLiveList函数中,修改第489和524行的teacherName分配逻辑:
|
|||
|
|
|
|||
|
|
1. 对于企业高管公开课(周伏波等导师):
|
|||
|
|
teacherName: event.teacher || (event['企业高管公开课'] ? '周伏波' : '孙应战'),
|
|||
|
|
|
|||
|
|
2. 对于营销能力课(使用何晓凯,他有营销经验):
|
|||
|
|
如果课程类型是营销能力课且没有导师,使用何晓凯作为默认导师
|
|||
|
|
`);
|