# ===================================================== # Tüm projede Kurs -> Erp dönüştürme scripti # (Klasör, dosya, namespace, sln, csproj, json vs.) # ===================================================== $basePath = "D:\Sozsoft\kurs-platform\api" $oldPrefixes = @("Kurs.Platform", "Kurs.") $newPrefixes = @("Erp.Platform", "Erp.") Write-Host "=====================================================" -ForegroundColor Cyan Write-Host "KURS → ERP TAM DÖNÜŞÜM BAŞLATILDI" -ForegroundColor Cyan Write-Host "Kök dizin: $basePath" Write-Host "=====================================================" -ForegroundColor Cyan Write-Host "" foreach ($i in 0..($oldPrefixes.Count - 1)) { $old = $oldPrefixes[$i] $new = $newPrefixes[$i] Write-Host "🔹 Değişim: $old → $new" -ForegroundColor Yellow # 1️⃣ Namespace, using ve genel metin dosyalarındaki içerik değişimi Write-Host "➡ Metin tabanlı dosyalarda içerik güncelleniyor..." -ForegroundColor Yellow $textExtensions = @("*.cs","*.csproj","*.sln","*.json","*.props","*.xml","*.config","*.dockerfile","*.md","*.ps1","*.yml","*.yaml") Get-ChildItem -Path $basePath -Recurse -Include $textExtensions -ErrorAction SilentlyContinue | ForEach-Object { try { $content = Get-Content $_.FullName -Raw $updated = $content.Replace($old, $new) if ($content -ne $updated) { $updated | Set-Content -Path $_.FullName -Force -Encoding UTF8 Write-Host "✔ İçerik güncellendi: $($_.FullName)" -ForegroundColor Green } } catch { Write-Host "⚠ Dosya atlandı (kilitli): $($_.FullName)" -ForegroundColor Yellow } } # 2️⃣ Dosya adlarını güncelle Write-Host "➡ Dosya adları güncelleniyor..." -ForegroundColor Yellow Get-ChildItem -Path $basePath -Recurse -File -ErrorAction SilentlyContinue | Where-Object { $_.Name -like "$($old)*" } | ForEach-Object { $newName = $_.Name.Replace($old, $new) try { Rename-Item -Path $_.FullName -NewName $newName -ErrorAction Stop Write-Host "✔ Dosya adı değişti: $($_.Name) -> $newName" -ForegroundColor Cyan } catch { Write-Host "⚠ Dosya atlandı: $($_.Name)" -ForegroundColor Yellow } } # 3️⃣ Klasör adlarını değiştir (gerçek rename) Write-Host "➡ Klasör adları değiştiriliyor..." -ForegroundColor Yellow Get-ChildItem -Path $basePath -Directory -Recurse -ErrorAction SilentlyContinue | Sort-Object FullName -Descending | ForEach-Object { $folderName = Split-Path $_.FullName -Leaf if ($folderName -like "$($old)*") { $newName = $folderName.Replace($old, $new) $parent = Split-Path $_.FullName -Parent $targetPath = Join-Path $parent $newName try { if (-not (Test-Path $targetPath)) { Move-Item -Path $_.FullName -Destination $targetPath -Force Write-Host "✔ Klasör yeniden adlandırıldı: $folderName -> $newName" -ForegroundColor Magenta } else { Write-Host "⚠ Atlandı (hedef zaten var): $targetPath" -ForegroundColor Yellow } } catch { Write-Host "⚠ Klasör atlandı: $folderName" -ForegroundColor Red } } } } Write-Host "" Write-Host "=====================================================" -ForegroundColor Cyan Write-Host "✅ TÜM DÖNÜŞÜM TAMAMLANDI — KURS → ERP" -ForegroundColor Green Write-Host "=====================================================" -ForegroundColor Cyan