多帧修改2
	
		
			
	
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
					Details
				
			
		
	
				
					
				
			
				
	
				continuous-integration/drone/push Build is passing
				
					Details
				
			
		
	
							parent
							
								
									f6d2b1e7f1
								
							
						
					
					
						commit
						a8b218ce95
					
				| 
						 | 
				
			
			@ -34,7 +34,7 @@
 | 
			
		|||
        public bool IsReading { get; set; } = true;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
        public List<InstanceBasicInfo> InstanceInfoList { get; set; }
 | 
			
		||||
        public List<InstanceBasicInfo> InstanceInfoList { get; set; }=new List<InstanceBasicInfo>();
 | 
			
		||||
 | 
			
		||||
        public bool IsExistMutiFrames => InstanceInfoList.Any(t => t.NumberOfFrames > 1);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -39,36 +39,23 @@ namespace IRaCIS.Core.Application.Services
 | 
			
		|||
              ThenBy(s => s.SeriesTime).ThenBy(s => s.CreateTime)
 | 
			
		||||
              .ProjectTo<DicomSeriesDTO>(_mapper.ConfigurationProvider).ToListAsync();
 | 
			
		||||
 | 
			
		||||
            var idList = await _instanceRepository.Where(s => s.StudyId == studyId).OrderBy(t => t.SeriesId).ThenBy(t => t.InstanceNumber)
 | 
			
		||||
            var instanceList = await _instanceRepository.Where(s => s.StudyId == studyId).OrderBy(t => t.SeriesId).ThenBy(t => t.InstanceNumber)
 | 
			
		||||
                        .ThenBy(s => s.InstanceTime).ThenBy(s => s.CreateTime)
 | 
			
		||||
                .Select(t => new { t.SeriesId, t.Id, t.Path, t.NumberOfFrames,t.InstanceNumber }).ToListAsync();//.GroupBy(u => u.SeriesId);
 | 
			
		||||
                .Select(t => new { t.SeriesId, t.Id, t.Path, t.NumberOfFrames,t.InstanceNumber,t.HtmlPath }).ToListAsync();//.GroupBy(u => u.SeriesId);
 | 
			
		||||
 | 
			
		||||
            foreach (var item in seriesList)
 | 
			
		||||
            foreach (var series in seriesList)
 | 
			
		||||
            {
 | 
			
		||||
                item.InstanceList = idList.Where(s => s.SeriesId == item.Id).Select(u => u.Id).ToList();
 | 
			
		||||
 | 
			
		||||
                //处理多帧
 | 
			
		||||
                item.InstancePathList = idList.Where(s => s.SeriesId == item.Id).OrderBy(t => t.InstanceNumber)
 | 
			
		||||
                    .SelectMany(u =>
 | 
			
		||||
                    {
 | 
			
		||||
                series.InstanceInfoList = instanceList.Where(t => t.SeriesId == series.Id).OrderBy(t => t.InstanceNumber).Select(k =>
 | 
			
		||||
                   new InstanceBasicInfo()
 | 
			
		||||
                   {
 | 
			
		||||
                       Id = k.Id,
 | 
			
		||||
                       NumberOfFrames = k.NumberOfFrames,
 | 
			
		||||
                       HtmlPath = k.HtmlPath,
 | 
			
		||||
                       Path = k.Path,
 | 
			
		||||
                       InstanceNumber = k.InstanceNumber,
 | 
			
		||||
 | 
			
		||||
                        if (u.NumberOfFrames > 1)
 | 
			
		||||
                        {
 | 
			
		||||
                            var pathList = new List<string>();
 | 
			
		||||
 | 
			
		||||
                            for (int i = 1; i <= u.NumberOfFrames; i++)
 | 
			
		||||
                            {
 | 
			
		||||
                                pathList.Add(u.Path + "?frame=" + (i - 1));
 | 
			
		||||
                            }
 | 
			
		||||
                            return pathList;
 | 
			
		||||
                        }
 | 
			
		||||
                        else
 | 
			
		||||
                        {
 | 
			
		||||
                            return new List<string> { u.Path };
 | 
			
		||||
 | 
			
		||||
                        }
 | 
			
		||||
                    })
 | 
			
		||||
                    .ToList();
 | 
			
		||||
                   }).ToList();             
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            #region 暂时废弃
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,7 +12,8 @@ namespace IRaCIS.Core.Domain.Models
 | 
			
		|||
    [Table("Subject")]
 | 
			
		||||
    public class Subject : Entity, IAuditAdd, IAuditUpdate, ISoftDelete
 | 
			
		||||
    {
 | 
			
		||||
      
 | 
			
		||||
        [JsonIgnore]
 | 
			
		||||
        public List<TaskStudy> TaskStudyList { get; set; } = new List<TaskStudy>();
 | 
			
		||||
 | 
			
		||||
        [JsonIgnore]
 | 
			
		||||
        public List<SubjectVisit> SubjectVisitList { get; set; } = new List<SubjectVisit>();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue