Files
online_sys/frontend_大健康/updateDashboardTasks.js
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

58 lines
2.2 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import fs from 'fs';
// 读取生成的任务数据
const tasksData = JSON.parse(fs.readFileSync('dashboardTasksData.json', 'utf-8'));
// 读取mockData.js
let mockDataContent = fs.readFileSync('src/data/mockData.js', 'utf-8');
// 找到任务数据更新的位置
// 查找 mockData.dashboardStatistics.tasks = { 的位置
const tasksPattern = /mockData\.dashboardStatistics\.tasks = \{[\s\S]*?\};/;
const tasksMatch = mockDataContent.match(tasksPattern);
if (tasksMatch) {
// 生成weekTasks本周任务
const weekStart = new Date();
weekStart.setDate(weekStart.getDate() - weekStart.getDay());
weekStart.setHours(0, 0, 0, 0);
const weekEnd = new Date(weekStart);
weekEnd.setDate(weekEnd.getDate() + 6);
const weekTasks = tasksData.allTasks.filter(task => {
const taskDate = new Date(task.date);
return taskDate >= weekStart && taskDate <= weekEnd;
});
// 构建新的tasks对象
const newTasks = `mockData.dashboardStatistics.tasks = {
todayTasks: ${JSON.stringify(tasksData.todayTasks, null, 4).split('\n').map((line, i) => i === 0 ? line : ' ' + line).join('\n')},
weekTasks: ${JSON.stringify(weekTasks.slice(0, 5), null, 4).split('\n').map((line, i) => i === 0 ? line : ' ' + line).join('\n')},
allTasks: ${JSON.stringify(tasksData.allTasks, null, 4).split('\n').map((line, i) => i === 0 ? line : ' ' + line).join('\n')}
};`;
// 替换原有的tasks数据
mockDataContent = mockDataContent.replace(tasksPattern, newTasks);
// 写回文件
fs.writeFileSync('src/data/mockData.js', mockDataContent);
console.log('✅ mockData.js中的tasks数据已更新');
console.log(`📝 今日任务: ${tasksData.todayTasks.length}`);
console.log(`📅 本周任务: ${weekTasks.length}`);
console.log(`📋 总任务: ${tasksData.allTasks.length}`);
// 验证今日任务
if (tasksData.todayTasks.length > 0) {
console.log('\n今日任务详情');
tasksData.todayTasks.forEach(task => {
console.log(` - ${task.title}`);
console.log(` 课程:${task.courseName}`);
console.log(` 讲师:${task.teacher}`);
console.log(` 状态:${task.status}`);
});
}
} else {
console.error('❌ 无法找到tasks数据的位置');
}