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

103 lines
3.4 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 calendarData = JSON.parse(
fs.readFileSync(path.join(__dirname, 'src/data/intelligentManufacturingCalendar.json'), 'utf-8')
);
// 财经商贸导师名单
const financeTeachers = ["刘红梅", "朱琳琳", "马国栋", "徐明辉"];
// 定义财经商贸相关单元名称列表
const financeUnits = [
"岗位体系认知",
"产业体系认知",
"财经商贸基础理论",
"商务洽谈与礼仪",
"市场营销",
"供应链管理",
"财务管理与会计核算",
"国际贸易与跨境电商",
"金融服务与投资",
"数字化商务应用",
"财经法规与合规",
"项目管理与商务策划",
"创新创业与商业模式",
"财经数据分析"
];
// 定义垂直方向单元
const verticalUnits = [
"职业规划课",
"国际贸易",
"供应链管理",
"电子商务",
"金融服务"
];
// 备份原文件
const backupPath = path.join(__dirname, 'src/data', `intelligentManufacturingCalendar.json.backup_${new Date().toISOString().replace(/[:.]/g, '-')}`);
fs.copyFileSync(
path.join(__dirname, 'src/data/intelligentManufacturingCalendar.json'),
backupPath
);
console.log(`备份已创建: ${backupPath}`);
// 更新数据
let teacherIndex = 0;
let updateCount = 0;
const updatedData = calendarData.map(item => {
// 检查是否是财经商贸相关课程
const isFinanceCourse =
financeUnits.includes(item["所属单元(个人课程)"]) ||
financeUnits.includes(item["所属单元(公共课)"]) ||
verticalUnits.includes(item["所属单元(个人课程)"]) ||
verticalUnits.includes(item["所属单元(公共课)"]);
// 检查是否有个人课程表内容(复合能力课)
const hasPersonalCourse = item["个人课程表"] && item["个人课程表"].trim() !== "";
// 如果是财经商贸相关的复合能力课或垂直课,分配财经商贸导师
if (isFinanceCourse && hasPersonalCourse && item["上课状态"] === "上课") {
// 根据垂直方向分配特定导师
let assignedTeacher;
const unit = item["所属单元(个人课程)"];
if (unit === "国际贸易" || unit === "财经商贸基础理论") {
assignedTeacher = "刘红梅"; // 国际贸易专家
} else if (unit === "供应链管理" || unit === "项目管理与商务策划") {
assignedTeacher = "朱琳琳"; // 供应链管理专家
} else if (unit === "电子商务" || unit === "数字化商务应用") {
assignedTeacher = "马国栋"; // 电子商务专家
} else if (unit === "金融服务" || unit === "金融服务与投资") {
assignedTeacher = "徐明辉"; // 金融服务专家
} else {
// 其他课程轮流分配
assignedTeacher = financeTeachers[teacherIndex % financeTeachers.length];
teacherIndex++;
}
item["导师姓名查询"] = assignedTeacher;
updateCount++;
console.log(`更新课程:${item["个人课程表"]} - 导师:${assignedTeacher}`);
}
// 公共课AI课程等保持原有导师不变
return item;
});
// 写入更新后的数据
fs.writeFileSync(
path.join(__dirname, 'src/data/intelligentManufacturingCalendar.json'),
JSON.stringify(updatedData, null, 2),
'utf-8'
);
console.log(`\n成功更新 ${updateCount} 门财经商贸课程的导师信息`);