diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs index 3bc943709..1d18eaa1a 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingCalculateViewModel.cs @@ -25,7 +25,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public decimal LowSod { get; set; } /// - /// 是否存在靶病灶 + /// 是否存在靶病灶 (当前访视 至少一个靶病灶的状态为存在) /// public bool ExistsTargetLesion { get; set; } diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs index 0cd5bc4c5..9ebeb8293 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/RECIST1Point1CalculateService.cs @@ -1438,8 +1438,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate TargetLesionCalculateDto resultData = new TargetLesionCalculateDto() { - // 是否存在靶病灶 - ExistsTargetLesion= tableQuestion.Count()>0, + // 是否存在靶病灶 (当前访视 至少一个靶病灶的状态为存在) + ExistsTargetLesion=false, // 最低SOD LowSod=(await GetLowSODVisit(inDto)).Select(x=>x.SOD).FirstOrDefault(), @@ -1506,6 +1506,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate foreach (var item in tableQuestion) { + // 是否存在靶病灶 (当前访视 至少一个靶病灶的状态为存在) + resultData.ExistsTargetLesion = resultData.ExistsTargetLesion || item.TableQuestionList.Where(x => x.QuestionMark == QuestionMark.State).Select(x => x.Answer).FirstOrDefault() == NoTargetState.Exist.GetEnumInt(); + if (item.TableQuestionList.Any(x => x.QuestionMark == QuestionMark.IsLymph && x.Answer.EqEnum(YesOrNoOrNa.Yes))) { // 淋巴结的短径