From 90ccaba1a358cf9d22132070fbbca6484dc237ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E8=AF=9A?= Date: Tue, 22 Apr 2025 17:33:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20ChineseNfoRegistry=20?= =?UTF-8?q?=E7=B1=BB=EF=BC=8C=E4=BC=98=E5=8C=96=E5=AD=A3=E8=8A=82=20NFO=20?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91=EF=BC=8C?= =?UTF-8?q?=E7=A7=BB=E9=99=A4=E4=B8=8D=E5=BF=85=E8=A6=81=E7=9A=84=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=88=9B=E5=BB=BA=E6=AD=A5=E9=AA=A4=EF=BC=8C=E5=A2=9E?= =?UTF-8?q?=E5=BC=BA=E5=AD=A3=E5=8F=B7=E9=AA=8C=E8=AF=81=E5=92=8C=E5=A4=84?= =?UTF-8?q?=E7=90=86=E7=9A=84=E5=87=86=E7=A1=AE=E6=80=A7=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Service/Jobs/ChineseNfoRegistry.cs | 39 ++++---------------------- 1 file changed, 6 insertions(+), 33 deletions(-) diff --git a/src/Service/Jobs/ChineseNfoRegistry.cs b/src/Service/Jobs/ChineseNfoRegistry.cs index 33b018b..de9f03b 100644 --- a/src/Service/Jobs/ChineseNfoRegistry.cs +++ b/src/Service/Jobs/ChineseNfoRegistry.cs @@ -122,47 +122,20 @@ public class ChineseNfoRegistry : Registry, IChineseNfoRegistry continue; } - var seasonNfos = Directory.GetFiles(Path.GetDirectoryName(tv) ?? string.Empty, "season.nfo", SearchOption.AllDirectories); + var sseasons = Directory.GetDirectories(Path.GetDirectoryName(tv) ?? string.Empty, "Season *", SearchOption.AllDirectories); + var sseasonsNumbers = sseasons.Select(x => x.Split("Season ", StringSplitOptions.None)[1]).Select(int.Parse).ToList(); - // 如果seasonNfos为空,则创建 - if (seasonNfos.Length == 0) + foreach (var seasonNumber in sseasonsNumbers) { - var sseasons = Directory.GetDirectories(Path.GetDirectoryName(tv) ?? string.Empty, "Season *", SearchOption.AllDirectories); + ctn.seasonNfoPath = Path.Combine(Path.GetDirectoryName(tv) ?? string.Empty, $"Season {seasonNumber}", "season.nfo"); - var sseasonsNumbers = sseasons.Select(x => x.Split("Season ", StringSplitOptions.None)[1]).Select(int.Parse).ToList(); - - foreach (var seasonNumber in sseasonsNumbers) - { - var seasonNfo = Path.Combine(Path.GetDirectoryName(tv) ?? string.Empty, $"Season {seasonNumber}", "season.nfo"); - - await File.WriteAllTextAsync(seasonNfo, string.Format( -""" - - - - - - {0} - -""" - , seasonNumber) - ); - - seasonNfos = seasonNfos.Append(seasonNfo).ToArray(); - } - } - - foreach (var season in seasonNfos) - { - ctn.seasonNfoPath = season; - - if (await HandleSeason() == false) + if (File.Exists(ctn.seasonNfoPath) && await HandleSeason() == false) { continue; } var episodeNfos = Directory - .GetFiles(Path.GetDirectoryName(season) ?? string.Empty, "*.nfo", SearchOption.AllDirectories) + .GetFiles(Path.GetDirectoryName(ctn.seasonNfoPath) ?? string.Empty, "*.nfo", SearchOption.AllDirectories) .Where(x => !x.EndsWith("season.nfo")) .ToList();