PM 申请重阅 SPM 同意审批,除开1.1 附加评估
continuous-integration/drone/push Build is passing Details

Test_IRC_Net8
hang 2025-08-05 09:49:17 +08:00
parent 0e12f2cdac
commit 688c1d195c
2 changed files with 40 additions and 7 deletions

View File

@ -1741,8 +1741,11 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
}
else
{
//默认影响的都是该标准的任务
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == origenalTask.TrialReadingCriterionId);
if (requestReReadingType != RequestReReadingType.TrialGroupApply)
{
//默认影响的都是该标准的任务
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == origenalTask.TrialReadingCriterionId);
}
}
//PM申请 SPM / CPM审批 回退访视,因此这里不生成访视任务 影响多个标准的任务
@ -2661,13 +2664,16 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
//IR 申请1.1 基线重阅,影响附加评估所有的任务
var isIR1Point1AdditionalAssessmentBaseline = false;
//是IR 申请 PM 审批流程
var isIRApplyPMApprovalProcess = (IsPMOrAPm() && applyId != null && await _visitTaskReReadingRepository.AnyAsync(t => t.Id == applyId && t.CreateUserRole.UserTypeEnum == UserTypeEnum.IndependentReviewer))
|| (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IndependentReviewer && applyId == null);
//附加评估 IR 和PM 看到的影响列表不一样
if (criterionConfig.CriterionType == CriterionType.RECIST1Point1 && criterionConfig.IsAdditionalAssessment)
{
// IR 申请 PM 同意
if (((IsPMOrAPm() && applyId != null && await _visitTaskReReadingRepository.AnyAsync(t => t.Id == applyId && t.CreateUserRole.UserTypeEnum == UserTypeEnum.IndependentReviewer))
|| (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IndependentReviewer && applyId == null)))
if (isIRApplyPMApprovalProcess)
{
// 1.1 基线任务影响BM任务
@ -2695,13 +2701,11 @@ public class VisitTaskService(IRepository<VisitTask> _visitTaskRepository,
}
else
{
if (isReReading == true)
if (isReReading == true && isIRApplyPMApprovalProcess)
{
//默认影响的都是该标准的任务
filterExpression = filterExpression.And(t => t.TrialReadingCriterionId == filterObj.TrialReadingCriterionId);
}
}

View File

@ -130,6 +130,35 @@ namespace IRaCIS.Core.Application.Service
return ResponseOutput.Ok();
}
//添加医学审核问题
[AllowAnonymous]
public async Task<IResponseOutput> AddReadingMedicineSystemQuestion([FromServices] IRepository<ReadingMedicineSystemQuestion> _readingMedicineSystemQuestion)
{
if (!_readingMedicineSystemQuestion.Any(t => t.CriterionTypeEnum == CriterionType.mRECISTHCC))
{
var list = _readingMedicineSystemQuestion.Where(t => t.CriterionTypeEnum == CriterionType.RECIST1Point1).ToList();
var initOrder = 500;
foreach (var item in list)
{
item.Id = NewId.NextSequentialGuid();
item.CriterionTypeEnum = CriterionType.mRECISTHCC;
item.CreateTime = DateTime.Now;
item.ShowOrder = initOrder;
initOrder = initOrder + 1;
}
await _readingMedicineSystemQuestion.AddRangeAsync(list,true);
}
return ResponseOutput.Ok();
}
/// <summary>
/// IQC 回退到影像上传
/// </summary>