From 35cac0d7e972619f592020d07a7fed185d76795b Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Mon, 23 Oct 2023 13:55:19 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=AF=B9=E6=8E=A5=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E6=A3=80=E6=9F=A5Code?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Third-partyProject/DTO/UltrasonicDicomViewModel.cs | 6 ++++++ .../Service/Third-partyProject/UltrasonicDicomService.cs | 4 ++-- IRaCIS.Core.Domain/Image/DicomInstance.cs | 4 ++++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs b/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs index a59bc54b2..3d5b5abea 100644 --- a/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs +++ b/IRaCIS.Core.Application/Service/Third-partyProject/DTO/UltrasonicDicomViewModel.cs @@ -117,6 +117,12 @@ namespace IRaCIS.Core.Application.Service.Third_partyProject.DTO public string Modality { get; set; } } + public class InstancePathDTO + { + public string StudyCode { get; set; } + public string InstancePath { get; set; } + } + } diff --git a/IRaCIS.Core.Application/Service/Third-partyProject/UltrasonicDicomService.cs b/IRaCIS.Core.Application/Service/Third-partyProject/UltrasonicDicomService.cs index 51fb1ceea..b030987e2 100644 --- a/IRaCIS.Core.Application/Service/Third-partyProject/UltrasonicDicomService.cs +++ b/IRaCIS.Core.Application/Service/Third-partyProject/UltrasonicDicomService.cs @@ -192,9 +192,9 @@ namespace IRaCIS.Core.Application.Service.Third_partyProject /// /// [HttpPost] - public async Task> GetStudyModalityOSSPath(List seriesIdList, [FromServices] IRepository _dicomSeriesRepository) + public async Task> GetStudyModalityOSSPath(List seriesIdList, [FromServices] IRepository _dicomSeriesRepository) { - return await _dicomSeriesRepository.Where(t => seriesIdList.Contains(t.Id)).SelectMany(t => t.DicomInstanceList).Select(t => t.Path).ToListAsync(); + return await _dicomSeriesRepository.Where(t => seriesIdList.Contains(t.Id)).SelectMany(t => t.DicomInstanceList).Select(t => new InstancePathDTO() {InstancePath= t.Path,StudyCode=t.DicomStudy.StudyCode } ).ToListAsync(); } diff --git a/IRaCIS.Core.Domain/Image/DicomInstance.cs b/IRaCIS.Core.Domain/Image/DicomInstance.cs index a05f3bbf0..bce1777cf 100644 --- a/IRaCIS.Core.Domain/Image/DicomInstance.cs +++ b/IRaCIS.Core.Domain/Image/DicomInstance.cs @@ -11,6 +11,10 @@ namespace IRaCIS.Core.Domain.Models [ForeignKey("SeriesId")] public DicomSeries DicomSerie { get; set; } + [JsonIgnore] + [ForeignKey("StudyId")] + public DicomStudy DicomStudy { get; set; } + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] public Guid SeqId { get; set; } From 66b9f2dd5c5424527885c29d86476b1212593761 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Mon, 23 Oct 2023 16:07:44 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=B8=8B=E8=BD=BD=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/UploadDownLoadController.cs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs index 7b48775da..5ef44eb2c 100644 --- a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs +++ b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs @@ -856,7 +856,18 @@ namespace IRaCIS.Core.API.Controllers _userInfo = userInfo; } + /// 通用文件下载 + [AllowAnonymous] + [HttpGet("CommonDocument/DownloadCommonDoc")] + public async Task DownloadCommonFile(string code, [FromServices] IRepository _commonDocumentRepository) + { + var (filePath, fileName) = await FileStoreHelper.GetCommonDocPhysicalFilePathAsync(_hostEnvironment, _commonDocumentRepository, code); + new FileExtensionContentTypeProvider().Mappings.TryGetValue(Path.GetExtension(filePath), out var contentType); + + return File(System.IO.File.OpenRead(filePath), contentType ?? "application/octet-stream", fileName); + + } /// /// 上传通用文档 比如一致性核查的 比如导出的excel 模板