修改退回
parent
5aa4c81c0d
commit
711c3f3639
|
@ -1432,18 +1432,6 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
Expression<Func<VisitTask, bool>> filterExpression = t => t.TrialId == trialId && t.SubjectId == task.SubjectId && (t.TaskState == TaskState.Effect || t.TaskState == TaskState.Freeze);
|
Expression<Func<VisitTask, bool>> filterExpression = t => t.TrialId == trialId && t.SubjectId == task.SubjectId && (t.TaskState == TaskState.Effect || t.TaskState == TaskState.Freeze);
|
||||||
|
|
||||||
|
|
||||||
if (criterionConfig.CriterionType == CriterionType.RECIST1Point1 && criterionConfig.IsAdditionalAssessment)
|
|
||||||
{
|
|
||||||
//影像退回,必定影响两个标准的任务
|
|
||||||
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == task.TrialReadingCriterionId || t.TrialReadingCriterion.CriterionType == CriterionType.RECIST1Pointt1_MB);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//默认影响的都是该标准的任务
|
|
||||||
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == task.TrialReadingCriterionId);
|
|
||||||
}
|
|
||||||
|
|
||||||
//PM 才允许操作
|
//PM 才允许操作
|
||||||
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager)
|
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager)
|
||||||
|
@ -1670,50 +1658,16 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
//IR 申请1.1 基线重阅,影响附加评估所有的任务
|
//IR 申请1.1 基线重阅,影响附加评估所有的任务
|
||||||
var isIR1Point1AdditionalAssessmentBaseline = false;
|
var isIR1Point1AdditionalAssessmentBaseline = false;
|
||||||
|
|
||||||
//附加评估 IR 和PM 看到的影响列表不一样
|
|
||||||
if (criterionConfig.CriterionType == CriterionType.RECIST1Point1 && criterionConfig.IsAdditionalAssessment)
|
|
||||||
{
|
|
||||||
|
|
||||||
// IR 申请 PM 同意
|
|
||||||
if (((_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && applyId != null && await _visitTaskReReadingRepository.AnyAsync(t => t.Id == applyId && t.CreateUser.UserTypeEnum == UserTypeEnum.IndependentReviewer))
|
|
||||||
|| (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IndependentReviewer && applyId == null)))
|
|
||||||
{
|
|
||||||
|
|
||||||
// 1.1 基线任务影响BM任务
|
|
||||||
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && _subjectVisitRepository.Any(t => t.Id == filterObj.SourceSubjectVisitId && t.IsBaseLine == true))
|
|
||||||
{
|
|
||||||
|
|
||||||
isIR1Point1AdditionalAssessmentBaseline = true;
|
|
||||||
//filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId || t.TrialReadingCriterion.CriterionType == CriterionType.RECIST1Pointt1_MB);
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
// 1.1 非基线任务不影响BM任务
|
|
||||||
else
|
|
||||||
{
|
|
||||||
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
//(1、PM回退,PM申请重阅,SPM同意回退)
|
|
||||||
else
|
|
||||||
{
|
|
||||||
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId || t.TrialReadingCriterion.CriterionType == CriterionType.RECIST1Pointt1_MB);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
//默认影响的都是该标准的任务
|
|
||||||
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//重阅影响
|
//重阅影响
|
||||||
if (isReReading)
|
if (isReReading)
|
||||||
{
|
{
|
||||||
|
//默认影响的都是该标准的任务
|
||||||
|
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId);
|
||||||
|
|
||||||
|
|
||||||
//IR 申请 PM 同意 仅仅影响自己
|
//IR 申请 PM 同意 仅仅影响自己
|
||||||
|
@ -1738,7 +1692,6 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
filterExpression = filterExpression.And(t => t.Id == filterObj.Id || t.Id == filterObj.JudgeVisitTaskId);
|
filterExpression = filterExpression.And(t => t.Id == filterObj.Id || t.Id == filterObj.JudgeVisitTaskId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//throw new BusinessValidationFailedException("仅允许PM 同意 IR 申请的任务");
|
//throw new BusinessValidationFailedException("仅允许PM 同意 IR 申请的任务");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -1747,8 +1700,6 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
throw new BusinessValidationFailedException(_localizer["VisitTask_UndefinedList"]);
|
throw new BusinessValidationFailedException(_localizer["VisitTask_UndefinedList"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1805,146 +1756,6 @@ namespace IRaCIS.Core.Application.Service.Allocation
|
||||||
{
|
{
|
||||||
influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon;
|
influenceTask.OptType = influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned ? ReReadingOrBackOptType.Return : ReReadingOrBackOptType.Abandon;
|
||||||
|
|
||||||
|
|
||||||
#region 变更前 注释
|
|
||||||
|
|
||||||
//if (isReReading)
|
|
||||||
//{
|
|
||||||
|
|
||||||
// if ((_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && applyId != null) || (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IndependentReviewer && applyId == null))
|
|
||||||
// {
|
|
||||||
// //有序
|
|
||||||
// if (criterionConfig.IsReadingTaskViewInOrder)
|
|
||||||
// {
|
|
||||||
// if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
|
||||||
// {
|
|
||||||
// influenceTask.OptType = ReReadingOrBackOptType.Return;
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// influenceTask.OptType = ReReadingOrBackOptType.Abandon;
|
|
||||||
// }
|
|
||||||
// //else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading)
|
|
||||||
// //{
|
|
||||||
// // influenceTask.OptType = ReReadingOrBackOptType.Abandon;
|
|
||||||
// //}
|
|
||||||
// //else
|
|
||||||
// //{
|
|
||||||
// // throw new BusinessValidationFailedException("IR 申请重阅,不会影响到后续未读的任务,当前影响列表有未读的任务,请核查");
|
|
||||||
// //}
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
|
||||||
// {
|
|
||||||
// influenceTask.OptType = ReReadingOrBackOptType.Return;
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// influenceTask.OptType = ReReadingOrBackOptType.Abandon;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// if (((_userInfo.UserTypeEnumInt == (int)UserTypeEnum.SPM || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CPM) && applyId != null) || (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ProjectManager && applyId == null))
|
|
||||||
// {
|
|
||||||
// //有序
|
|
||||||
// if (criterionConfig.IsReadingTaskViewInOrder)
|
|
||||||
// {
|
|
||||||
// //申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配
|
|
||||||
// if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != filterObj.VisitTaskNum)
|
|
||||||
// {
|
|
||||||
// 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
|
|
||||||
// {
|
|
||||||
// if (influenceTask.ReadingTaskState == ReadingTaskState.HaveSigned)
|
|
||||||
// {
|
|
||||||
// influenceTask.OptType = ReReadingOrBackOptType.Return;
|
|
||||||
// }
|
|
||||||
// else
|
|
||||||
// {
|
|
||||||
// influenceTask.OptType = ReReadingOrBackOptType.Abandon;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
//}
|
|
||||||
////PM退回
|
|
||||||
//else
|
|
||||||
//{
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// //有序
|
|
||||||
// if (criterionConfig.IsReadingTaskViewInOrder)
|
|
||||||
// {
|
|
||||||
// //申请的访视 要不是重阅重置,要不就是失效 不会存在取消分配
|
|
||||||
// if (influenceTask.ReadingCategory == ReadingCategory.Visit && influenceTask.VisitTaskNum != filterObj.VisitTaskNum)
|
|
||||||
// {
|
|
||||||
// //后续访视处理访视
|
|
||||||
// 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;
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
|
||||||
//}
|
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue