This commit is contained in:
2022-09-30 14:04:28 +08:00
parent 2f7ba345d9
commit 63a49e4799
6 changed files with 20 additions and 7 deletions
@@ -206,6 +206,8 @@ namespace IRaCIS.Core.Application.ViewModel
public Guid? VisistId { get; set; }
public DateTime? SuggesteFinishedTime { get; set; }
public Guid TrialReadingCriterionId { get; set; }
}
@@ -281,6 +283,9 @@ namespace IRaCIS.Core.Application.ViewModel
public string SubjectCode { get; set; }
[NotDefault]
public Guid TrialReadingCriterionId { get; set; }
}
public class IRUnReadOutDto
@@ -309,6 +314,7 @@ namespace IRaCIS.Core.Application.ViewModel
/// 建议完成时间
/// </summary>
public DateTime? SuggesteFinishedTime { get; set; }
}
public class SubjectAssignQuery : PageInput
@@ -16,6 +16,6 @@ namespace IRaCIS.Core.Application.Service
Task<IResponseOutput> ConfirmReReading(ConfirmReReadingCommand agreeReReadingCommand, [FromServices] IVisitTaskHelpeService _visitTaskCommonService);
(int, IOrderedQueryable<IRUnReadSubjectView>) GetOrderReadingIQueryable(Guid trialId);
(int, IOrderedQueryable<IRUnReadSubjectView>) GetOrderReadingIQueryable(Guid trialId, Guid? trialReadingCriterionId);
}
}
@@ -1029,6 +1029,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
{
var trialId = iRUnReadSubjectQuery.TrialId;
var trialReadingCriterionId = iRUnReadSubjectQuery.TrialReadingCriterionId;
#region
//var query = _visitTaskRepository.Where(t => t.TrialId == trialId)
@@ -1065,7 +1067,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
// .Where(t => t.UnReadTaskCount > 0);
var visitTaskQuery = GetOrderReadingIQueryable(trialId);
var visitTaskQuery = GetOrderReadingIQueryable(trialId, trialReadingCriterionId);
var totalCount = visitTaskQuery.Item1;
var currentPageData = await visitTaskQuery.Item2.Skip((iRUnReadSubjectQuery.PageIndex - 1) * iRUnReadSubjectQuery.PageSize)
@@ -1091,7 +1093,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
else
{
var taskQuery = _visitTaskRepository.Where(x => x.TrialId == iRUnReadSubjectQuery.TrialId && x.DoctorUserId == _userInfo.Id && x.TaskState == TaskState.Effect)
var taskQuery = _visitTaskRepository.Where(x => x.TrialId == iRUnReadSubjectQuery.TrialId && x.DoctorUserId == _userInfo.Id && x.TaskState == TaskState.Effect && x.TrialReadingCriterionId==trialReadingCriterionId)
.Where(x => !x.Subject.IsDeleted);
IRUnReadOutDto iRUnReadOut = new IRUnReadOutDto()
@@ -1125,9 +1127,10 @@ namespace IRaCIS.Core.Application.Service.Allocation
/// </summary>
/// <param name="trialId"></param>
/// <returns></returns>
public (int, IOrderedQueryable<IRUnReadSubjectView>) GetOrderReadingIQueryable(Guid trialId)
public (int, IOrderedQueryable<IRUnReadSubjectView>) GetOrderReadingIQueryable(Guid trialId,Guid? trialReadingCriterionId)
{
var visitGroupQuery = _visitTaskRepository.Where(x => x.TrialId == trialId && x.DoctorUserId == _userInfo.Id)
var visitGroupQuery = _visitTaskRepository.Where(x => x.TrialId == trialId && x.DoctorUserId == _userInfo.Id )
.WhereIf(trialReadingCriterionId!=null,t=>t.TrialReadingCriterionId==trialReadingCriterionId)
.Where(x => !x.Subject.IsDeleted)
.Where(t => (t.ReadingTaskState != ReadingTaskState.HaveSigned || t.ReReadingApplyState == ReReadingApplyState.DocotorHaveApplyed || t.ReReadingApplyState == ReReadingApplyState.TrialGroupHaveApplyed) && t.TaskState == TaskState.Effect)
.GroupBy(x => new { x.SubjectId, x.Subject.Code, x.BlindSubjectCode });
@@ -1149,6 +1152,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
SuggesteFinishedTime = u.SuggesteFinishedTime,
ReadingCategory = u.ReadingCategory,
IsAnalysisCreate = u.IsAnalysisCreate,
TrialReadingCriterionId=u.TrialReadingCriterionId,
}).ToList(),
}).Where(x => x.UnReadTaskCount > 0).OrderBy(x => x.SubjectId);