104 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			104 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			C#
		
	
	
| 
 | |
| using Newtonsoft.Json;
 | |
| 
 | |
| namespace IRaCIS.Core.Application.Contracts.Dicom.DTO
 | |
| {
 | |
|     public class DicomSeriesDTO
 | |
|     {
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|         public bool IsDicom { get; set; } = true;
 | |
| 
 | |
|         public bool IsBeMark { get; set; } = false;
 | |
| 
 | |
|         public Guid Id { get; set; }
 | |
|         public Guid StudyId { get; set; }
 | |
|         public string StudyInstanceUid { get; set; } = String.Empty;
 | |
|         public string SeriesInstanceUid { get; set; } = String.Empty;
 | |
|         public int SeriesNumber { get; set; }
 | |
|         public DateTime? SeriesTime { get; set; }
 | |
|         public string Modality { get; set; } = String.Empty;
 | |
|         public string Description { get; set; } = String.Empty;
 | |
|         public int InstanceCount { get; set; }
 | |
| 
 | |
|         public string NoneDicomFileFirstFile { get; set; } = String.Empty;
 | |
|         public string SliceThickness { get; set; } = String.Empty;
 | |
| 
 | |
|         public Guid TrialId { get; set; }
 | |
| 
 | |
|         public Guid SubjectId { get; set; }
 | |
|         public Guid SubjectVisitId { get; set; }
 | |
| 
 | |
|         public Guid CreateUserId { get; set; }
 | |
|         public DateTime CreateTime { get; set; }
 | |
|         public Guid UpdateUserId { get; set; }
 | |
|         public DateTime UpdateTime { get; set; }
 | |
| 
 | |
|         public bool IsDeleted { get; set; }
 | |
|         public bool IsReading { get; set; } = true;
 | |
| 
 | |
| 
 | |
|         public List<InstanceBasicInfo> InstanceInfoList { get; set; } = new List<InstanceBasicInfo>();
 | |
| 
 | |
|         public bool IsExistMutiFrames => InstanceInfoList.Any(t => t.NumberOfFrames > 1);
 | |
| 
 | |
| 
 | |
|         //存放在instance 上面
 | |
|         public string? WindowCenter => InstanceInfoList.FirstOrDefault()?.WindowCenter;
 | |
|         public string? WindowWidth => InstanceInfoList.FirstOrDefault()?.WindowWidth;
 | |
| 
 | |
|         public string ImageResizePath { get; set; }
 | |
|     }
 | |
| 
 | |
|     public class StudyInstanceInfo
 | |
|     {
 | |
| 
 | |
|         public int ShowOrder { get; set; }
 | |
| 
 | |
| 
 | |
|         public decimal RowIndex { get; set; }
 | |
| 
 | |
|         public Guid? SeriesId { get; set; }
 | |
| 
 | |
|         public Guid? StudyId { get; set; }
 | |
|         public Guid? InstanceId { get; set; }
 | |
| 
 | |
|         public int? NumberOfFrames { get; set; }
 | |
|     }
 | |
|     public class InstanceBasicInfo
 | |
|     {
 | |
|         public Guid Id { get; set; }
 | |
| 
 | |
|         public string Path { get; set; }
 | |
| 
 | |
|         public string HtmlPath { get; set; }
 | |
| 
 | |
|         public int NumberOfFrames { get; set; }
 | |
| 
 | |
|         public int InstanceNumber { get; set; }
 | |
| 
 | |
|         public Guid? StudyId { get; set; }
 | |
| 
 | |
|         public List<int?> KeyFramesList { get; set; } = new List<int?> { };
 | |
| 
 | |
|         public Guid? SeriesId { get; set; }
 | |
| 
 | |
|         [JsonIgnore]
 | |
|         public int ShowOrder { get; set; }
 | |
|         [JsonIgnore]
 | |
|         public decimal RowIndex { get; set; }
 | |
|         [JsonIgnore]
 | |
|         public string WindowCenter { get; set; }
 | |
|         [JsonIgnore]
 | |
|         public string WindowWidth { get; set; }
 | |
|     }
 | |
| 
 | |
|     public class DicomSeriesWithLabelDTO : DicomSeriesDTO
 | |
|     {
 | |
|         public bool HasLabel { get; set; } = false;
 | |
|         public bool KeySeries { get; set; } = false;
 | |
|     }
 | |
| }
 |