修改计算
parent
5cd4fde48a
commit
70f682edd6
|
@ -1970,7 +1970,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
//无需标记,自主选择
|
||||
else
|
||||
{
|
||||
result = PET5PSScore.X;
|
||||
result = PET5PSScore.One;
|
||||
}
|
||||
return result.GetEnumInt();
|
||||
}
|
||||
|
@ -2476,7 +2476,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
TargetAssessment result = TargetAssessment.SD;
|
||||
|
||||
//1、基线非淋巴结靶病灶不存在,或者当前访视非淋巴结靶病灶全部消失;
|
||||
//或者当前访视非淋巴结靶病灶全部消失;
|
||||
//并且 2.当前访视淋巴结靶病灶的状态全部变为“消失”。
|
||||
|
||||
var eqCR = true;
|
||||
|
@ -2486,7 +2486,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
{
|
||||
if (item.TableQuestionList.Any(x => x.QuestionMark == QuestionMark.IsLymph && x.Answer.EqEnum(YesOrNoOrNa.No)))
|
||||
{
|
||||
// 基线非淋巴结靶病灶不存在,或者当前访视非淋巴结靶病灶全部消失;
|
||||
// 或者当前访视非淋巴结靶病灶全部消失;
|
||||
eqCR = eqCR && item.TableQuestionList.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(TargetState.Loss));
|
||||
}
|
||||
spd += (item.TableQuestionList.Where(x => x.QuestionMark == QuestionMark.PPD).Select(x => x.Answer).FirstOrDefault()).IsNullOrEmptyReturn0();
|
||||
|
@ -2497,7 +2497,6 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
}
|
||||
}
|
||||
// 1、与基线相比SPD变化的百分比 ≥50%,;
|
||||
// 并且 当前访视没有任何一个状态为“疾病进展”的靶病灶
|
||||
var eqPR = false;
|
||||
|
||||
if (inDto.IsBaseLine)
|
||||
|
@ -2520,7 +2519,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
|
||||
if (baseLineSPD > 0)
|
||||
{
|
||||
eqPR = (presentSPD - baseLineSPD) / baseLineSPD > 0.5m && !tableQuestions.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.Equals(TargetState.DiseaseProgression));
|
||||
eqPR = (presentSPD - baseLineSPD) / baseLineSPD > 0.5m;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2536,22 +2535,20 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
{
|
||||
result = TargetAssessment.PD;
|
||||
}
|
||||
//当前访视没有任何一个状态为“疾病进展”的靶病灶;
|
||||
|
||||
//当前访视存在至少一个状态为“不可评估”的靶病灶。
|
||||
else if (
|
||||
!tableQuestions.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(TargetState.DiseaseProgression))&&
|
||||
tableQuestions.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(TargetState.UnableEvaluate)))
|
||||
{
|
||||
result = TargetAssessment.NE;
|
||||
}
|
||||
//1、基线非淋巴结靶病灶不存在,或者当前访视非淋巴结靶病灶全部消失;
|
||||
//当前访视非淋巴结靶病灶全部消失;
|
||||
//并且 2.当前访视淋巴结靶病灶的状态全部变为“消失”。
|
||||
else if (eqCR)
|
||||
{
|
||||
result = TargetAssessment.CR;
|
||||
}
|
||||
// 1、与基线相比SPD变化的百分比 ≥50%,;
|
||||
// 并且 当前访视没有任何一个状态为“疾病进展”的靶病灶
|
||||
// 与基线相比SPD变化的百分比 ≥50%,;
|
||||
else if (eqPR)
|
||||
{
|
||||
result = TargetAssessment.PR;
|
||||
|
@ -2593,10 +2590,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
{
|
||||
result = NoTargetAssessment.PD;
|
||||
}
|
||||
// 1、随访没有任何一个状态为“显著增大”的非靶病灶;
|
||||
// 2、随访存在至少一个状态为“不可评估”的非靶病灶
|
||||
else if (!tableQuestions.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(NoTargetState.Increase))
|
||||
&& tableQuestions.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(NoTargetState.UnableEvaluate)))
|
||||
|
||||
// 随访存在至少一个状态为“不可评估”的非靶病灶
|
||||
else if (tableQuestions.Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(NoTargetState.UnableEvaluate)))
|
||||
{
|
||||
result = NoTargetAssessment.NE;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue