Merge branch 'master' of http://192.168.1.2:8033/IRaCIS_Core_Api
commit
c8ee8a6081
|
@ -64,6 +64,10 @@ namespace IRaCIS.Core.Application.ViewModel
|
||||||
|
|
||||||
public string TrialSiteCode { get; set; } = string.Empty;
|
public string TrialSiteCode { get; set; } = string.Empty;
|
||||||
public SubjectStatus? SubjectStatus { get; set; }
|
public SubjectStatus? SubjectStatus { get; set; }
|
||||||
|
|
||||||
|
public bool? IsImageFiltering { get; set; }
|
||||||
|
|
||||||
|
public bool? IsJoinEvaluation { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
///<summary> SubjectCriteriaEvaluationAddOrEdit 列表查询参数模型</summary>
|
///<summary> SubjectCriteriaEvaluationAddOrEdit 列表查询参数模型</summary>
|
||||||
|
|
|
@ -106,10 +106,13 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
var subjectCriteriaEvaluationQueryable = from subject in _subjectRepository.Where(t => t.TrialId == inQuery.TrialId)
|
var subjectCriteriaEvaluationQueryable = from subject in _subjectRepository.Where(t => t.TrialId == inQuery.TrialId)
|
||||||
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.SubjectCode), t => t.Code.Contains(inQuery.SubjectCode))
|
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.SubjectCode), t => t.Code.Contains(inQuery.SubjectCode))
|
||||||
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.TrialSiteCode), t => t.TrialSite.TrialSiteCode.Contains(inQuery.TrialSiteCode))
|
.WhereIf(!string.IsNullOrWhiteSpace(inQuery.TrialSiteCode), t => t.TrialSite.TrialSiteCode.Contains(inQuery.TrialSiteCode))
|
||||||
.WhereIf(inQuery.SubjectStatus != null, t => t.Status == inQuery.SubjectStatus)
|
.WhereIf(inQuery.SubjectStatus != null, t => t.Status == inQuery.SubjectStatus)
|
||||||
|
|
||||||
join subjectCriteriaEvaluation in _subjectCriteriaEvaluationRepository.Where(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId) on subject.Id equals subjectCriteriaEvaluation.SubjectId into d
|
join subjectCriteriaEvaluation in _subjectCriteriaEvaluationRepository
|
||||||
|
.Where(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId)
|
||||||
|
|
||||||
|
on subject.Id equals subjectCriteriaEvaluation.SubjectId into d
|
||||||
from subjectCriteriaEvaluation in d.DefaultIfEmpty()
|
from subjectCriteriaEvaluation in d.DefaultIfEmpty()
|
||||||
|
|
||||||
select new SubjectCriteriaEvaluationView()
|
select new SubjectCriteriaEvaluationView()
|
||||||
|
@ -141,7 +144,10 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
var pageList = await subjectCriteriaEvaluationQueryable.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, inQuery.SortField == string.Empty ? nameof(SubjectCriteriaEvaluationView.SubjectCode) : inQuery.SortField, inQuery.Asc);
|
var pageList = await subjectCriteriaEvaluationQueryable
|
||||||
|
.WhereIf(inQuery.IsImageFiltering != null, t => t.IsImageFiltering==inQuery.IsImageFiltering)
|
||||||
|
.WhereIf(inQuery.IsJoinEvaluation != null, t => t.IsJoinEvaluation == inQuery.IsJoinEvaluation)
|
||||||
|
.ToPagedListAsync(inQuery.PageIndex, inQuery.PageSize, inQuery.SortField == string.Empty ? nameof(SubjectCriteriaEvaluationView.SubjectCode) : inQuery.SortField, inQuery.Asc);
|
||||||
|
|
||||||
|
|
||||||
foreach (var item in pageList.CurrentPageData)
|
foreach (var item in pageList.CurrentPageData)
|
||||||
|
@ -322,22 +328,29 @@ namespace IRaCIS.Core.Application.Service
|
||||||
var list = await _repository.Where<DicomSeries>(t => t.SubjectVisitId == subjectVisitId && t.SubjectId == subjectId).Select(t => new { SeriesId = t.Id, t.StudyId, t.BodyPartForEdit }).ToListAsync();
|
var list = await _repository.Where<DicomSeries>(t => t.SubjectVisitId == subjectVisitId && t.SubjectId == subjectId).Select(t => new { SeriesId = t.Id, t.StudyId, t.BodyPartForEdit }).ToListAsync();
|
||||||
|
|
||||||
|
|
||||||
//已经自动筛选过
|
////已经自动筛选过
|
||||||
if (await _subjectCriteriaEvaluationVisitFilterRepository.AnyAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.SubjectVisitId == subjectVisitId))
|
//if (await _subjectCriteriaEvaluationVisitFilterRepository.AnyAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.SubjectVisitId == subjectVisitId))
|
||||||
{
|
//{
|
||||||
await _subjectCriteriaEvaluationVisitFilterRepository.BatchDeleteNoTrackingAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.SubjectVisitId == subjectVisitId);
|
// await _subjectCriteriaEvaluationVisitFilterRepository.BatchDeleteNoTrackingAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.SubjectVisitId == subjectVisitId);
|
||||||
|
|
||||||
|
// await _subjectCriteriaEvaluationVisitStudyFilterRepository.BatchDeleteNoTrackingAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.SubjectVisitId == subjectVisitId);
|
||||||
|
//}
|
||||||
|
|
||||||
|
var existEntity = await _subjectCriteriaEvaluationVisitFilterRepository.FirstOrDefaultAsync(t => t.SubjectId == subjectId && t.SubjectVisitId == subjectVisitId && t.TrialReadingCriterionId == trialReadingCriterionId);
|
||||||
|
|
||||||
|
//已经自动筛选过
|
||||||
|
|
||||||
|
if (existEntity != null)
|
||||||
|
{
|
||||||
await _subjectCriteriaEvaluationVisitStudyFilterRepository.BatchDeleteNoTrackingAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.SubjectVisitId == subjectVisitId);
|
await _subjectCriteriaEvaluationVisitStudyFilterRepository.BatchDeleteNoTrackingAsync(t => t.TrialReadingCriterionId == trialReadingCriterionId && t.SubjectVisitId == subjectVisitId);
|
||||||
}
|
}
|
||||||
|
|
||||||
//var existEntity = await _subjectCriteriaEvaluationVisitFilterRepository.FirstOrDefaultAsync(t => t.SubjectId == subjectId && t.SubjectVisitId == subjectVisitId && t.TrialReadingCriterionId == trialReadingCriterionId);
|
|
||||||
|
|
||||||
//有不是脑部的序列
|
//有不是脑部的序列
|
||||||
if (list.Any(t => t.BodyPartForEdit != "脑部"))
|
if (list.Any(t => t.BodyPartForEdit != "脑部"))
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
||||||
//if (existEntity == null)
|
if (existEntity == null)
|
||||||
{
|
{
|
||||||
var addItem = new SubjectCriteriaEvaluationVisitFilter
|
var addItem = new SubjectCriteriaEvaluationVisitFilter
|
||||||
{
|
{
|
||||||
|
@ -351,13 +364,18 @@ namespace IRaCIS.Core.Application.Service
|
||||||
|
|
||||||
var subjectCriteriaEvaluationVisitFilter = await _subjectCriteriaEvaluationVisitFilterRepository.AddAsync(addItem);
|
var subjectCriteriaEvaluationVisitFilter = await _subjectCriteriaEvaluationVisitFilterRepository.AddAsync(addItem);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
existEntity.ImageDeterminationResultState = ImageDeterminationResultState.None;
|
||||||
|
existEntity.ImageFilterState = ImageFilterState.None;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
//都是脑部的序列
|
//都是脑部的序列
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
||||||
//if (existEntity == null)
|
if (existEntity == null)
|
||||||
{
|
{
|
||||||
var addItem = new SubjectCriteriaEvaluationVisitFilter
|
var addItem = new SubjectCriteriaEvaluationVisitFilter
|
||||||
{
|
{
|
||||||
|
@ -372,7 +390,11 @@ namespace IRaCIS.Core.Application.Service
|
||||||
var subjectCriteriaEvaluationVisitFilter = await _subjectCriteriaEvaluationVisitFilterRepository.AddAsync(addItem);
|
var subjectCriteriaEvaluationVisitFilter = await _subjectCriteriaEvaluationVisitFilterRepository.AddAsync(addItem);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
existEntity.ImageDeterminationResultState = ImageDeterminationResultState.Passed;
|
||||||
|
existEntity.ImageFilterState = ImageFilterState.Finished;
|
||||||
|
}
|
||||||
|
|
||||||
foreach (var item in list)
|
foreach (var item in list)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue