diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs index b7c04feef..070e20a71 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingImageTaskViewModel.cs @@ -170,6 +170,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public string Answer { get; set; } + public bool IsHighlight { get; set; } = false; + public bool IsGlobalChange { get; set; } = false; /// diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs index fb946bcc3..e59d61d3f 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs @@ -435,6 +435,39 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate SetCrterionDictionaryGroup(y, dictionaryGroup); }); + // 处理标红 高亮 + #region 当第N个 存在被评估为NE的单个靶病灶 评估为 为是 之后 N+1 之后的最低点访视 都标红 + + var index = result.TaskQuestions.SelectMany(x => x.Childrens).Where(x => x.QuestionType == QuestionType.NETarget).SelectMany(x => x.Answer).ToList().FindIndex(x => x.Answer == ExistOrNA.Exist.GetEnumInt()); + + if (index >= 0) + { + result.TaskQuestions.ForEach(x => + { + x.Childrens.ForEach(y => + { + + if (y.QuestionType == QuestionType.LowVisit) + { + int idx = 0; + y.Answer.ForEach(z => + { + if (idx > index) + { + z.IsHighlight = true; + } + idx++; + }); + } + + + }); + + }); + } + #endregion + + return result; }