uat-ivus-oct-再次修改1
parent
4fde957519
commit
5e0513ebcb
|
|
@ -1367,8 +1367,8 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
{
|
{
|
||||||
var subjectVisitIdList = list.Select(t => t.SourceSubjectVisitId).Distinct().ToList();
|
var subjectVisitIdList = list.Select(t => t.SourceSubjectVisitId).Distinct().ToList();
|
||||||
|
|
||||||
var preDicomStudyList = _subjectVisitRepository.Where(t => subjectVisitIdList.Contains(t.Id)).SelectMany(t => t.TaskStudyList)
|
//var preDicomStudyList = _subjectVisitRepository.Where(t => subjectVisitIdList.Contains(t.Id)).SelectMany(t => t.TaskStudyList)
|
||||||
.ProjectTo<DicomStudyBasicInfo>(_mapper.ConfigurationProvider).ToList();
|
// .ProjectTo<DicomStudyBasicInfo>(_mapper.ConfigurationProvider).ToList();
|
||||||
|
|
||||||
var preNoneDicomStudyList = _subjectVisitRepository.Where(t => subjectVisitIdList.Contains(t.Id))
|
var preNoneDicomStudyList = _subjectVisitRepository.Where(t => subjectVisitIdList.Contains(t.Id))
|
||||||
.SelectMany(t => t.NoneDicomStudyList)
|
.SelectMany(t => t.NoneDicomStudyList)
|
||||||
|
|
@ -1378,7 +1378,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
{
|
{
|
||||||
var dicomList = item.DicomStudyList.Where(t => inQuery.IsImageSegmentLabel == false ? t.ModalityForEdit == "XA" || t.ModalityForEdit == "OCT" : true).ToList();
|
var dicomList = item.DicomStudyList.Where(t => inQuery.IsImageSegmentLabel == false ? t.ModalityForEdit == "XA" || t.ModalityForEdit == "OCT" : true).ToList();
|
||||||
|
|
||||||
dicomList.AddRange(preDicomStudyList.Where(t => t.SubjectVisitId == item.SourceSubjectVisitId).ToList());
|
//dicomList.AddRange(preDicomStudyList.Where(t => t.SubjectVisitId == item.SourceSubjectVisitId).ToList());
|
||||||
|
|
||||||
item.DicomStudyList = dicomList;
|
item.DicomStudyList = dicomList;
|
||||||
|
|
||||||
|
|
@ -1627,32 +1627,32 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
}).ToList()
|
}).ToList()
|
||||||
}).ToList(),
|
}).ToList(),
|
||||||
|
|
||||||
TaskStudyList =
|
//TaskStudyList =
|
||||||
sv.TaskStudyList.Where(t => isQueryDicom ? inQuery.DicomStudyIdList.Contains(t.Id) : false)
|
//sv.TaskStudyList.Where(t => isQueryDicom ? inQuery.DicomStudyIdList.Contains(t.Id) : false)
|
||||||
//.Where(t => info.IsImageFilter ? ("|" + info.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|") : true)
|
////.Where(t => info.IsImageFilter ? ("|" + info.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|") : true)
|
||||||
.Select(u => new DownloadDicomStudyDto()
|
//.Select(u => new DownloadDicomStudyDto()
|
||||||
{
|
//{
|
||||||
PatientId = u.PatientId,
|
// PatientId = u.PatientId,
|
||||||
StudyTime = u.StudyTime,
|
// StudyTime = u.StudyTime,
|
||||||
StudyCode = u.StudyCode,
|
// StudyCode = u.StudyCode,
|
||||||
StudyInstanceUid = u.StudyInstanceUid,
|
// StudyInstanceUid = u.StudyInstanceUid,
|
||||||
StudyDIRPath = u.StudyDIRPath,
|
// StudyDIRPath = u.StudyDIRPath,
|
||||||
|
|
||||||
SeriesList = u.SeriesList.Select(z => new DownloadDicomSeriesDto()
|
// SeriesList = u.SeriesList.Select(z => new DownloadDicomSeriesDto()
|
||||||
{
|
// {
|
||||||
Modality = z.Modality,
|
// Modality = z.Modality,
|
||||||
|
|
||||||
InstanceList = z.InstanceList.Select(k => new DownloadDicomInstanceDto()
|
// InstanceList = z.InstanceList.Select(k => new DownloadDicomInstanceDto()
|
||||||
{
|
// {
|
||||||
IsEncapsulated = k.IsEncapsulated,
|
// IsEncapsulated = k.IsEncapsulated,
|
||||||
InstanceId = k.Id,
|
// InstanceId = k.Id,
|
||||||
FileName = string.Empty,
|
// FileName = string.Empty,
|
||||||
Path = k.Path,
|
// Path = k.Path,
|
||||||
FileSize = k.FileSize
|
// FileSize = k.FileSize
|
||||||
}).ToList()
|
// }).ToList()
|
||||||
}).ToList()
|
// }).ToList()
|
||||||
}).ToList()
|
//}).ToList()
|
||||||
,
|
//,
|
||||||
|
|
||||||
NoneDicomStudyList = inQuery.IsImageSegmentLabel != false ? sv.NoneDicomStudyList.Where(t => isQueryNoneDicom ? inQuery.NoneDicomStudyIdList.Contains(t.Id) : false)
|
NoneDicomStudyList = inQuery.IsImageSegmentLabel != false ? sv.NoneDicomStudyList.Where(t => isQueryNoneDicom ? inQuery.NoneDicomStudyIdList.Contains(t.Id) : false)
|
||||||
.Where(t => info.IsImageFilter ? ("|" + info.CriterionModalitys + "|").Contains("|" + t.Modality + "|") : true)
|
.Where(t => info.IsImageFilter ? ("|" + info.CriterionModalitys + "|").Contains("|" + t.Modality + "|") : true)
|
||||||
|
|
@ -1699,7 +1699,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc
|
||||||
//靶段标注处理
|
//靶段标注处理
|
||||||
if (inQuery.IsImageSegmentLabel == false)
|
if (inQuery.IsImageSegmentLabel == false)
|
||||||
{
|
{
|
||||||
result.StudyList.AddRange(result.TaskStudyList);
|
//result.StudyList.AddRange(result.TaskStudyList);
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var item in result.StudyList.SelectMany(t => t.SeriesList).SelectMany(t => t.InstanceList))
|
foreach (var item in result.StudyList.SelectMany(t => t.SeriesList).SelectMany(t => t.InstanceList))
|
||||||
|
|
|
||||||
|
|
@ -305,18 +305,18 @@ namespace IRaCIS.Core.Application.Services
|
||||||
//预览靶段标注上传的影像
|
//预览靶段标注上传的影像
|
||||||
if (isImageSegmentLabel == true && isVisitTask)
|
if (isImageSegmentLabel == true && isVisitTask)
|
||||||
{
|
{
|
||||||
var taskStudyList = await _taskStudyRepository.Where(t => t.SubjectVisitId == sujectVisitId)
|
//var taskStudyList = await _taskStudyRepository.Where(t => t.SubjectVisitId == sujectVisitId)
|
||||||
.WhereIf(isImageFilter, t => ("|" + criterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
// .WhereIf(isImageFilter, t => ("|" + criterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
||||||
.ProjectTo<VisitStudyDTO>(_mapper.ConfigurationProvider).ToListAsync();
|
// .ProjectTo<VisitStudyDTO>(_mapper.ConfigurationProvider).ToListAsync();
|
||||||
|
|
||||||
foreach (var study in taskStudyList)
|
//foreach (var study in taskStudyList)
|
||||||
{
|
//{
|
||||||
study.SeriesList = study.SeriesList.OrderBy(s => s.SeriesNumber).ThenBy(s => s.SeriesTime).ToList();
|
// study.SeriesList = study.SeriesList.OrderBy(s => s.SeriesNumber).ThenBy(s => s.SeriesTime).ToList();
|
||||||
|
|
||||||
study.InstanceCount = study.SeriesList.SelectMany(t => t.InstanceInfoList).Count();
|
// study.InstanceCount = study.SeriesList.SelectMany(t => t.InstanceInfoList).Count();
|
||||||
}
|
//}
|
||||||
|
|
||||||
studyList.AddRange(taskStudyList);
|
//studyList.AddRange(taskStudyList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -515,7 +515,7 @@ namespace IRaCIS.Core.Application.Services
|
||||||
//是否有了后处理的NoneDicom检查
|
//是否有了后处理的NoneDicom检查
|
||||||
IsHaveTaskNoneDicomStudyFile = t.SourceSubjectVisit.NoneDicomStudyList.SelectMany(c => c.TaskNoneDicomFileList.Where(t => t.VisitTaskId == indto.VisitTaskId)).Any(),
|
IsHaveTaskNoneDicomStudyFile = t.SourceSubjectVisit.NoneDicomStudyList.SelectMany(c => c.TaskNoneDicomFileList.Where(t => t.VisitTaskId == indto.VisitTaskId)).Any(),
|
||||||
//是否有了标注的dicom检查
|
//是否有了标注的dicom检查
|
||||||
IsMarkDicomStudy = t.SourceSubjectVisit.TaskStudyList.Any(),
|
//IsMarkDicomStudy = t.SourceSubjectVisit.TaskStudyList.Any(),
|
||||||
//是否有了标注的NoneDicom检查
|
//是否有了标注的NoneDicom检查
|
||||||
IsMarkNoneDicomStudy = t.SourceSubjectVisit.NoneDicomStudyList.SelectMany(c => c.ImageLabelNoneDicomFileList).Any()
|
IsMarkNoneDicomStudy = t.SourceSubjectVisit.NoneDicomStudyList.SelectMany(c => c.ImageLabelNoneDicomFileList).Any()
|
||||||
|
|
||||||
|
|
@ -533,19 +533,15 @@ namespace IRaCIS.Core.Application.Services
|
||||||
.WhereIf(taskInfo.IsImageFilter == true, t => ("|" + taskInfo.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
.WhereIf(taskInfo.IsImageFilter == true, t => ("|" + taskInfo.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
||||||
.WhereIf(isManualGenerate, t => t.SubjectCriteriaEvaluationVisitStudyFilterList.Any(t => t.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && t.IsConfirmed && t.IsReading))
|
.WhereIf(isManualGenerate, t => t.SubjectCriteriaEvaluationVisitStudyFilterList.Any(t => t.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && t.IsConfirmed && t.IsReading))
|
||||||
//影像后处理 上传了新的影像 还要原始dsa
|
//影像后处理 上传了新的影像 还要原始dsa
|
||||||
.WhereIf(taskInfo.IsHaveTaskStudy
|
.WhereIf(taskInfo.IsHaveTaskStudy && taskInfo.CriterionType == CriterionType.OCT,
|
||||||
&& (taskInfo.CriterionType == CriterionType.OCT || taskInfo.CriterionType == CriterionType.IVUS),
|
|
||||||
t => t.ModalityForEdit == "XA")
|
t => t.ModalityForEdit == "XA")
|
||||||
|
|
||||||
.WhereIf(taskInfo.IsHaveTaskStudy == false && taskInfo.IsMarkDicomStudy && taskInfo.CriterionType == CriterionType.IVUS,
|
.WhereIf(taskInfo.CriterionType == CriterionType.IVUS,
|
||||||
t => t.ModalityForEdit == "XA" )
|
t => t.ModalityForEdit == "XA" || t.ModalityForEdit == "IVUS")
|
||||||
|
|
||||||
.WhereIf(taskInfo.IsHaveTaskStudy == false && taskInfo.IsMarkDicomStudy && taskInfo.CriterionType == CriterionType.OCT,
|
.WhereIf(taskInfo.IsHaveTaskStudy == false && taskInfo.CriterionType == CriterionType.OCT,
|
||||||
t => t.ModalityForEdit == "XA" || t.ModalityForEdit == "OCT")
|
t => t.ModalityForEdit == "XA" || t.ModalityForEdit == "OCT")
|
||||||
|
|
||||||
.WhereIf(taskInfo.IsHaveTaskStudy == false && taskInfo.IsMarkDicomStudy == false
|
|
||||||
&& (taskInfo.CriterionType == CriterionType.OCT || taskInfo.CriterionType == CriterionType.IVUS),
|
|
||||||
t => t.ModalityForEdit == "XA" || t.ModalityForEdit == "OCT" || t.ModalityForEdit == "IVUS")
|
|
||||||
|
|
||||||
//其他 不应该看原始影像
|
//其他 不应该看原始影像
|
||||||
.WhereIf(taskInfo.IsHaveTaskStudy && (taskInfo.CriterionType != CriterionType.OCT && taskInfo.CriterionType != CriterionType.IVUS), t => false)
|
.WhereIf(taskInfo.IsHaveTaskStudy && (taskInfo.CriterionType != CriterionType.OCT && taskInfo.CriterionType != CriterionType.IVUS), t => false)
|
||||||
|
|
@ -611,12 +607,12 @@ namespace IRaCIS.Core.Application.Services
|
||||||
}
|
}
|
||||||
|
|
||||||
//影像后处理 上传了新的影像
|
//影像后处理 上传了新的影像
|
||||||
if (taskInfo.IsHaveTaskStudy || taskInfo.IsMarkDicomStudy || taskInfo.IsMarkNoneDicomStudy)
|
if (taskInfo.IsHaveTaskStudy /*|| taskInfo.IsMarkDicomStudy*/ || taskInfo.IsMarkNoneDicomStudy)
|
||||||
{
|
{
|
||||||
|
|
||||||
var taskStudyList = await _taskStudyRepository.Where(t => t.TrialId == indto.TrialId)
|
var taskStudyList = await _taskStudyRepository.Where(t => t.TrialId == indto.TrialId)
|
||||||
.WhereIf(taskInfo.IsHaveTaskStudy, t => t.VisitTaskId == indto.VisitTaskId)
|
.WhereIf(taskInfo.IsHaveTaskStudy, t => t.VisitTaskId == indto.VisitTaskId)
|
||||||
.WhereIf(taskInfo.IsHaveTaskStudy == false && (taskInfo.IsMarkDicomStudy || taskInfo.IsMarkNoneDicomStudy), t => t.SubjectVisitId == indto.SujectVisitId)
|
.WhereIf(taskInfo.IsHaveTaskStudy == false && (/*taskInfo.IsMarkDicomStudy ||*/ taskInfo.IsMarkNoneDicomStudy), t => t.SubjectVisitId == indto.SujectVisitId)
|
||||||
.WhereIf(taskInfo.IsImageFilter == true, t => ("|" + taskInfo.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
.WhereIf(taskInfo.IsImageFilter == true, t => ("|" + taskInfo.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
|
||||||
.ProjectTo<VisitStudyDTO>(_mapper.ConfigurationProvider).ToListAsync();
|
.ProjectTo<VisitStudyDTO>(_mapper.ConfigurationProvider).ToListAsync();
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue