From 0acb7ca987600c4f99052ac5541297f7c34cf3ba Mon Sep 17 00:00:00 2001
From: hang <872297557@qq.com>
Date: Mon, 26 Aug 2024 15:35:02 +0800
Subject: [PATCH] =?UTF-8?q?=E5=BD=B1=E5=83=8F=E4=B8=8A=E4=BC=A0=E5=A2=9E?=
=?UTF-8?q?=E5=8A=A0=E6=96=87=E4=BB=B6=E5=A4=A7=E5=B0=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
IRC.Core.SCP/Service/CStoreSCPService.cs | 2 +-
IRC.Core.SCP/Service/DicomArchiveService.cs | 10 +++++++---
IRC.Core.SCP/Service/Interface/IDicomArchiveService.cs | 2 +-
.../Controllers/UploadDownLoadController.cs | 4 ++--
.../Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs | 6 ++++--
.../{QC => ImageAndDoc}/NoneDicomStudyService.cs | 0
IRaCIS.Core.Domain/Image/DicomInstance.cs | 2 ++
IRaCIS.Core.Domain/Image/DicomStudy.cs | 2 ++
IRaCIS.Core.Domain/Image/DicomStudyMonitor.cs | 2 +-
.../{QC/NoneDicom => Image}/NoneDicomStudy.cs | 0
.../{QC/NoneDicom => Image}/NoneDicomStudyFile.cs | 2 ++
IRaCIS.Core.Domain/Image/SCPInstance.cs | 2 ++
IRaCIS.Core.Domain/Image/TaskInstance.cs | 2 ++
13 files changed, 26 insertions(+), 10 deletions(-)
rename IRaCIS.Core.Application/Service/{QC => ImageAndDoc}/NoneDicomStudyService.cs (100%)
rename IRaCIS.Core.Domain/{QC/NoneDicom => Image}/NoneDicomStudy.cs (100%)
rename IRaCIS.Core.Domain/{QC/NoneDicom => Image}/NoneDicomStudyFile.cs (95%)
diff --git a/IRC.Core.SCP/Service/CStoreSCPService.cs b/IRC.Core.SCP/Service/CStoreSCPService.cs
index 6cfb381ad..86c09af4e 100644
--- a/IRC.Core.SCP/Service/CStoreSCPService.cs
+++ b/IRC.Core.SCP/Service/CStoreSCPService.cs
@@ -301,7 +301,7 @@ namespace IRaCIS.Core.SCP.Service
{
try
{
- var scpStudyId = await dicomArchiveService.ArchiveDicomFileAsync(request.Dataset, _trialId, _trialSiteId, storeRelativePath, Association.CallingAE, Association.CalledAE);
+ var scpStudyId = await dicomArchiveService.ArchiveDicomFileAsync(request.Dataset, _trialId, _trialSiteId, storeRelativePath, Association.CallingAE, Association.CalledAE,fileSize);
if (!_SCPStudyIdList.Contains(scpStudyId))
{
diff --git a/IRC.Core.SCP/Service/DicomArchiveService.cs b/IRC.Core.SCP/Service/DicomArchiveService.cs
index ee456af4a..ac0edd173 100644
--- a/IRC.Core.SCP/Service/DicomArchiveService.cs
+++ b/IRC.Core.SCP/Service/DicomArchiveService.cs
@@ -12,6 +12,7 @@ using IRaCIS.Core.SCP.Service;
using IRaCIS.Core.Infra.EFCore;
using MassTransit;
using System.Runtime.Intrinsics.X86;
+using Serilog.Sinks.File;
namespace IRaCIS.Core.SCP.Service
{
@@ -51,7 +52,7 @@ namespace IRaCIS.Core.SCP.Service
///
///
///
- public async Task ArchiveDicomFileAsync(DicomDataset dataset, Guid trialId, Guid trialSiteId, string fileRelativePath, string callingAE, string calledAE)
+ public async Task ArchiveDicomFileAsync(DicomDataset dataset, Guid trialId, Guid trialSiteId, string fileRelativePath, string callingAE, string calledAE,long fileSize)
{
string studyInstanceUid = dataset.GetString(DicomTag.StudyInstanceUID);
string seriesInstanceUid = dataset.GetString(DicomTag.SeriesInstanceUID);
@@ -270,7 +271,10 @@ namespace IRaCIS.Core.SCP.Service
WindowCenter = dataset.GetSingleValueOrDefault(DicomTag.WindowCenter, string.Empty),
WindowWidth = dataset.GetSingleValueOrDefault(DicomTag.WindowWidth, string.Empty),
- Path = fileRelativePath
+ Path = fileRelativePath,
+
+ FileSize= fileSize,
+
};
++findStudy.InstanceCount;
@@ -300,7 +304,7 @@ namespace IRaCIS.Core.SCP.Service
}
else
{
- await _instanceRepository.BatchUpdateNoTrackingAsync(t => t.Id == instanceId, u => new SCPInstance() { Path = fileRelativePath });
+ await _instanceRepository.BatchUpdateNoTrackingAsync(t => t.Id == instanceId, u => new SCPInstance() { Path = fileRelativePath,FileSize=fileSize });
}
//await _studyRepository.SaveChangesAsync();
diff --git a/IRC.Core.SCP/Service/Interface/IDicomArchiveService.cs b/IRC.Core.SCP/Service/Interface/IDicomArchiveService.cs
index 1c107e94b..99312ef4f 100644
--- a/IRC.Core.SCP/Service/Interface/IDicomArchiveService.cs
+++ b/IRC.Core.SCP/Service/Interface/IDicomArchiveService.cs
@@ -5,7 +5,7 @@ namespace IRaCIS.Core.SCP.Service
{
public interface IDicomArchiveService
{
- Task ArchiveDicomFileAsync(DicomDataset dicomDataset,Guid trialId,Guid trialSiteId, string fileRelativePath,string callingAE,string calledAE);
+ Task ArchiveDicomFileAsync(DicomDataset dicomDataset,Guid trialId,Guid trialSiteId, string fileRelativePath,string callingAE,string calledAE,long fileSize);
}
}
diff --git a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs
index 2e9f81109..5f25482bc 100644
--- a/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs
+++ b/IRaCIS.Core.API/Controllers/UploadDownLoadController.cs
@@ -368,7 +368,7 @@ namespace IRaCIS.Core.API.Controllers
throw new BusinessValidationFailedException(_localizer["UploadDownLoad_RequestError"]);
}
- studyMonitor.FileSize = (decimal)HttpContext.Request.ContentLength;
+ studyMonitor.FileSize = (long)HttpContext.Request.ContentLength;
studyMonitor.FileCount = archiveResult.ReceivedFileCount;
studyMonitor.FailedFileCount = archiveResult.ErrorFiles.Count;
studyMonitor.IsDicomReUpload = archiveStudyCommand.AbandonStudyId != null;
@@ -471,7 +471,7 @@ namespace IRaCIS.Core.API.Controllers
foreach (var item in incommand.UploadedFileList)
{
- await _noneDicomStudyFileRepository.AddAsync(new NoneDicomStudyFile() { FileName = item.FileName, Path = item.FilePath, NoneDicomStudyId = noneDicomStudyId,FileType=item.FileType });
+ await _noneDicomStudyFileRepository.AddAsync(new NoneDicomStudyFile() { FileName = item.FileName, Path = item.FilePath, NoneDicomStudyId = noneDicomStudyId,FileType=item.FileType,FileSize=item.FileFize });
}
var uploadFinishedTime = DateTime.Now;
diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs
index 24982f635..be29c21d3 100644
--- a/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs
+++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DTO/UnionStudyViewDodel.cs
@@ -184,7 +184,7 @@ namespace IRaCIS.Core.Application.Contracts
[NotDefault]
public Guid SubjectVisitId { get; set; }
- public decimal FileSize { get; set; }
+ public long FileSize { get; set; }
public bool IsDicomReUpload { get; set; }
@@ -206,7 +206,7 @@ namespace IRaCIS.Core.Application.Contracts
public Guid SubjectVisitId { get; set; }
- public decimal FileSize { get; set; }
+ public long FileSize { get; set; }
public bool IsDicomReUpload { get; set; }
@@ -360,5 +360,7 @@ namespace IRaCIS.Core.Application.Contracts
public string Path { get; set; } = string.Empty;
public string HtmlPath { get; set; } = string.Empty;
+
+ public decimal FileFize { get; set; }
}
}
diff --git a/IRaCIS.Core.Application/Service/QC/NoneDicomStudyService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/NoneDicomStudyService.cs
similarity index 100%
rename from IRaCIS.Core.Application/Service/QC/NoneDicomStudyService.cs
rename to IRaCIS.Core.Application/Service/ImageAndDoc/NoneDicomStudyService.cs
diff --git a/IRaCIS.Core.Domain/Image/DicomInstance.cs b/IRaCIS.Core.Domain/Image/DicomInstance.cs
index 758ff13cf..3096a0046 100644
--- a/IRaCIS.Core.Domain/Image/DicomInstance.cs
+++ b/IRaCIS.Core.Domain/Image/DicomInstance.cs
@@ -53,5 +53,7 @@ namespace IRaCIS.Core.Domain.Models
public string HtmlPath { get; set; }=string.Empty;
+ public long? FileSize { get; set; }
+
}
}
diff --git a/IRaCIS.Core.Domain/Image/DicomStudy.cs b/IRaCIS.Core.Domain/Image/DicomStudy.cs
index b17d275b1..ede2cf307 100644
--- a/IRaCIS.Core.Domain/Image/DicomStudy.cs
+++ b/IRaCIS.Core.Domain/Image/DicomStudy.cs
@@ -93,6 +93,8 @@ namespace IRaCIS.Core.Domain.Models
public bool IsFromPACS { get; set; }
+
+
}
}
diff --git a/IRaCIS.Core.Domain/Image/DicomStudyMonitor.cs b/IRaCIS.Core.Domain/Image/DicomStudyMonitor.cs
index dc83b79f4..29d084dbe 100644
--- a/IRaCIS.Core.Domain/Image/DicomStudyMonitor.cs
+++ b/IRaCIS.Core.Domain/Image/DicomStudyMonitor.cs
@@ -61,7 +61,7 @@ namespace IRaCIS.Core.Domain.Models
public int FailedFileCount { get; set; }
- public decimal FileSize { get; set; }
+ public long FileSize { get; set; }
public string IP { get; set; }
diff --git a/IRaCIS.Core.Domain/QC/NoneDicom/NoneDicomStudy.cs b/IRaCIS.Core.Domain/Image/NoneDicomStudy.cs
similarity index 100%
rename from IRaCIS.Core.Domain/QC/NoneDicom/NoneDicomStudy.cs
rename to IRaCIS.Core.Domain/Image/NoneDicomStudy.cs
diff --git a/IRaCIS.Core.Domain/QC/NoneDicom/NoneDicomStudyFile.cs b/IRaCIS.Core.Domain/Image/NoneDicomStudyFile.cs
similarity index 95%
rename from IRaCIS.Core.Domain/QC/NoneDicom/NoneDicomStudyFile.cs
rename to IRaCIS.Core.Domain/Image/NoneDicomStudyFile.cs
index 138bf1427..199aad976 100644
--- a/IRaCIS.Core.Domain/QC/NoneDicom/NoneDicomStudyFile.cs
+++ b/IRaCIS.Core.Domain/Image/NoneDicomStudyFile.cs
@@ -31,6 +31,8 @@ namespace IRaCIS.Core.Domain.Models
public string FileType { get; set; }
+ public decimal? FileSize { get; set; }
+
}
}
diff --git a/IRaCIS.Core.Domain/Image/SCPInstance.cs b/IRaCIS.Core.Domain/Image/SCPInstance.cs
index 115656f04..844283149 100644
--- a/IRaCIS.Core.Domain/Image/SCPInstance.cs
+++ b/IRaCIS.Core.Domain/Image/SCPInstance.cs
@@ -46,6 +46,8 @@ namespace IRaCIS.Core.Domain.Models
public bool Anonymize { get; set; }
public string Path { get; set; } = string.Empty;
+ public long? FileSize { get; set; }
+
}
diff --git a/IRaCIS.Core.Domain/Image/TaskInstance.cs b/IRaCIS.Core.Domain/Image/TaskInstance.cs
index ea1035483..7276c500b 100644
--- a/IRaCIS.Core.Domain/Image/TaskInstance.cs
+++ b/IRaCIS.Core.Domain/Image/TaskInstance.cs
@@ -52,5 +52,7 @@ namespace IRaCIS.Core.Domain.Models
public string HtmlPath { get; set; }=string.Empty;
+ public long? FileSize { get; set; }
+
}
}