Uat_Study
parent
f1768d5bd9
commit
4b50216206
|
@ -192,7 +192,7 @@ namespace IRaCIS.Core.Application.Contracts
|
||||||
public int SeriesCount { get; set; }
|
public int SeriesCount { get; set; }
|
||||||
public int InstanceCount { get; set; }
|
public int InstanceCount { get; set; }
|
||||||
|
|
||||||
|
public bool IsDicom { get; set; } = true;
|
||||||
|
|
||||||
public List<DicomSeriesDTO> SeriesList { get; set; } = new List<DicomSeriesDTO>();
|
public List<DicomSeriesDTO> SeriesList { get; set; } = new List<DicomSeriesDTO>();
|
||||||
}
|
}
|
||||||
|
|
|
@ -268,46 +268,51 @@ namespace IRaCIS.Core.Application.Services
|
||||||
|
|
||||||
// 非Dicom
|
// 非Dicom
|
||||||
|
|
||||||
List<DicomSeriesDTO> noDicomStudyList =await _noneDicomStudyRepository.Where(x => x.TrialId == trialId && x.SubjectVisitId == sujectVisitId).Select(x => new DicomSeriesDTO()
|
var noDicomList = await _noneDicomStudyRepository.Where(x => x.TrialId == trialId && x.SubjectVisitId == sujectVisitId).ToListAsync();
|
||||||
|
|
||||||
|
|
||||||
|
List<VisitStudyDTO> noDicomStudyList = noDicomList.Select(x => new VisitStudyDTO()
|
||||||
{
|
{
|
||||||
InstanceCount = x.FileCount,
|
InstanceCount = x.FileCount,
|
||||||
Modality = x.Modality,
|
|
||||||
SiteId=x.SiteId,
|
|
||||||
TrialId=x.TrialId,
|
|
||||||
SubjectId=x.SubjectId,
|
|
||||||
SubjectVisitId=x.SubjectVisitId,
|
|
||||||
Id=x.Id,
|
|
||||||
StudyId = x.Id,
|
StudyId = x.Id,
|
||||||
|
Modalities=x.Modality,
|
||||||
|
SeriesCount=1,
|
||||||
|
StudyCode=x.StudyCode,
|
||||||
IsDicom = false,
|
IsDicom = false,
|
||||||
}).ToListAsync();
|
|
||||||
|
}).ToList();
|
||||||
|
|
||||||
foreach (var item in noDicomStudyList)
|
foreach (var item in noDicomStudyList)
|
||||||
{
|
{
|
||||||
item.NoneDicomFileFirstFile = await _noneDicomStudyFileRepository.Where(x => x.NoneDicomStudyId == item.Id).Select(x => x.Path).FirstOrDefaultAsync();
|
var nodicom = noDicomList.Where(x => x.Id == item.StudyId).FirstOrDefault();
|
||||||
}
|
item.SeriesList = new List<DicomSeriesDTO>()
|
||||||
|
|
||||||
|
|
||||||
if (studyList.Count > 0)
|
|
||||||
{
|
|
||||||
studyList[0].SeriesList.AddRange(noDicomStudyList);
|
|
||||||
}
|
|
||||||
|
|
||||||
else
|
|
||||||
{
|
|
||||||
studyList = new List<VisitStudyDTO>()
|
|
||||||
{
|
{
|
||||||
new VisitStudyDTO(){
|
new DicomSeriesDTO (){
|
||||||
InstanceCount =noDicomStudyList.Count(),
|
IsDicom=false,
|
||||||
Modalities = noDicomStudyList.Select(x=>x.Modality).FirstOrDefault(),
|
Id=item.StudyId,
|
||||||
SeriesCount = noDicomStudyList.Count(),
|
InstanceCount=await _noneDicomStudyFileRepository.Where(x=>x.NoneDicomStudyId==item.StudyId).CountAsync(),
|
||||||
StudyCode = noDicomStudyList.Select(x=>x.Modality).FirstOrDefault(),
|
Modality=item.Modalities,
|
||||||
StudyId = noDicomStudyList.Select(x=>x.Id).FirstOrDefault(),
|
StudyId=item.StudyId,
|
||||||
SeriesList=noDicomStudyList,
|
TrialId=nodicom.TrialId,
|
||||||
},
|
SiteId=nodicom.SiteId,
|
||||||
|
SubjectVisitId=nodicom.SubjectVisitId,
|
||||||
|
SubjectId=nodicom.SubjectId,
|
||||||
|
NoneDicomFileFirstFile=await _noneDicomStudyFileRepository.Where(x=>x.NoneDicomStudyId==item.StudyId).Select(x=>x.Path).FirstOrDefaultAsync(),
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (studyList==null||studyList.Count == 0)
|
||||||
|
{
|
||||||
|
studyList=new List<VisitStudyDTO>();
|
||||||
|
}
|
||||||
|
|
||||||
|
studyList.AddRange(noDicomStudyList);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return studyList;
|
return studyList;
|
||||||
|
|
||||||
//return ResponseOutput.Ok(studyList.Where(t => t.SeriesList.Count > 0).ToList());
|
//return ResponseOutput.Ok(studyList.Where(t => t.SeriesList.Count > 0).ToList());
|
||||||
|
|
Loading…
Reference in New Issue