iRECIST新病灶评估 修改
parent
c42c26d76a
commit
3a160c1913
|
@ -2634,7 +2634,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
ExistxIRECISTNewLesion = inDto.QuestionInfo.Where(x => x.LesionType == LesionType.TriggeringIRECSIT).SelectMany(x => x.TableRowInfoList).SelectMany(x=>x.TableQuestionList).Any(x => x.QuestionMark == QuestionMark.State && (x.Answer.EqEnum(NewLesionAfterTriggeringiRECSITState.Exist)||x.Answer.EqEnum(NewLesionAfterTriggeringiRECSITState.Equivocal))),
|
||||
};
|
||||
|
||||
// if(新靶病灶为ND&&新非靶病灶为ND&&其它既往新病灶为ND&&不存在触发iRECIST后新病灶)
|
||||
// if(新靶病灶为ND && 新非靶病灶为ND && 其它既往新病灶为ND && 不存在触发iRECIST后新病灶)
|
||||
if(inDto.QuestionInfo.Any(x=>x.QuestionType==QuestionType.NewTargetLesion&&x.Answer.EqEnum(NewTargetLesionAssessment.ND))
|
||||
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewNoTargetLesion && x.Answer.EqEnum(NewNoTargetLesionAssessment.ND))
|
||||
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.OtherNewTargetLesion && x.Answer.EqEnum(OtherPreviousNewLesionAssessment.ND))
|
||||
|
@ -2650,39 +2650,40 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
// 疗效为 iCPD
|
||||
result = NewLesionAssessment.iCPD;
|
||||
}
|
||||
// else if (前一访视新病灶评估为iCPD && (新靶病灶有存在病灶 || 新非靶病灶有存在状态病灶 || 其它既往新病灶有存在的病灶 || 触发iRECIST后新病灶有存在病灶))
|
||||
else if(data.LastTaskNewLesioniCPD &&
|
||||
(inDto.QuestionInfo.Where(x => x.LesionType == LesionType.NewTargetLesion).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList).Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(NewTargetLesionState.Exist))
|
||||
|| inDto.QuestionInfo.Where(x => x.LesionType == LesionType.NewNonTargetLesion).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList).Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(NewNoTargetLesionState.Exist))
|
||||
|| inDto.QuestionInfo.Where(x => x.LesionType == LesionType.OtherPreviousNewLesion).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList).Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(OtherPreviousNewLesionState.Exists))
|
||||
|| inDto.QuestionInfo.Where(x => x.LesionType == LesionType.TriggeringIRECSIT).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList).Any(x => x.QuestionMark == QuestionMark.State && x.Answer.EqEnum(NewLesionAfterTriggeringiRECSITState.Exist))
|
||||
)
|
||||
// else if (前一访视新病灶评估为iCPD && (新靶病灶评估为iCPD或iUPD || 新非靶病灶评估为iCPD或iUPD || 其它既往新病灶评估为iUPD || 触发iRECIST后新病灶评估为是))
|
||||
else if (data.LastTaskNewLesioniCPD &&
|
||||
(
|
||||
inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewTargetLesion && (x.Answer.EqEnum(NewTargetLesionAssessment.iCPD)|| x.Answer.EqEnum(NewTargetLesionAssessment.iUPD)))
|
||||
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewNoTargetLesion && (x.Answer.EqEnum(NewNoTargetLesionAssessment.iCPD)|| x.Answer.EqEnum(NewNoTargetLesionAssessment.iUPD)))
|
||||
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.OtherNewTargetLesion && x.Answer.EqEnum(OtherPreviousNewLesionAssessment.iUPD))
|
||||
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.IRECISTNewTargetLesion && x.Answer.EqEnum(NewLesionAfterTriggeringiRECSITAssessment.Yes))
|
||||
)
|
||||
)
|
||||
{
|
||||
// 疗效为 iCPD
|
||||
result = NewLesionAssessment.iCPD;
|
||||
}
|
||||
// else if (前一访视新病灶评估为iUPD && 新靶病灶上个访视评估为NE,本次访视评估为iUPD)
|
||||
else if(data.LastTaskNewLesioniUPD &&
|
||||
lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewTargetLesion && x.Answer.EqEnum(NewTargetLesionAssessment.NE))
|
||||
// else if (前一访视新病灶评估为iUPD && 新靶病灶上个访视评估为NE或ND,本次访视评估为iUPD)
|
||||
else if (data.LastTaskNewLesioniUPD &&
|
||||
lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewTargetLesion &&( x.Answer.EqEnum(NewTargetLesionAssessment.NE)|| x.Answer.EqEnum(NewTargetLesionAssessment.ND)))
|
||||
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewTargetLesion && x.Answer.EqEnum(NewTargetLesionAssessment.iUPD))
|
||||
)
|
||||
{
|
||||
// 疗效为 iCPD
|
||||
result = NewLesionAssessment.iCPD;
|
||||
}
|
||||
// else if (前一访视新病灶评估为iUPD && 新非靶病灶上个访视评估为NE,本次访视评估为iUPD)
|
||||
else if(data.LastTaskNewLesioniUPD
|
||||
&& lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewNoTargetLesion && x.Answer.EqEnum(NewNoTargetLesionAssessment.NE))
|
||||
// else if (前一访视新病灶评估为iUPD && 新非靶病灶上个访视评估为NE或ND,本次访视评估为iUPD)
|
||||
else if (data.LastTaskNewLesioniUPD
|
||||
&& lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewNoTargetLesion && (x.Answer.EqEnum(NewNoTargetLesionAssessment.NE)|| x.Answer.EqEnum(NewNoTargetLesionAssessment.ND)))
|
||||
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewNoTargetLesion && x.Answer.EqEnum(NewNoTargetLesionAssessment.iUPD))
|
||||
)
|
||||
{
|
||||
// 疗效为 iCPD
|
||||
result = NewLesionAssessment.iCPD;
|
||||
}
|
||||
// else if (前一访视新病灶评估为iUPD && 其它既往新病灶上个访视评估为NE或疑似,本次访视评估为iUPD)
|
||||
else if (data.LastTaskNewLesioniUPD
|
||||
&& lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.OtherNewTargetLesion && (x.Answer.EqEnum(OtherPreviousNewLesionAssessment.NE)|| x.Answer.EqEnum(OtherPreviousNewLesionAssessment.Equivocal)))
|
||||
// else if (前一访视新病灶评估为iUPD && 其它既往新病灶上个访视评估为NE、ND或疑似,本次访视评估为iUPD)
|
||||
else if (data.LastTaskNewLesioniUPD
|
||||
&& lastTaskCalculateDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.OtherNewTargetLesion && (x.Answer.EqEnum(OtherPreviousNewLesionAssessment.NE)|| x.Answer.EqEnum(OtherPreviousNewLesionAssessment.ND) || x.Answer.EqEnum(OtherPreviousNewLesionAssessment.Equivocal)))
|
||||
&& inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.OtherNewTargetLesion && x.Answer.EqEnum(OtherPreviousNewLesionAssessment.iUPD))
|
||||
)
|
||||
{
|
||||
|
@ -2698,8 +2699,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|||
// 疗效为 iCPD
|
||||
result = NewLesionAssessment.iCPD;
|
||||
}
|
||||
// else if (新靶病灶评估为iUPD || 新非靶病灶评估为iUPD || 其它既往新病灶评估为iUPD || 触发iRECIST后新病灶评估上个访视评估为是)
|
||||
else if (inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewTargetLesion && x.Answer.EqEnum(NewTargetLesionAssessment.iUPD))
|
||||
// else if (新靶病灶评估为iUPD || 新非靶病灶评估为iUPD || 其它既往新病灶评估为iUPD || 触发iRECIST后新病灶评估为是)
|
||||
else if (inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewTargetLesion && x.Answer.EqEnum(NewTargetLesionAssessment.iUPD))
|
||||
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.NewNoTargetLesion && x.Answer.EqEnum(NewNoTargetLesionAssessment.iUPD))
|
||||
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.OtherNewTargetLesion && x.Answer.EqEnum(OtherPreviousNewLesionAssessment.iUPD))
|
||||
|| inDto.QuestionInfo.Any(x => x.QuestionType == QuestionType.IRECISTNewTargetLesion && x.Answer.EqEnum(NewLesionAfterTriggeringiRECSITAssessment.Yes))
|
||||
|
|
Loading…
Reference in New Issue