修改影响列表
parent
b60fcb1507
commit
ba363d42bd
|
@ -1288,6 +1288,23 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
origenalTask.TaskState = agreeReReadingCommand.RequestReReadingResultEnum == RequestReReadingResult.Agree ? TaskState.HaveReturned : origenalTask.TaskState;
|
origenalTask.TaskState = agreeReReadingCommand.RequestReReadingResultEnum == RequestReReadingResult.Agree ? TaskState.HaveReturned : origenalTask.TaskState;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async Task SetMedicalReviewInvalidAsync(List<VisitTask> influenceTaskList, bool isPM = true)
|
||||||
|
{
|
||||||
|
//将医学审核设置为失效
|
||||||
|
var taskIdList = influenceTaskList.Select(t => t.Id).ToList();
|
||||||
|
|
||||||
|
if (isPM)
|
||||||
|
{
|
||||||
|
await _taskMedicalReviewRepository.UpdatePartialFromQueryAsync(t => taskIdList.Contains(t.VisitTaskId) && t.AuditState != MedicalReviewAuditState.HaveSigned, u => new TaskMedicalReview() { IsInvalid = true });
|
||||||
|
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
|
||||||
|
await _taskMedicalReviewRepository.UpdatePartialFromQueryAsync(t => taskIdList.Contains(t.VisitTaskId) && t.IsHaveQuestion == false && t.AuditState != MedicalReviewAuditState.HaveSigned, u => new TaskMedicalReview() { IsInvalid = true });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 确认重阅与否 1同意 2 拒绝
|
/// 确认重阅与否 1同意 2 拒绝
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -1406,9 +1423,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
//});
|
//});
|
||||||
|
|
||||||
|
|
||||||
//将医学审核设置为失效
|
await SetMedicalReviewInvalidAsync(influenceTaskList);
|
||||||
var taskIdList = influenceTaskList.Select(t => t.Id).ToList();
|
|
||||||
await _taskMedicalReviewRepository.UpdatePartialFromQueryAsync(t => taskIdList.Contains(t.VisitTaskId) && t.AuditState != MedicalReviewAuditState.HaveSigned, u => new TaskMedicalReview() { IsInvalid = true });
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配
|
//申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配
|
||||||
|
@ -1528,9 +1544,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
// influenceTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = t.Id });
|
// influenceTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = t.Id });
|
||||||
//});
|
//});
|
||||||
|
|
||||||
//将医学审核设置为失效
|
await SetMedicalReviewInvalidAsync(influenceTaskList);
|
||||||
var taskIdList = influenceTaskList.Select(t => t.Id).ToList();
|
|
||||||
await _taskMedicalReviewRepository.UpdatePartialFromQueryAsync(t => taskIdList.Contains(t.VisitTaskId) && t.AuditState != MedicalReviewAuditState.HaveSigned, u => new TaskMedicalReview() { IsInvalid = true });
|
|
||||||
|
|
||||||
trakingOrigenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return });
|
trakingOrigenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return });
|
||||||
}
|
}
|
||||||
|
@ -1588,7 +1602,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
|
|
||||||
//全局不影响后续访视任务
|
//全局不影响后续访视任务
|
||||||
filterExpression = filterExpression.And(t => t.VisitTaskNum >= origenalTask.VisitTaskNum &&
|
filterExpression = filterExpression.And(t => t.VisitTaskNum >= origenalTask.VisitTaskNum &&
|
||||||
((t.DoctorUserId == origenalTask.DoctorUserId && t.ReadingCategory == ReadingCategory.Global) || (t.ReadingCategory == ReadingCategory.Oncology) || (t.ReadingCategory == ReadingCategory.Judge)));
|
((t.DoctorUserId == origenalTask.DoctorUserId && t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState == ReadingTaskState.HaveSigned) || (t.ReadingCategory == ReadingCategory.Oncology) || (t.ReadingCategory == ReadingCategory.Judge)));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ReadingCategory.Oncology:
|
case ReadingCategory.Oncology:
|
||||||
|
@ -1636,10 +1650,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
// influenceTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = t.Id });
|
// influenceTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = t.Id });
|
||||||
//});
|
//});
|
||||||
|
|
||||||
//将医学审核设置为失效
|
|
||||||
var taskIdList = influenceTaskList.Select(t => t.Id).ToList();
|
|
||||||
|
|
||||||
await _taskMedicalReviewRepository.UpdatePartialFromQueryAsync(t => taskIdList.Contains(t.VisitTaskId) && t.IsHaveQuestion==false && t.AuditState != MedicalReviewAuditState.HaveSigned, u => new TaskMedicalReview() { IsInvalid = true });
|
await SetMedicalReviewInvalidAsync(influenceTaskList,false);
|
||||||
|
|
||||||
trakingOrigenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return });
|
trakingOrigenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return });
|
||||||
}
|
}
|
||||||
|
@ -1755,10 +1767,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
//});
|
//});
|
||||||
|
|
||||||
|
|
||||||
//将医学审核设置为失效
|
await SetMedicalReviewInvalidAsync(influenceTaskList, false);
|
||||||
var taskIdList = influenceTaskList.Select(t => t.Id).ToList();
|
|
||||||
|
|
||||||
await _taskMedicalReviewRepository.UpdatePartialFromQueryAsync(t => taskIdList.Contains(t.VisitTaskId) && t.IsHaveQuestion == false && t.AuditState != MedicalReviewAuditState.HaveSigned, u => new TaskMedicalReview() { IsInvalid = true });
|
|
||||||
|
|
||||||
trakingOrigenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return });
|
trakingOrigenalTask.TaskInfluenceList.Add(new TaskInfluence() { InfluenceTaskId = influenceTask.Id, OptType = ReReadingOrBackOptType.Return });
|
||||||
}
|
}
|
||||||
|
@ -1945,6 +1954,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
|
|
||||||
var influenceTaskList = await _visitTaskRepository.Where(filterExpression, true).ToListAsync();
|
var influenceTaskList = await _visitTaskRepository.Where(filterExpression, true).ToListAsync();
|
||||||
|
|
||||||
|
await SetMedicalReviewInvalidAsync(influenceTaskList);
|
||||||
|
|
||||||
|
|
||||||
#region 方式一
|
#region 方式一
|
||||||
//foreach (var influenceTask in influenceTaskList)
|
//foreach (var influenceTask in influenceTaskList)
|
||||||
|
@ -2143,6 +2154,8 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
|
|
||||||
var currentVisitList = await _visitTaskRepository.Where(t => t.SourceSubjectVisitId == task.SourceSubjectVisitId && t.ReadingCategory == ReadingCategory.Visit && t.TaskState == TaskState.Effect && t.VisitTaskNum == task.VisitTaskNum, true).ToListAsync();
|
var currentVisitList = await _visitTaskRepository.Where(t => t.SourceSubjectVisitId == task.SourceSubjectVisitId && t.ReadingCategory == ReadingCategory.Visit && t.TaskState == TaskState.Effect && t.VisitTaskNum == task.VisitTaskNum, true).ToListAsync();
|
||||||
|
|
||||||
|
await SetMedicalReviewInvalidAsync(currentVisitList);
|
||||||
|
|
||||||
var origenalTask = currentVisitList.Where(t => t.Id == task.Id).First();
|
var origenalTask = currentVisitList.Where(t => t.Id == task.Id).First();
|
||||||
|
|
||||||
foreach (var influenceTask in currentVisitList)
|
foreach (var influenceTask in currentVisitList)
|
||||||
|
@ -2294,7 +2307,7 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
|
|
||||||
//全局不影响后续访视任务
|
//全局不影响后续访视任务
|
||||||
filterExpression = filterExpression.And(t => t.VisitTaskNum >= filterObj.VisitTaskNum &&
|
filterExpression = filterExpression.And(t => t.VisitTaskNum >= filterObj.VisitTaskNum &&
|
||||||
((t.DoctorUserId == filterObj.DoctorUserId && t.ReadingCategory == ReadingCategory.Global) || (t.ReadingCategory == ReadingCategory.Oncology) || (t.ReadingCategory == ReadingCategory.Judge)));
|
((t.DoctorUserId == filterObj.DoctorUserId && t.ReadingCategory == ReadingCategory.Global && t.ReadingTaskState==ReadingTaskState.HaveSigned) || (t.ReadingCategory == ReadingCategory.Oncology) || (t.ReadingCategory == ReadingCategory.Judge)));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
//1、后续任务如果是访视任务、全局任务或裁判任务,均不处理;
|
//1、后续任务如果是访视任务、全局任务或裁判任务,均不处理;
|
||||||
|
|
Loading…
Reference in New Issue