修改影像后处理nonedicom 切换问题
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
e12935d9aa
commit
2aa63a6132
|
@ -186,8 +186,11 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
|
|
||||||
public class GetReadingVisitStudyListIndto
|
public class GetReadingVisitStudyListIndto
|
||||||
{
|
{
|
||||||
|
[NotDefault]
|
||||||
public Guid TrialId { get; set; }
|
public Guid TrialId { get; set; }
|
||||||
|
[NotDefault]
|
||||||
public Guid SujectVisitId { get; set; }
|
public Guid SujectVisitId { get; set; }
|
||||||
|
[NotDefault]
|
||||||
public Guid VisitTaskId { get; set; }
|
public Guid VisitTaskId { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -37,7 +37,7 @@ namespace IRaCIS.Core.Application.Services
|
||||||
IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository
|
IRepository<ReadingQuestionCriterionTrial> _trialReadingCriterionRepository
|
||||||
) : BaseService, ISubjectVisitService
|
) : BaseService, ISubjectVisitService
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
|
[TypeFilter(typeof(TrialResourceFilter), Arguments = new object[] { "AfterStopCannNotOpt" })]
|
||||||
|
@ -541,7 +541,7 @@ namespace IRaCIS.Core.Application.Services
|
||||||
SeriesId = x.SeriesId,
|
SeriesId = x.SeriesId,
|
||||||
StudyId = x.StudyId,
|
StudyId = x.StudyId,
|
||||||
InstanceId = x.InstanceId,
|
InstanceId = x.InstanceId,
|
||||||
NumberOfFrames=x.NumberOfFrames,
|
NumberOfFrames = x.NumberOfFrames,
|
||||||
}).ToListAsync();
|
}).ToListAsync();
|
||||||
|
|
||||||
|
|
||||||
|
@ -594,20 +594,20 @@ namespace IRaCIS.Core.Application.Services
|
||||||
HtmlPath = k.HtmlPath,
|
HtmlPath = k.HtmlPath,
|
||||||
Path = k.Path,
|
Path = k.Path,
|
||||||
InstanceNumber = k.InstanceNumber,
|
InstanceNumber = k.InstanceNumber,
|
||||||
StudyId= k.StudyId,
|
StudyId = k.StudyId,
|
||||||
SeriesId= k.SeriesId,
|
SeriesId = k.SeriesId,
|
||||||
}).ToListAsync();
|
}).ToListAsync();
|
||||||
|
|
||||||
item.InstanceInfoList.ForEach(x =>
|
item.InstanceInfoList.ForEach(x =>
|
||||||
{
|
{
|
||||||
|
|
||||||
var keyFramesList = rowInfoList.Where(y => y.InstanceId == x.Id&&y.NumberOfFrames!=0).Select(y => y.NumberOfFrames).Distinct().ToList();
|
var keyFramesList = rowInfoList.Where(y => y.InstanceId == x.Id && y.NumberOfFrames != 0).Select(y => y.NumberOfFrames).Distinct().ToList();
|
||||||
|
|
||||||
if (keyFramesList.Count() > 0)
|
if (keyFramesList.Count() > 0)
|
||||||
{
|
{
|
||||||
x.KeyFramesList = keyFramesList;
|
x.KeyFramesList = keyFramesList;
|
||||||
}
|
}
|
||||||
|
|
||||||
var item = rowInfoList.FirstOrDefault(y => y.InstanceId == x.Id);
|
var item = rowInfoList.FirstOrDefault(y => y.InstanceId == x.Id);
|
||||||
if (item != null)
|
if (item != null)
|
||||||
{
|
{
|
||||||
|
@ -632,7 +632,7 @@ namespace IRaCIS.Core.Application.Services
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
studyList.Insert(0,thisVisitTaskStudy);
|
studyList.Insert(0, thisVisitTaskStudy);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -658,7 +658,7 @@ namespace IRaCIS.Core.Application.Services
|
||||||
#region 非Dicom 检查查询
|
#region 非Dicom 检查查询
|
||||||
|
|
||||||
var noDicomList = await _noneDicomStudyRepository.Where(x => x.TrialId == indto.TrialId && x.SubjectVisitId == indto.SujectVisitId && x.NoneDicomFileList.Any(t => !t.FileType.Contains(StaticData.FileType.Zip)))
|
var noDicomList = await _noneDicomStudyRepository.Where(x => x.TrialId == indto.TrialId && x.SubjectVisitId == indto.SujectVisitId && x.NoneDicomFileList.Any(t => !t.FileType.Contains(StaticData.FileType.Zip)))
|
||||||
.WhereIf(taskInfo.IsImageFilter == true, t => taskInfo.CriterionModalitys.Contains(t.Modality) ).ToListAsync();
|
.WhereIf(taskInfo.IsImageFilter == true, t => taskInfo.CriterionModalitys.Contains(t.Modality)).ToListAsync();
|
||||||
|
|
||||||
|
|
||||||
List<VisitStudyDTO> noDicomStudyList = noDicomList.Select(x => new VisitStudyDTO()
|
List<VisitStudyDTO> noDicomStudyList = noDicomList.Select(x => new VisitStudyDTO()
|
||||||
|
@ -672,11 +672,14 @@ namespace IRaCIS.Core.Application.Services
|
||||||
|
|
||||||
}).ToList();
|
}).ToList();
|
||||||
|
|
||||||
|
var isExistTaskNoneDicomFile = _noneDicomStudyFileRepository.Any(t => t.OriginNoneDicomStudyId == indto.VisitTaskId);
|
||||||
|
|
||||||
foreach (var item in noDicomStudyList)
|
foreach (var item in noDicomStudyList)
|
||||||
{
|
{
|
||||||
var nodicom = noDicomList.Where(x => x.Id == item.StudyId).First();
|
var nodicom = noDicomList.Where(x => x.Id == item.StudyId).First();
|
||||||
|
|
||||||
var instanceCount = await _noneDicomStudyFileRepository.Where(x => x.NoneDicomStudyId == item.StudyId).CountAsync();
|
var instanceCount = await _noneDicomStudyFileRepository.WhereIf(isExistTaskNoneDicomFile,x=>x.OriginNoneDicomStudyId== item.StudyId)
|
||||||
|
.WhereIf(isExistTaskNoneDicomFile==false, x=>x.NoneDicomStudyId == item.StudyId).CountAsync();
|
||||||
|
|
||||||
if (instanceCount == 0)
|
if (instanceCount == 0)
|
||||||
{
|
{
|
||||||
|
@ -697,7 +700,9 @@ namespace IRaCIS.Core.Application.Services
|
||||||
SubjectVisitId=nodicom.SubjectVisitId,
|
SubjectVisitId=nodicom.SubjectVisitId,
|
||||||
SubjectId=nodicom.SubjectId,
|
SubjectId=nodicom.SubjectId,
|
||||||
SeriesNumber=1,
|
SeriesNumber=1,
|
||||||
NoneDicomFileFirstFile=await _noneDicomStudyFileRepository.Where(x=>x.NoneDicomStudyId==item.StudyId && !x.FileType.Contains(StaticData.FileType.Zip)).Select(x=>x.Path).FirstOrDefaultAsync(),
|
NoneDicomFileFirstFile=await _noneDicomStudyFileRepository.WhereIf(isExistTaskNoneDicomFile,x=>x.OriginNoneDicomStudyId== item.StudyId)
|
||||||
|
.WhereIf(isExistTaskNoneDicomFile==false, x=>x.NoneDicomStudyId == item.StudyId)
|
||||||
|
.Where(x=> !x.FileType.Contains(StaticData.FileType.Zip)).Select(x=>x.Path).FirstOrDefaultAsync(),
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue