From 3fdfb3cc4bce6916ba5c009b371853b6f93ea915 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Fri, 5 Jun 2026 11:44:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=AD=A3=E5=B8=B8=E5=8E=8B?= =?UTF-8?q?=E7=BC=A9=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/UploadDownLoadController.cs | 32 ++++++++++++------- .../IRaCIS.Core.Application.xml | 6 ++-- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs index d50f6d289..8ebbaec06 100644 --- a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs +++ b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs @@ -1353,24 +1353,28 @@ namespace IRaCIS.Core.API.Controllers foreach (var item in criterion.ReadingReportAndImageList) { - abortToken.ThrowIfCancellationRequested(); var folderName = $"{criterionFolderName}/{SanitizePathSegment(item.SubjectCode, "UnknownSubject")}_{SanitizePathSegment(item.VisitName, "UnknownVisit")}"; foreach (var reportUrl in item.ReportUrlList.Where(x => !string.IsNullOrWhiteSpace(x))) { - abortToken.ThrowIfCancellationRequested(); try { var fileName = GetEntryFileName(reportUrl, "Report", existingEntryPaths.Count + 1); var entryPath = BuildUniqueEntryPath(existingEntryPaths, folderName, fileName); - var entry = zip.CreateEntry(entryPath, CompressionLevel.Fastest); - await using var entryStream = entry.Open(); - await using var source = await _oSSService.GetStreamFromOSSAsync(reportUrl); - await source.CopyToAsync(entryStream, 32 * 1024, abortToken); + await using (var source = await _oSSService.GetStreamFromOSSAsync(reportUrl)) + { + var entry = zip.CreateEntry(entryPath, CompressionLevel.Fastest); + + await using var entryStream = entry.Open(); + + await source.CopyToAsync(entryStream, 32 * 1024, abortToken); + + } + } catch (Exception ex) { @@ -1380,17 +1384,23 @@ namespace IRaCIS.Core.API.Controllers foreach (var imageUrl in item.ImageUrlList.Where(x => !string.IsNullOrWhiteSpace(x))) { - abortToken.ThrowIfCancellationRequested(); try { var fileName = GetEntryFileName(imageUrl, "Image", existingEntryPaths.Count + 1); var entryPath = BuildUniqueEntryPath(existingEntryPaths, folderName, fileName); - var entry = zip.CreateEntry(entryPath, CompressionLevel.Fastest); - await using var entryStream = entry.Open(); - await using var source = await _oSSService.GetStreamFromOSSAsync(imageUrl); - await source.CopyToAsync(entryStream, 32 * 1024, abortToken); + + await using (var source = await _oSSService.GetStreamFromOSSAsync(imageUrl)) + { + var entry = zip.CreateEntry(entryPath, CompressionLevel.Fastest); + + await using var entryStream = entry.Open(); + + await source.CopyToAsync(entryStream, 32 * 1024, abortToken); + + } + } catch (Exception ex) { diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index ea4918a9e..81f9c7004 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -14978,17 +14978,17 @@ - ���� + 质疑 - һ���Ժ˲� + 一致性核查 - ���� + 复制