修改
This commit is contained in:
+28
-2
@@ -2436,6 +2436,9 @@ namespace IRaCIS.Application.Services
|
||||
// 既往任务Id
|
||||
List<Guid> pastResultTaskIdList = new List<Guid>();
|
||||
|
||||
// 冻结任务Id
|
||||
List<Guid> reportRelatedTaskIdList = new List<Guid>();
|
||||
|
||||
|
||||
if (isReadingTaskViewInOrder)
|
||||
{
|
||||
@@ -2447,13 +2450,29 @@ namespace IRaCIS.Application.Services
|
||||
x.DoctorUserId == taskInfo.DoctorUserId &&
|
||||
x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId &&
|
||||
x.ReadingTaskState == ReadingTaskState.HaveSigned &&
|
||||
(x.TaskState == TaskState.Effect||x.TaskState== TaskState.Freeze) &&
|
||||
x.TaskState == TaskState.Effect &&
|
||||
x.IsSelfAnalysis == taskInfo.IsSelfAnalysis &&
|
||||
x.IsAnalysisCreate == taskInfo.IsAnalysisCreate &&
|
||||
x.ReadingCategory == taskInfo.ReadingCategory &&
|
||||
x.Id != taskInfo.Id
|
||||
).OrderBy(x=>x.VisitTaskNum).ThenBy(x=>x.TaskState).Select(x => x.Id).ToListAsync();
|
||||
|
||||
|
||||
reportRelatedTaskIdList = await _visitTaskRepository.Where(x =>
|
||||
x.TrialId == taskInfo.TrialId &&
|
||||
x.SubjectId == taskInfo.SubjectId &&
|
||||
x.VisitTaskNum <= taskInfo.VisitTaskNum &&
|
||||
x.ArmEnum == taskInfo.ArmEnum &&
|
||||
x.DoctorUserId == taskInfo.DoctorUserId &&
|
||||
x.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId &&
|
||||
x.ReadingTaskState == ReadingTaskState.HaveSigned &&
|
||||
(x.TaskState == TaskState.Effect||x.TaskState==TaskState.Freeze) &&
|
||||
x.IsSelfAnalysis == taskInfo.IsSelfAnalysis &&
|
||||
x.IsAnalysisCreate == taskInfo.IsAnalysisCreate &&
|
||||
x.ReadingCategory == taskInfo.ReadingCategory &&
|
||||
x.Id != taskInfo.Id
|
||||
).OrderBy(x => x.VisitTaskNum).ThenBy(x => x.TaskState).Select(x => x.Id).ToListAsync();
|
||||
|
||||
switch (taskInfo.ReadingCategory)
|
||||
{
|
||||
case ReadingCategory.Visit:
|
||||
@@ -2485,7 +2504,7 @@ namespace IRaCIS.Application.Services
|
||||
{
|
||||
|
||||
|
||||
|
||||
ReportRelatedTaskIds = JsonConvert.SerializeObject(reportRelatedTaskIdList),
|
||||
PastResultTaskIds = JsonConvert.SerializeObject(pastResultTaskIdList),
|
||||
RelatedVisitTaskIds = JsonConvert.SerializeObject(relatedVisitTaskIdList),
|
||||
});
|
||||
@@ -2504,6 +2523,13 @@ namespace IRaCIS.Application.Services
|
||||
RelevanceType = RelevanceType.Related,
|
||||
}));
|
||||
|
||||
await _readingTaskRelationRepository.AddRangeAsync(reportRelatedTaskIdList.Select(x => new ReadingTaskRelation()
|
||||
{
|
||||
RelevanceTaskId = x,
|
||||
TaskId = visitTaskId,
|
||||
RelevanceType = RelevanceType.ReportResult,
|
||||
}));
|
||||
|
||||
|
||||
await _visitTaskRepository.SaveChangesAsync();
|
||||
}
|
||||
|
||||
@@ -300,7 +300,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||
);
|
||||
if(visitTaskInfo.ReadingTaskState==ReadingTaskState.HaveSigned)
|
||||
{
|
||||
taskquery = _visitTaskRepository.Where(x => visitTaskInfo.RelatedVisitTaskIdList.Contains(x.Id)||x.Id==visitTaskInfo.Id);
|
||||
taskquery = _visitTaskRepository.Where(x => visitTaskInfo.ReportRelatedTaskIdList.Contains(x.Id)||x.Id==visitTaskInfo.Id);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user