修改重阅逻辑
This commit is contained in:
+7
-81
@@ -111,7 +111,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
|
||||
join subjectCriteriaEvaluation in _subjectCriteriaEvaluationRepository
|
||||
.Where(t => t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId)
|
||||
|
||||
|
||||
on subject.Id equals subjectCriteriaEvaluation.SubjectId into d
|
||||
from subjectCriteriaEvaluation in d.DefaultIfEmpty()
|
||||
|
||||
@@ -145,7 +145,7 @@ namespace IRaCIS.Core.Application.Service
|
||||
};
|
||||
|
||||
var pageList = await subjectCriteriaEvaluationQueryable
|
||||
.WhereIf(inQuery.IsImageFiltering != null, t => t.IsImageFiltering==inQuery.IsImageFiltering)
|
||||
.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);
|
||||
|
||||
@@ -624,46 +624,9 @@ namespace IRaCIS.Core.Application.Service
|
||||
.OrderBy(t => t.VisitTaskNum).ProjectTo<InfluenceTaskInfo>(_mapper.ConfigurationProvider).ToListAsync();
|
||||
foreach (var influenceTask in list)
|
||||
{
|
||||
//有序
|
||||
if (criterionConfig.IsReadingTaskViewInOrder)
|
||||
{
|
||||
//申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配
|
||||
if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != subjectVisit.VisitNum)
|
||||
{
|
||||
//后续访视处理访视
|
||||
if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
{
|
||||
influenceTask.OptType = ReReadingOrBackOptType.Return;
|
||||
}
|
||||
else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading)
|
||||
{
|
||||
influenceTask.OptType = ReReadingOrBackOptType.Abandon;
|
||||
}
|
||||
else
|
||||
{
|
||||
influenceTask.OptType = ReReadingOrBackOptType.CancelAssign;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//申请的访视 全局肿瘤学
|
||||
|
||||
if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
{
|
||||
influenceTask.OptType = ReReadingOrBackOptType.Return;
|
||||
}
|
||||
else
|
||||
{
|
||||
influenceTask.OptType = ReReadingOrBackOptType.Abandon;
|
||||
}
|
||||
}
|
||||
}
|
||||
//无序
|
||||
else
|
||||
{
|
||||
//重阅重置或者失效
|
||||
influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon;
|
||||
}
|
||||
//重阅重置或者失效
|
||||
influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon;
|
||||
}
|
||||
|
||||
|
||||
@@ -701,59 +664,22 @@ namespace IRaCIS.Core.Application.Service
|
||||
public async Task ConfirmBackCriteriaVisitTask(CriteriaVisitBackCommand command)
|
||||
{
|
||||
|
||||
|
||||
|
||||
|
||||
var filterExpression = await GetTaskExpressionAsync(command);
|
||||
|
||||
|
||||
|
||||
|
||||
var influenceTaskList = await _visitTaskRepository.Where(filterExpression, true).ToListAsync();
|
||||
|
||||
var subjectVisit = await _subjectVisitRepository.FindAsync(command.SubjectVisitId);
|
||||
|
||||
|
||||
|
||||
foreach (var influenceTask in influenceTaskList)
|
||||
{
|
||||
|
||||
|
||||
//申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配
|
||||
if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != subjectVisit.VisitNum)
|
||||
if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
{
|
||||
//后续访视处理访视
|
||||
if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
{
|
||||
influenceTask.TaskState = TaskState.HaveReturned;
|
||||
|
||||
}
|
||||
else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading)
|
||||
{
|
||||
influenceTask.TaskState = TaskState.Adbandon;
|
||||
}
|
||||
else
|
||||
{
|
||||
influenceTask.DoctorUserId = null;
|
||||
influenceTask.AllocateTime = null;
|
||||
influenceTask.SuggesteFinishedTime = null;
|
||||
influenceTask.TaskAllocationState = TaskAllocationState.NotAllocate;
|
||||
|
||||
}
|
||||
influenceTask.TaskState = TaskState.HaveReturned;
|
||||
}
|
||||
else
|
||||
{
|
||||
//申请的访视 全局肿瘤学
|
||||
|
||||
if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
||||
{
|
||||
influenceTask.TaskState = TaskState.HaveReturned;
|
||||
}
|
||||
else
|
||||
{
|
||||
influenceTask.TaskState = TaskState.Adbandon;
|
||||
}
|
||||
|
||||
influenceTask.TaskState = TaskState.Adbandon;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user