diff --git a/IRaCIS.Core.Application/Service/Common/TrialImageDownloadService.cs b/IRaCIS.Core.Application/Service/Common/TrialImageDownloadService.cs index 7d83f1aca..67654aa39 100644 --- a/IRaCIS.Core.Application/Service/Common/TrialImageDownloadService.cs +++ b/IRaCIS.Core.Application/Service/Common/TrialImageDownloadService.cs @@ -1611,13 +1611,21 @@ namespace IRaCIS.Core.Application.Service continue; } - restoreCount++; - Console.WriteLine($"恢复SOPInstanceUID{sopInstanceUid},当前数量{restoreCount}"); var fileSize = new FileInfo(dicomFilePath).Length; - await ArchiveDicomFileAsync(dicomFile, trialId, item.SubjectId, item.SubjectVisitId, item.Key, fileSize); + var isInstanceNeedAdd = await ArchiveDicomFileAsync(dicomFile, trialId, item.SubjectId, item.SubjectVisitId, item.Key, fileSize); + + + if (isInstanceNeedAdd == false) + { + continue; + } + + restoreCount++; + + Console.WriteLine($"恢复SOPInstanceUID{sopInstanceUid},实际恢复当前数量{restoreCount}"); #endregion @@ -1717,7 +1725,7 @@ namespace IRaCIS.Core.Application.Service /// /// /// - public async Task ArchiveDicomFileAsync(DicomFile dicomFile, Guid trialId, Guid subjectId, Guid subjectVisitId, string path, long fileSize) + public async Task ArchiveDicomFileAsync(DicomFile dicomFile, Guid trialId, Guid subjectId, Guid subjectVisitId, string path, long fileSize) { var dataset = dicomFile.Dataset; @@ -1854,6 +1862,7 @@ namespace IRaCIS.Core.Application.Service await _instanceRepository.AddAsync(findInstance); } + return isInstanceNeedAdd; } }