diff --git a/IRaCIS.Core.Application/Service/QC/QCListService.cs b/IRaCIS.Core.Application/Service/QC/QCListService.cs index aa201f5ef..894d105ec 100644 --- a/IRaCIS.Core.Application/Service/QC/QCListService.cs +++ b/IRaCIS.Core.Application/Service/QC/QCListService.cs @@ -455,6 +455,15 @@ namespace IRaCIS.Core.Application.Image.QA } + var isFilterIVUSNoneDicom = false; + //ivus-在访视的时候visitTaskId==null 需要过滤掉空检查 ,但是在靶段标注的查看访视级别的时候不能过滤 + if (_subjectVisitRepository.Where(t => t.Id == subjectVisitId).SelectMany(t => t.Trial.TrialReadingCriterionList) + .Where(t => (t.CriterionType == CriterionType.IVUS || t.CriterionType == CriterionType.OCT) && t.IsConfirm).Distinct().Count() == 2 + ) + { + isFilterIVUSNoneDicom = true; + } + return new TrialVisitQADTO { IsSupportQCDownloadImage = isSupportQCImageDownload, @@ -467,7 +476,7 @@ namespace IRaCIS.Core.Application.Image.QA ExistsManual = (await _IReadingImageTaskService.GetManualList(new GetManualListInDto() { TrialId = sv.TrialId })).Count() > 0, SeriesList = temp.SeriesList, RelationInfo = await GetVisitQCSubjectInfo(subjectVisitId), - NoneDicomStudyList = await _noneDicomStudyRepository.Where(t => t.SubjectVisitId == subjectVisitId, ignoreQueryFilters: true).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(), + NoneDicomStudyList = await _noneDicomStudyRepository.Where(t => t.SubjectVisitId == subjectVisitId, ignoreQueryFilters: true).Where(t => isFilterIVUSNoneDicom ? t.Modality != "IVUS" : true).ProjectTo(_mapper.ConfigurationProvider).ToListAsync(), SubjectClinicalData = await _subjectVisitRepository.Where(t => t.Id == subjectVisitId) .ProjectTo(_mapper.ConfigurationProvider, new { subjectVisitId = subjectVisitId, token = _userInfo.UserToken }).FirstOrDefaultAsync() };