From 0475b9891c13daaed9748c52e4d39acac4e5dcf0 Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Thu, 24 Jul 2025 17:29:17 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=90=8E=E5=A4=84=E7=90=86=E9=98=85?= =?UTF-8?q?=E7=89=87=E6=95=B0=E9=87=8F-1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/ImageAndDoc/DownloadAndUploadService.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs index 747214ce8..73ff52173 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs @@ -194,6 +194,9 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc InstanceCount = t.InstanceCount, Modalities = t.Modalities, SeriesCount = t.SeriesCount, + + ReadingInstanceCount=t.InstanceList.Where(t=>t.IsReading && t.DicomSerie.IsReading).Count(), + ReadingSeriesCount= t.SeriesList.Where(t => t.IsReading).Count(), }).ToList(), UploadStudyList = u.TaskStudyList.Select(t => new StudyBasicInfo() @@ -213,6 +216,9 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc SopInstanceUidList = t.InstanceList.Select(t => t.SopInstanceUid).ToList(), + ReadingInstanceCount = t.InstanceCount, + ReadingSeriesCount = t.SeriesCount, + }).ToList() }) ; @@ -723,7 +729,9 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc FileName = t.FileName, FileSize = t.FileSize, Path = t.Path - }).ToList() + }).ToList(), + + ReadingFileCount= ns.FileCount, }; From 1f8f3242b5369916ef0c4bc7394a79889bd521ce Mon Sep 17 00:00:00 2001 From: hang <872297557@qq.com> Date: Fri, 25 Jul 2025 10:30:31 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=8F=96tag=20=E5=81=9A=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRC.Core.SCP/Service/CStoreSCPService.cs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/IRC.Core.SCP/Service/CStoreSCPService.cs b/IRC.Core.SCP/Service/CStoreSCPService.cs index 1fdecfc21..bb9d2571f 100644 --- a/IRC.Core.SCP/Service/CStoreSCPService.cs +++ b/IRC.Core.SCP/Service/CStoreSCPService.cs @@ -21,6 +21,7 @@ using FellowOakDicom.Imaging; using SharpCompress.Common; using SixLabors.ImageSharp.Formats.Jpeg; using IRaCIS.Core.Infrastructure; +using IRaCIS.Core.Infrastructure.Extention; namespace IRaCIS.Core.SCP.Service { @@ -258,9 +259,16 @@ namespace IRaCIS.Core.SCP.Service public async Task OnCStoreRequestAsync(DicomCStoreRequest request) { - string studyInstanceUid = request.Dataset.GetString(DicomTag.StudyInstanceUID); - string seriesInstanceUid = request.Dataset.GetString(DicomTag.SeriesInstanceUID); - string sopInstanceUid = request.Dataset.GetString(DicomTag.SOPInstanceUID); + string studyInstanceUid = request.Dataset.GetSingleValueOrDefault(DicomTag.StudyInstanceUID,string.Empty); + string seriesInstanceUid = request.Dataset.GetSingleValueOrDefault(DicomTag.SeriesInstanceUID, string.Empty); + string sopInstanceUid = request.Dataset.GetSingleValueOrDefault(DicomTag.SOPInstanceUID, string.Empty); + + if(studyInstanceUid.IsNullOrEmpty() || seriesInstanceUid.IsNullOrEmpty() || sopInstanceUid.IsNullOrEmpty()) + { + Log.Logger.Error($"接收数据读取StudyInstanceUID:{studyInstanceUid}、SeriesInstanceUID:{seriesInstanceUid}、SOPInstanceUID:{sopInstanceUid}有空 "); + + return new DicomCStoreResponse(request, DicomStatus.Success); + } //Guid studyId = IdentifierHelper.CreateGuid(studyInstanceUid, trialId.ToString()); Guid seriesId = IdentifierHelper.CreateGuid(studyInstanceUid, seriesInstanceUid, _trialId.ToString());