影像预览调用接口错误,增加接口

hang 2024-08-21 17:26:15 +08:00
parent 4f6a42aff5
commit 509f5ff2fc
2 changed files with 38 additions and 0 deletions

View File

@ -90,6 +90,7 @@ namespace IRaCIS.Core.Application.Service
.ForMember(o => o.IsReading, t => t.MapFrom(u => u.DicomSerie.IsReading));
CreateMap<DicomStudy, DicomStudyDTO>();
CreateMap<DicomSeries, DicomSeriesDTO>();
CreateMap<SCPSeries, DicomSeriesDTO>();

View File

@ -69,6 +69,43 @@ namespace IRaCIS.Application.Services
}
public async Task<IResponseOutput<List<DicomSeriesDTO>>> GetPatientSeriesList(Guid scpStudyId,
[FromServices] IRepository<SCPSeries> _seriesRepository,
[FromServices] IRepository<SCPInstance> _instanceRepository
)
{
var seriesList = await _seriesRepository.Where(s => s.StudyId == scpStudyId).OrderBy(s => s.SeriesNumber).
ThenBy(s => s.SeriesTime).ThenBy(s => s.CreateTime)
.ProjectTo<DicomSeriesDTO>(_mapper.ConfigurationProvider).ToListAsync();
var instanceList = await _instanceRepository.Where(s => s.StudyId == scpStudyId).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);
foreach (var series in seriesList)
{
series.InstanceInfoList = instanceList.Where(t => t.SeriesId == series.Id).OrderBy(t => t.InstanceNumber).Select(k =>
new InstanceBasicInfo()
{
Id = k.Id,
NumberOfFrames = k.NumberOfFrames,
//HtmlPath = string.Empty,
Path = k.Path,
InstanceNumber = k.InstanceNumber,
}).ToList();
}
var study = await _scpStudyRepository.FindAsync(scpStudyId);
return ResponseOutput.Ok(seriesList, study);
}
/// <summary>
/// scp 影像推送记录表
/// </summary>