多帧修改2
continuous-integration/drone/push Build is passing Details

IRC_NewDev
hang 2024-05-17 14:40:55 +08:00
parent f6d2b1e7f1
commit a8b218ce95
3 changed files with 15 additions and 27 deletions

View File

@ -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);

View File

@ -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 暂时废弃

View File

@ -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>();