diff --git a/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs b/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs index 12e8dd87..4d95795a 100644 --- a/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs +++ b/IRaCIS.Core.Application/Service/Allocation/TaskMedicalReviewService.cs @@ -138,16 +138,32 @@ namespace IRaCIS.Core.Application.Service { var medicalReview = await _taskMedicalReviewRepository.Where(x => x.Id == inDto.MedicalReviewId).Include(x=>x.VisitTask).FirstNotNullAsync(); - var data =await GetMIMMedicalReviewTaskList(new TaskMedicalReviewQuery() + var subjectReview = await GetMIMMedicalReviewTaskList(new TaskMedicalReviewQuery() { TrialId = medicalReview.TrialId, IsGetBeRead = true, + SubjectId= medicalReview.VisitTask.SubjectId, TrialReadingCriterionId = medicalReview.VisitTask.TrialReadingCriterionId, PageIndex=1, PageSize=1, }); + if (subjectReview.Item1.CurrentPageData.Count == 1) + { + return subjectReview.Item1.CurrentPageData[0]; + } + + var data = await GetMIMMedicalReviewTaskList(new TaskMedicalReviewQuery() + { + + TrialId = medicalReview.TrialId, + IsGetBeRead = true, + + TrialReadingCriterionId = medicalReview.VisitTask.TrialReadingCriterionId, + PageIndex = 1, + PageSize = 1, + }); if (data.Item1.CurrentPageData.Count == 1) { @@ -173,7 +189,7 @@ namespace IRaCIS.Core.Application.Service { var taskMedicalReviewQueryable = _taskMedicalReviewRepository.Where(t => t.VisitTask.TrialId == inQuery.TrialId && t.MedicalManagerUserId == _userInfo.Id&&t.VisitTask.TrialReadingCriterionId==inQuery.TrialReadingCriterionId) - + .WhereIf(inQuery.SubjectId != null, t => t.VisitTask.SubjectId == inQuery.SubjectId) .WhereIf(inQuery.SiteId != null, t => t.VisitTask.Subject.SiteId == inQuery.SiteId) .WhereIf(!string.IsNullOrEmpty(inQuery.SubjectCode), t => t.VisitTask.Subject.Code.Contains(inQuery.SubjectCode)) .WhereIf(inQuery.IsUrgent != null, t => t.VisitTask.IsUrgent == inQuery.IsUrgent)