修改代码

This commit is contained in:
he
2022-04-22 14:42:14 +08:00
parent c9b50196fe
commit dff3ce99b8
6 changed files with 73 additions and 36 deletions
@@ -1,4 +1,6 @@
namespace IRaCIS.Core.Application.Contracts
using IRaCIS.Core.Domain.Share;
namespace IRaCIS.Core.Application.Contracts
{
public class DicomInstanceDTO
{
@@ -39,6 +41,7 @@
public string ResearchProgramNo { get; set; } = string.Empty;
public string TrialIndication { get; set; } = string.Empty;
public CheckStateEnum CheckState { get; set; }
public decimal VisitNum { get; set; }
@@ -50,7 +50,7 @@ namespace IRaCIS.Core.Application.Services
return success;
}
public async Task<Guid> ArchiveDicomStreamAsync(Stream dicomStream,
public async Task<Tuple<Guid, string>> ArchiveDicomStreamAsync(Stream dicomStream,
DicomTrialSiteSubjectInfo addtionalInfo, List<string> seriesInstanceUidList, List<string> instanceUidList)
{
@@ -65,7 +65,7 @@ namespace IRaCIS.Core.Application.Services
if (instanceUidList.Any(t => t == sopInstanceUid))
{
return IdentifierHelper.CreateGuid(studyInstanceUid, addtionalInfo.TrialId.ToString());
return new Tuple<Guid, string>(IdentifierHelper.CreateGuid(studyInstanceUid, addtionalInfo.TrialId.ToString()), string.Empty) ;
}
@@ -203,6 +203,26 @@ namespace IRaCIS.Core.Application.Services
await _seriesRepository.AddAsync(dicomSeries);
#region
List<DataInspection> datas = new List<DataInspection>();
//datas.Add(new DataInspection()
//{
// SiteId = dicomStudy.SiteId,
// SubjectId = dicomStudy.SubjectId,
// TrialId = dicomStudy.TrialId,
// GeneralId = dicomSeries.Id,
// SubjectVisitId = dicomStudy.SubjectVisitId,
// CreateTime = createtime.AddMilliseconds(10),
// Identification = "Add|DICOM Series|Info|Visit-Image Upload",
// JsonDetail = JsonConvert.SerializeObject(new
// {
// StudyCode = dicomStudy.StudyCode,
// Modalities = dicomStudy.Modalities,
// SeriesNumber = dicomSeries.SeriesNumber,
// InstanceCount = dicomSeries.InstanceCount,
// SeriesTime = dicomSeries.SeriesTime,
// })
//});
datas.Add(new DataInspection()
{
@@ -212,26 +232,6 @@ namespace IRaCIS.Core.Application.Services
GeneralId = dicomSeries.Id,
SubjectVisitId = dicomStudy.SubjectVisitId,
CreateTime = createtime.AddMilliseconds(10),
Identification = "Add|DICOM Series|Info|Visit-Image Upload",
JsonDetail = JsonConvert.SerializeObject(new
{
StudyCode = dicomStudy.StudyCode,
Modalities = dicomStudy.Modalities,
SeriesNumber = dicomSeries.SeriesNumber,
InstanceCount = dicomSeries.InstanceCount,
SeriesTime = dicomSeries.SeriesTime,
})
});
datas.Add(new DataInspection()
{
SiteId = dicomStudy.SiteId,
SubjectId = dicomStudy.SubjectId,
TrialId = dicomStudy.TrialId,
GeneralId = dicomSeries.Id,
SubjectVisitId = dicomStudy.SubjectVisitId,
CreateTime = createtime.AddMilliseconds(510),
Identification = "Init|DICOM Series|Status|Visit-Image Upload",
JsonDetail = JsonConvert.SerializeObject(new
{
@@ -241,6 +241,7 @@ namespace IRaCIS.Core.Application.Services
InstanceCount = dicomSeries.InstanceCount,
SeriesTime = dicomSeries.SeriesTime,
IsReading = dicomSeries.IsReading,
IsDeleted = dicomSeries.IsReading,
})
});
@@ -275,7 +276,7 @@ namespace IRaCIS.Core.Application.Services
if (dataset.InternalTransferSyntax.IsEncapsulated) await dicomFile.SaveAsync(filePath);
else await dicomFile.Clone(DicomTransferSyntax.RLELossless).SaveAsync(filePath); //RLELossless
}
return dicomInstance.StudyId;
return new Tuple<Guid, string>(dicomInstance.StudyId, dicomStudy.StudyCode);
}
@@ -464,6 +465,8 @@ namespace IRaCIS.Core.Application.Services
SiteId = dicomStudy.SiteId,
TrialId = dicomStudy.TrialId,
SubjectId = dicomStudy.SubjectId,
IsDeleted=false,
IsReading=false,
SubjectVisitId = dicomStudy.SubjectVisitId,
InstanceCount = 0
@@ -2,7 +2,7 @@
{
public interface IDicomArchiveService
{
Task<Guid> ArchiveDicomStreamAsync(Stream dicomStream, DicomTrialSiteSubjectInfo addtionalInfo, List<string> seriesInstanceUidList, List<string> instanceUidList);
Task<Tuple<Guid,string>> ArchiveDicomStreamAsync(Stream dicomStream, DicomTrialSiteSubjectInfo addtionalInfo, List<string> seriesInstanceUidList, List<string> instanceUidList);
//ICollection<DicomStudyDTO> GetArchivedStudyList(List<Guid> archivedStudyIds);
Task<bool> DicomDBDataSaveChange();