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

48 lines
1.8 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);
// 读取mockData.js文件
const mockDataPath = path.join(__dirname, 'src/data/mockData.js');
let mockDataContent = fs.readFileSync(mockDataPath, 'utf-8');
// 备份原文件
const backupPath = path.join(__dirname, 'src/data', `mockData.js.backup_${new Date().toISOString().replace(/[:.]/g, '-')}`);
fs.copyFileSync(mockDataPath, backupPath);
console.log(`备份已创建: ${backupPath}`);
// 在文件末尾export之前添加profileOverview.ranking引用
const exportIndex = mockDataContent.lastIndexOf('export default mockData');
if (exportIndex > -1) {
// 检查是否已经存在profileOverview.ranking的引用
if (!mockDataContent.includes('mockData.profileOverview.ranking')) {
const insertContent = `
// 确保profileOverview使用相同的ranking数据
if (mockData.profileOverview) {
mockData.profileOverview.ranking = mockData.ranking;
}
`;
// 在export语句之前插入
mockDataContent = mockDataContent.slice(0, exportIndex) + insertContent + '\n' + mockDataContent.slice(exportIndex);
console.log('✅ 成功添加profileOverview.ranking引用');
} else {
console.log('profileOverview.ranking引用已存在跳过添加');
}
// 写入更新后的文件
fs.writeFileSync(mockDataPath, mockDataContent, 'utf-8');
console.log('\n数据同步完成:');
console.log('- Dashboard班级排名: mockData.dashboardStatistics.ranking');
console.log('- 个人档案班级排名: mockData.profileOverview.ranking');
console.log('- 弹窗班级排名: mockData.ranking');
console.log('所有三处现在使用相同的ranking数据源');
} else {
console.error('未找到export语句');
}