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>
This commit is contained in:
69
frontend_大健康/removeDuplicates.js
Normal file
69
frontend_大健康/removeDuplicates.js
Normal file
@@ -0,0 +1,69 @@
|
||||
import fs from 'fs';
|
||||
|
||||
const content = fs.readFileSync('src/data/mockData.js', 'utf-8');
|
||||
const lines = content.split('\n');
|
||||
|
||||
// 要删除的重复函数及其行号范围
|
||||
const duplicatesToRemove = [
|
||||
{ name: 'generateCalendarDays', start: 6018 },
|
||||
{ name: 'getWeekDays', start: 6091 },
|
||||
{ name: 'calculateStageProgress', start: 6108 },
|
||||
{ name: 'getCurrentActiveStage', start: 6133 },
|
||||
{ name: 'checkMilestoneBlockage', start: 6149 },
|
||||
{ name: 'updateStageStatuses', start: 6182 },
|
||||
{ name: 'getOverallProgress', start: 6214 }
|
||||
];
|
||||
|
||||
// 找到每个函数的结束行
|
||||
duplicatesToRemove.forEach(func => {
|
||||
let braceCount = 0;
|
||||
let inFunction = false;
|
||||
|
||||
for (let i = func.start - 1; i < lines.length; i++) {
|
||||
const line = lines[i];
|
||||
|
||||
if (!inFunction && line.includes('export const ' + func.name)) {
|
||||
inFunction = true;
|
||||
}
|
||||
|
||||
if (inFunction) {
|
||||
// 计算大括号
|
||||
for (const char of line) {
|
||||
if (char === '{') braceCount++;
|
||||
if (char === '}') braceCount--;
|
||||
}
|
||||
|
||||
// 函数结束
|
||||
if (braceCount === 0 && line.includes('};')) {
|
||||
func.end = i + 1; // 行号(从1开始)
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
// 标记要删除的行
|
||||
const linesToDelete = new Set();
|
||||
duplicatesToRemove.forEach(func => {
|
||||
if (func.end) {
|
||||
for (let i = func.start; i <= func.end; i++) {
|
||||
linesToDelete.add(i);
|
||||
}
|
||||
console.log(`标记删除 ${func.name}: 行 ${func.start}-${func.end}`);
|
||||
}
|
||||
});
|
||||
|
||||
// 创建新内容,跳过标记的行
|
||||
const newLines = [];
|
||||
lines.forEach((line, index) => {
|
||||
const lineNum = index + 1;
|
||||
if (!linesToDelete.has(lineNum)) {
|
||||
newLines.push(line);
|
||||
}
|
||||
});
|
||||
|
||||
// 写入文件
|
||||
fs.writeFileSync('src/data/mockData.js', newLines.join('\n'));
|
||||
|
||||
console.log(`\n✅ 已删除 ${duplicatesToRemove.length} 个重复的函数`);
|
||||
console.log(`📄 文件已更新`);
|
||||
Reference in New Issue
Block a user