漏提交

Uat_Study
hang 2022-07-13 10:46:14 +08:00
parent 527faa02d1
commit 4a190c5297
1 changed files with 40 additions and 8 deletions

View File

@ -967,6 +967,16 @@ namespace IRaCIS.Core.Application.Service
throw new BusinessValidationFailedException("访视重阅导致裁判任务重置的,不能申请重阅");
}
if (task.ReadingCategory == ReadingCategory.Oncology)
{
throw new BusinessValidationFailedException("肿瘤学任务只允许申请该阅片人最后一次完成裁判的任务进行重阅");
}
if (task.ReadingCategory == ReadingCategory.Judge && await _visitTaskRepository.AnyAsync(t => t.DoctorUserId == task.DoctorUserId && t.SubjectId == task.SubjectId && t.TaskState == TaskState.Effect && t.VisitTaskNum > task.VisitTaskNum))
{
throw new BusinessValidationFailedException("只允许申请该阅片人最后一次完成裁判的任务重阅");
}
task.ReReadingApplyState = ReReadingApplyState.HaveApplyed;
@ -990,7 +1000,7 @@ namespace IRaCIS.Core.Application.Service
//产生新的任务
await _visitTaskRepository.SaveChangesAsync();
@ -1436,10 +1446,7 @@ namespace IRaCIS.Core.Application.Service
switch (filterObj.ReadingCategory)
{
case ReadingCategory.Visit:
case ReadingCategory.Global:
case ReadingCategory.Oncology:
//影响当前医生 以及当前医生之后的 (1、访视任务 已经读完的,未读完的或者未读的 不处理)
//影响当前医生 以及当前医生之后的 1、访视任务 已经读完的,(未读完的或者未读的 不处理)
//2、后续任务如果是全局、肿瘤学阅片任务状态为阅片完成标记为重阅重置若在阅片中则标记为失效若为待阅片则标记为失效
//3、当前任务、后续访视任务或者全局任务触发了裁判任务若裁判任务状态为阅片完成则标记为重阅重置若在阅片中或待阅片则标记为失效
filterExpression = filterExpression.And(t => t.VisitTaskNum >= filterObj.VisitTaskNum && t.DoctorUserId == filterObj.DoctorUserId &&
@ -1448,12 +1455,37 @@ namespace IRaCIS.Core.Application.Service
t.ReadingCategory == ReadingCategory.Oncology ||
t.ReadingCategory == ReadingCategory.Judge)
);
break;
case ReadingCategory.Global:
// 1、后续任务如果是访视任务均不处理
//2、后续任务如果是全局、状态为阅片完成则标记为重阅重置若阅片中或待阅片则不处理
//3、当前任务或者全局任务触发了裁判任务若裁判任务状态为阅片完成则标记为重阅重置若在阅片中或待阅片则标记为失效
//4、后续任务为肿瘤学阅片任务状态为阅片完成标记为重阅重置若在阅片中则标记为失效若为待阅片则标记为失效
//全局不影响后续访视任务
filterExpression = filterExpression.And(t => t.VisitTaskNum >= filterObj.VisitTaskNum && t.DoctorUserId == filterObj.DoctorUserId &&
(
t.ReadingCategory == ReadingCategory.Global ||
t.ReadingCategory == ReadingCategory.Oncology ||
t.ReadingCategory == ReadingCategory.Judge)
);
break;
case ReadingCategory.Oncology:
//不允许申请,已做限制
throw new BusinessValidationFailedException("不支持的申请重阅任务类型");
//(只允许申请该阅片人最后一次完成裁判的任务重阅)申请的时候做了限制
case ReadingCategory.Judge:
// 1、后续任务如果是访视任务、全局任务均不处理
//2、后续若有肿瘤学阅片若肿瘤学阅片任务状态为阅片完成则标记为重阅重置若为阅片中则标记为失效如为待阅片则取消分配
//裁判的影响自己 和后续肿瘤学阅片
filterExpression = filterExpression.And(t => (t.Id == filterObj.Id) || (t.VisitTaskNum > filterObj.VisitTaskNum && t.DoctorUserId == filterObj.DoctorUserId && t.ReadingCategory == ReadingCategory.Oncology));
@ -1515,8 +1547,8 @@ namespace IRaCIS.Core.Application.Service
{
// 当前任务及其之后的所有访视任务 两个阅片人的
//自己的后续任务 取消分配
//另一个阅片人的任务根据任务进度自动进入PM退回或PM申请重阅
// 1.后续访视不处理
//2.当前任务未完成,不会产生全局任务。后续任务均为访视任务,且均为待阅片,取消分配;
filterExpression = filterExpression.And(t => t.VisitTaskNum >= filterObj.VisitTaskNum);
}
//无序