Uat_Study
parent
b988f80e94
commit
bd2aed9637
|
@ -200,7 +200,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
//后续未分配的访视 PM 有序退回 或者PM 有序 申请重阅
|
||||
|
||||
var notAllocateList = await _visitTaskRepository.Where(t => t.TrialId == trialId && t.SubjectId == subjectVisit.SubjectId && t.TaskState == TaskState.Effect && t.DoctorUserId == null
|
||||
&& t.VisitTaskNum > subjectVisit.VisitNum && t.ReadingCategory == ReadingCategory.Visit, true).ToListAsync();
|
||||
&& t.VisitTaskNum >= subjectVisit.VisitNum && t.ReadingCategory == ReadingCategory.Visit, true).ToListAsync();
|
||||
|
||||
|
||||
foreach (var notAllocate in notAllocateList)
|
||||
|
@ -211,6 +211,8 @@ namespace IRaCIS.Core.Application.Service
|
|||
notAllocate.DoctorUserId = notAllocate.ArmEnum == Arm.DoubleReadingArm1 ? task1.DoctorUserId : task2.DoctorUserId;
|
||||
}
|
||||
|
||||
//先回退访视1 再回退基线 这个时候 如果访视1都未做 这个时候是不需要生成任务的
|
||||
|
||||
//后续 废弃的任务 重阅重置,或者失效的 访视 需要重新生成
|
||||
|
||||
var needAddTaskList = await _visitTaskRepository.Where(t => t.TrialId == trialId && t.SubjectId == subjectVisit.SubjectId && (t.TaskState == TaskState.Adbandon || t.TaskState == TaskState.HaveReturned) && t.VisitTaskNum > subjectVisit.VisitNum && t.ReadingCategory == ReadingCategory.Visit).ToListAsync();
|
||||
|
@ -226,8 +228,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
TrialId = trialId,
|
||||
SubjectId = subjectVisit.SubjectId,
|
||||
IsUrgent = subjectVisit.IsUrgent,
|
||||
TaskBlindName = subjectVisit.BlindName,
|
||||
TaskName = subjectVisit.VisitName,
|
||||
|
||||
VisitTaskNum = subjectVisit.VisitNum,
|
||||
ArmEnum = Arm.DoubleReadingArm1,//特殊
|
||||
Code = currentMaxCodeInt + 1,
|
||||
|
@ -235,8 +236,10 @@ namespace IRaCIS.Core.Application.Service
|
|||
TaskCode = AppSettings.GetCodeStr(currentMaxCodeInt + 1, nameof(VisitTask)),
|
||||
ReadingCategory = ReadingCategory.Visit,
|
||||
|
||||
TaskBlindName = latestTask.TaskBlindName,
|
||||
TaskName = latestTask.TaskName,
|
||||
|
||||
BlindSubjectCode=latestTask.BlindSubjectCode,
|
||||
BlindSubjectCode =latestTask.BlindSubjectCode,
|
||||
BlindTrialSiteCode=latestTask.BlindTrialSiteCode,
|
||||
IsAnalysisCreate= latestTask.IsAnalysisCreate,
|
||||
IsSelfAnalysis= latestTask.IsSelfAnalysis,
|
||||
|
@ -250,8 +253,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
TrialId = trialId,
|
||||
SubjectId = subjectVisit.SubjectId,
|
||||
IsUrgent = subjectVisit.IsUrgent,
|
||||
TaskBlindName = subjectVisit.BlindName,
|
||||
TaskName = subjectVisit.VisitName,
|
||||
|
||||
VisitTaskNum = subjectVisit.VisitNum,
|
||||
//CheckPassedTime = subjectVisit.CheckPassedTime,
|
||||
ArmEnum = Arm.DoubleReadingArm2,//特殊
|
||||
|
@ -261,6 +263,9 @@ namespace IRaCIS.Core.Application.Service
|
|||
ReadingCategory = ReadingCategory.Visit,
|
||||
|
||||
|
||||
TaskBlindName = latestTask.TaskBlindName,
|
||||
TaskName = latestTask.TaskName,
|
||||
|
||||
BlindSubjectCode = latestTask.BlindSubjectCode,
|
||||
BlindTrialSiteCode = latestTask.BlindTrialSiteCode,
|
||||
IsAnalysisCreate = latestTask.IsAnalysisCreate,
|
||||
|
|
|
@ -1426,6 +1426,7 @@ namespace IRaCIS.Core.Application.Service
|
|||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPut("{trialId:guid}/{taskId:guid}")]
|
||||
[UnitOfWork]
|
||||
public async Task<IResponseOutput> PMSetTaskBack(Guid trialId, Guid taskId)
|
||||
{
|
||||
|
||||
|
@ -1532,10 +1533,17 @@ namespace IRaCIS.Core.Application.Service
|
|||
{
|
||||
influenceTask.TaskState = TaskState.HaveReturned;
|
||||
}
|
||||
else
|
||||
else if (influenceTask.ReadingTaskState == ReadingTaskState.Reading)
|
||||
{
|
||||
influenceTask.TaskState = TaskState.Adbandon;
|
||||
}
|
||||
else
|
||||
{
|
||||
influenceTask.DoctorUserId = null;
|
||||
influenceTask.AllocateTime = null;
|
||||
influenceTask.SuggesteFinishedTime = null;
|
||||
influenceTask.TaskAllocationState = TaskAllocationState.NotAllocate;
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
|
|
Loading…
Reference in New Issue