diff --git a/Lugano/1、靶病灶评估.cs b/Lugano/1、靶病灶评估.cs deleted file mode 100644 index b5813e9..0000000 --- a/Lugano/1、靶病灶评估.cs +++ /dev/null @@ -1,30 +0,0 @@ - -"默认SD" - -if(当前访视是基线) -{ - "NA"; -} -else if(基线未选择靶病灶) -{ - "ND"; -} -else if(任一单个病灶进展即可) -{ - "PD"; -} -else if(当前访视存在至少一个状态为“不可评估”的靶病灶) -{ - "NE"; -} -else if(当前访视非淋巴结靶病灶全部消失 && (当前访视淋巴结靶病灶的状态全部变为“消失” 或者 "太小" )) -{ - "CR"; -} -else if(与基线相比SPD变化的百分比 <=- 50% ) -{ - "PR"; -} - -类似条件: -1、(当前访视非淋巴结靶病灶全部消失&&当前访视淋巴结靶病灶的状态全部变为“消失”)||(基线未选非淋巴结靶病灶&&当前访视淋巴结靶病灶的状态全部变为“消失”)||(当前访视非淋巴结靶病灶全部消失&&基线为选择淋巴结靶病灶”) diff --git a/Lugano/2、非靶病灶评估.cs b/Lugano/2、非靶病灶评估.cs deleted file mode 100644 index 173eed8..0000000 --- a/Lugano/2、非靶病灶评估.cs +++ /dev/null @@ -1,24 +0,0 @@ -if(当前访视是基线) -{ - "NA"; -} -else if(基线未选择非靶病灶) -{ - "ND"; -} -else if(随访至少存在一个状态为“显著增大”的非靶病灶) -{ - "PD"; -} -else if( 随访存在至少一个状态为“不可评估”的非靶病灶) -{ - "NE"; -} -else if(所有单个病灶/病灶组状态评估状态为“消失”) //当前访视非靶病灶状态为消失的数量==非靶病灶的数量 -{ - "CR"; -} -else -{ - "PR/SD"; -} \ No newline at end of file diff --git a/Lugano/3、新病灶评估.cs b/Lugano/3、新病灶评估.cs deleted file mode 100644 index 02bb309..0000000 --- a/Lugano/3、新病灶评估.cs +++ /dev/null @@ -1,20 +0,0 @@ -if(当前访视是基线) -{ - "NA"; -} -else if(当前访视存在至少一个明确新病灶) -{ - "是"; -} -else if(只要有任何一个新病灶状态为“无法评估”) -{ - "无法评估"; -} -else if(当前访视不存在明确新病灶且存在至少一个疑似新病灶) -{ - "疑似"; -} -else -{ - "否"; -} \ No newline at end of file diff --git a/Lugano/4、脾脏评估.cs b/Lugano/4、脾脏评估.cs deleted file mode 100644 index 013e2da..0000000 --- a/Lugano/4、脾脏评估.cs +++ /dev/null @@ -1 +0,0 @@ -return "脾脏状态"; \ No newline at end of file diff --git a/Lugano/5、肝脏评估.cs b/Lugano/5、肝脏评估.cs deleted file mode 100644 index 1cf823a..0000000 --- a/Lugano/5、肝脏评估.cs +++ /dev/null @@ -1 +0,0 @@ -return "肝脏状态"; \ No newline at end of file diff --git a/Lugano/6、CMRI总体评估实现代码.cs b/Lugano/6、CMRI总体评估实现代码.cs deleted file mode 100644 index ea3812d..0000000 --- a/Lugano/6、CMRI总体评估实现代码.cs +++ /dev/null @@ -1,213 +0,0 @@ -public async Task CTMRIEvaluation(ReadingCalculateDto inDto) - { - if (inDto.IsBaseLine) - { - return CTMRIOverallAssessment.NA.GetEnumInt(); - } - // 靶病灶评估 - var targetEvaluation = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.TargetLesion).Select(x => x.Answer).FirstOrDefault(); - - // 非靶病灶评估 - var noTargetEvaluation = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.NoTargetLesion).Select(x => x.Answer).FirstOrDefault(); - - // 存在新病灶 - var existsNewTarget = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.NewLesionEvaluation).Select(x => x.Answer).FirstOrDefault(); - - // 肝脏评估 - var liverEvaluation = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.LiverAssessment).Select(x => x.Answer).FirstOrDefault(); - - // 脾脏评估 - var spleenEvaluation = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.SplenicEvaluation).Select(x => x.Answer).FirstOrDefault(); - - List data = new List() { - - //ND ND 否/疑似 正常 正常 ND - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.ND }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.No, NewLesionAssessment.Suspected }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Normal }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.ND }), - }, - - //PD 任一结果 任一结果 任一结果 任一结果 PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.PD }), - Column2=ReadingCommon.EnumToString(new List() { }), - Column3=ReadingCommon.EnumToString(new List() { }), - Column4=ReadingCommon.EnumToString(new List() { }), - Column5=ReadingCommon.EnumToString(new List() { }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PD }), - }, - //任一结果 PD 任一结果 任一结果 任一结果 PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.PD }), - Column3=ReadingCommon.EnumToString(new List() {}), - Column4=ReadingCommon.EnumToString(new List() { }), - Column5=ReadingCommon.EnumToString(new List() { }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PD }), - }, - //任一结果 任一结果 是 任一结果 任一结果 PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { }), - Column2=ReadingCommon.EnumToString(new List() { }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.Yes }), - Column4=ReadingCommon.EnumToString(new List() { }), - Column5=ReadingCommon.EnumToString(new List() { }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PD }), - }, - //任一结果 任一结果 任一结果 显著增大 任一结果 PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { }), - Column2=ReadingCommon.EnumToString(new List() { }), - Column3=ReadingCommon.EnumToString(new List() { }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Increase }), - Column5=ReadingCommon.EnumToString(new List() { }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PD }), - }, - //任一结果 任一结果 任一结果 任一结果 显著增大 PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { }), - Column2=ReadingCommon.EnumToString(new List() { }), - Column3=ReadingCommon.EnumToString(new List() {}), - Column4=ReadingCommon.EnumToString(new List() { }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Increase }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PD }), - }, - //CR CR/ND 否 正常 正常 CR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.CR }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.CR, NoTargetAssessment.ND }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.No }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Normal }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.CR }), - }, - //ND CR 否 正常 正常 CR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.CR }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.No }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Normal }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.CR }), - }, - //NE 非PD 否/疑似/无法评估 非显著增大 非显著增大 NE - new CalculationDto(){ - NotEq=new List(){ 2,4,5}, - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.NE }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.PD }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.No,NewLesionAssessment.Suspected, NewLesionAssessment.NE}), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Increase }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Increase }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.NE }), - }, - //ND NE 否/疑似/无法评估(不为是) 正常/稳定/无法评估/部分缓解(非显著增大) 正常/稳定/无法评估/部分缓解(非显著增大) NE - new CalculationDto(){ - NotEq=new List(){ 3,4,5}, - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.Yes }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Increase }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Increase }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.NE }), - }, - //ND ND 无法评估 正常/稳定/无法评估/部分缓解(非显著增大) 正常/稳定/无法评估/部分缓解(非显著增大) NE - new CalculationDto(){ - NotEq=new List(){ 4,5}, - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.ND }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.NE }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Increase }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Increase }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.NE }), - }, - //ND ND 否/疑似 无法评估 正常/稳定/无法评估/部分缓解(非显著增大) NE - new CalculationDto(){ - NotEq=new List(){ 5}, - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.ND }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.No,NewLesionAssessment.Suspected }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.NotEvaluable }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Increase }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.NE }), - }, - // ND ND 否/疑似 正常/稳定 NE NE - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.ND }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.No,NewLesionAssessment.Suspected }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal,LiverAssessment.Stabilization }), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.NotEvaluable }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.NE }), - }, - //PR 非PD 否/疑似/无法评估(不为是) 正常/稳定 正常/部分缓解 PR - new CalculationDto(){ - NotEq=new List(){ 2,3}, - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.PR }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.PD }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.Yes }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal,LiverAssessment.Stabilization}), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Normal,SpleenAssessment.Remission }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PR }), - }, - //CR (PR/SD)或者NE 否/疑似/无法评估(不为是) 正常/部分缓解 正常/部分缓解 PR - new CalculationDto(){ - NotEq=new List(){ 3}, - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.CR }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.PRSD,NoTargetAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.Yes,NewLesionAssessment.Yes }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal,LiverAssessment.Stabilization}), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Normal,SpleenAssessment.Remission }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PR }), - }, - //CR CR/ND 疑似/无法评估 正常/稳定 正常/部分缓解 PR - new CalculationDto(){ - - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.CR }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.CR,NoTargetAssessment.ND }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.Suspected, NewLesionAssessment.NE }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal,LiverAssessment.Stabilization}), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Normal,SpleenAssessment.Remission }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PR }), - }, - // ND CR 疑似/无法评估 正常/稳定 正常/部分缓解 PR - new CalculationDto(){ - - Column1=ReadingCommon.EnumToString(new List() { TargetAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { NoTargetAssessment.CR }), - Column3=ReadingCommon.EnumToString(new List() { NewLesionAssessment.Suspected, NewLesionAssessment.NE }), - Column4=ReadingCommon.EnumToString(new List() { LiverAssessment.Normal,LiverAssessment.Stabilization}), - Column5=ReadingCommon.EnumToString(new List() { SpleenAssessment.Normal,SpleenAssessment.Remission }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PR }), - }, - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { }), - Column2=ReadingCommon.EnumToString(new List() { }), - Column3=ReadingCommon.EnumToString(new List() { }), - Column4=ReadingCommon.EnumToString(new List() { }), - Column5=ReadingCommon.EnumToString(new List() { }), - Column6=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.SD }), - }, - }; - - var index= data.FindIndex(x => - (x.NotEq.Contains(1) ? !x.Column1.Contains(targetEvaluation) : x.Column1.Contains(targetEvaluation) || x.Column1.Count() == 0) && - (x.NotEq.Contains(2) ? !x.Column2.Contains(noTargetEvaluation) : x.Column2.Contains(noTargetEvaluation) || x.Column2.Count() == 0) && - (x.NotEq.Contains(3) ? !x.Column3.Contains(existsNewTarget) : x.Column3.Contains(existsNewTarget) || x.Column3.Count() == 0) && - (x.NotEq.Contains(4) ? !x.Column4.Contains(liverEvaluation) : x.Column4.Contains(liverEvaluation) || x.Column4.Count() == 0) && - (x.NotEq.Contains(5) ? !x.Column5.Contains(spleenEvaluation) : x.Column5.Contains(spleenEvaluation) || x.Column5.Count() == 0)) - ; - Console.WriteLine(index); - var result = data.Where(x => - (x.NotEq.Contains(1) ? !x.Column1.Contains(targetEvaluation) : x.Column1.Contains(targetEvaluation) || x.Column1.Count() == 0) && - (x.NotEq.Contains(2) ? !x.Column2.Contains(noTargetEvaluation) : x.Column2.Contains(noTargetEvaluation) || x.Column2.Count() == 0) && - (x.NotEq.Contains(3) ? !x.Column3.Contains(existsNewTarget) : x.Column3.Contains(existsNewTarget) || x.Column3.Count() == 0) && - (x.NotEq.Contains(4) ? !x.Column4.Contains(liverEvaluation) : x.Column4.Contains(liverEvaluation) || x.Column4.Count() == 0) && - (x.NotEq.Contains(5) ? !x.Column5.Contains(spleenEvaluation) : x.Column5.Contains(spleenEvaluation) || x.Column5.Count() == 0)) - .Select(x => x.Column6.FirstOrDefault()) - .FirstOrDefault(); - return result??string.Empty; - } \ No newline at end of file diff --git a/Lugano/6、CTMRI总体评估-对应表.png b/Lugano/6、CTMRI总体评估-对应表.png deleted file mode 100644 index cc3fb8d..0000000 Binary files a/Lugano/6、CTMRI总体评估-对应表.png and /dev/null differ diff --git a/Lugano/7、FDG-PET评估-对应表.png b/Lugano/7、FDG-PET评估-对应表.png deleted file mode 100644 index 4c7e1c4..0000000 Binary files a/Lugano/7、FDG-PET评估-对应表.png and /dev/null differ diff --git a/Lugano/7、FDG-PET评估实现代码.cs b/Lugano/7、FDG-PET评估实现代码.cs deleted file mode 100644 index 2dace19..0000000 --- a/Lugano/7、FDG-PET评估实现代码.cs +++ /dev/null @@ -1,94 +0,0 @@ - public async Task GetFDGPETOverallAssessment(ReadingCalculateDto inDto) - { - - if (inDto.IsBaseLine) - { - return FDGPETOverallAssessment.NA.GetEnumInt(); - } - - var existPET =await GetExistPET(inDto); - if (existPET.EqEnum(ReadingYesOrNo.No)) - { - return FDGPETOverallAssessment.NE.GetEnumInt(); - } - - //FDGPETOverallAssessment result = FDGPETOverallAssessment.NA; - - // PET5PS - var PET5PS = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.PET5PS).Select(x => x.Answer).FirstOrDefault(); - - // UptakeChange - var UptakeChange = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.UptakeChange).Select(x => x.Answer).FirstOrDefault(); - - // EvidenceFocalFDG - var EvidenceFocalFDG = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.EvidenceFocalFDG).Select(x => x.Answer).FirstOrDefault(); - - - List data = new List() { - - //NE NE NE NE - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { PET5PSScore.NE }), - Column2=ReadingCommon.EnumToString(new List() { SUVChangeVSBaseline.NotEvaluable }), - Column3=ReadingCommon.EnumToString(new List() { FDGAffinityFociInBM.NE}), - Column4=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - }, - - //NE/5分/4分/3分/2分/1分/X NE/增大/减少/无明显变化 是,存在新的/复发的FDG高亲和性病灶 PMD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { PET5PSScore.NE,PET5PSScore.Five,PET5PSScore.Four,PET5PSScore.Three,PET5PSScore.Two,PET5PSScore.One,PET5PSScore.X, }), - Column2=ReadingCommon.EnumToString(new List() { SUVChangeVSBaseline.NotEvaluable,SUVChangeVSBaseline.Increase,SUVChangeVSBaseline.Decrease,SUVChangeVSBaseline.DidNotChange, }), - Column3=ReadingCommon.EnumToString(new List() { FDGAffinityFociInBM.YesHaveNew,}), - Column4=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMD }), - }, - - //5分/4分 增大 NE/(是,存在新的/复发的FDG高亲和性病灶)/(是,存在持续的局灶性变化)/否 PMD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { PET5PSScore.Five,PET5PSScore.Four, }), - Column2=ReadingCommon.EnumToString(new List() { SUVChangeVSBaseline.Increase }), - Column3=ReadingCommon.EnumToString(new List() { FDGAffinityFociInBM.NE, FDGAffinityFociInBM.YesHaveNew, FDGAffinityFociInBM.YesSustain, FDGAffinityFociInBM.No}), - Column4=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMD }), - }, - - //3分/2分/1分/X NE/增大/减少/无明显变化 否 CMR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { PET5PSScore.Three,PET5PSScore.Two,PET5PSScore.One,PET5PSScore.X, }), - Column2=ReadingCommon.EnumToString(new List() { SUVChangeVSBaseline.NotEvaluable,SUVChangeVSBaseline.Increase,SUVChangeVSBaseline.Decrease,SUVChangeVSBaseline.DidNotChange, }), - Column3=ReadingCommon.EnumToString(new List() { FDGAffinityFociInBM.No}), - Column4=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.CMR }), - }, - - //3分/2分/1分/X NE/增大/减少/无明显变化 是,存在持续的局灶性变化 PMR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { PET5PSScore.Three,PET5PSScore.Two,PET5PSScore.One,PET5PSScore.X, }), - Column2=ReadingCommon.EnumToString(new List() { SUVChangeVSBaseline.NotEvaluable,SUVChangeVSBaseline.Increase,SUVChangeVSBaseline.Decrease,SUVChangeVSBaseline.DidNotChange, }), - Column3=ReadingCommon.EnumToString(new List() { FDGAffinityFociInBM.YesSustain }), - Column4=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMR }), - }, - - //5分/4分 减少 否/是,存在持续的局灶性变化 PMR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { PET5PSScore.Five,PET5PSScore.Four }), - Column2=ReadingCommon.EnumToString(new List() { SUVChangeVSBaseline.Decrease }), - Column3=ReadingCommon.EnumToString(new List() { FDGAffinityFociInBM.No, FDGAffinityFociInBM.YesSustain}), - Column4=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMR }), - }, - - //5分/4分 无明显变化 否/是,存在持续的局灶性变化 NMR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { PET5PSScore.Five,PET5PSScore.Four }), - Column2=ReadingCommon.EnumToString(new List() { SUVChangeVSBaseline.DidNotChange }), - Column3=ReadingCommon.EnumToString(new List() { FDGAffinityFociInBM.No, FDGAffinityFociInBM.YesSustain}), - Column4=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NMR }), - }, - }; - - - var resultdata = data.Where(x => - (x.NotEq.Contains(1) ? !x.Column1.Contains(PET5PS) : x.Column1.Contains(PET5PS) || x.Column1.Count() == 0) && - (x.NotEq.Contains(2) ? !x.Column2.Contains(UptakeChange) : x.Column2.Contains(UptakeChange) || x.Column2.Count() == 0) && - (x.NotEq.Contains(3) ? !x.Column3.Contains(EvidenceFocalFDG) : x.Column3.Contains(EvidenceFocalFDG) || x.Column3.Count() == 0)) - .Select(x => x.Column4.FirstOrDefault()) - .FirstOrDefault(); - return resultdata ?? string.Empty; - } \ No newline at end of file diff --git a/Lugano/8、影像学整体肿瘤评估-对应表更新.png b/Lugano/8、影像学整体肿瘤评估-对应表更新.png deleted file mode 100644 index b2fd2dc..0000000 Binary files a/Lugano/8、影像学整体肿瘤评估-对应表更新.png and /dev/null differ diff --git a/Lugano/8、影像学整体肿瘤评估代码.cs b/Lugano/8、影像学整体肿瘤评估代码.cs deleted file mode 100644 index 78b9aa1..0000000 --- a/Lugano/8、影像学整体肿瘤评估代码.cs +++ /dev/null @@ -1,139 +0,0 @@ - public async Task GetImgOncology(ReadingCalculateDto inDto) - { - if (inDto.IsBaseLine) - { - return ImagingOverallAssessment_Lugano.NA.GetEnumInt(); - } - - //var imageQualityEvaluation = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.ImageQualityAssessment&&x.Answer.EqEnum(ImageQualityEvaluation.Abnormal)).FirstOrDefault(); - //if (imageQualityEvaluation != null) - //{ - // return ImagingOverallAssessment_Lugano.NE.GetEnumInt(); - //} - - // CTandMRI - var CTandMRIData = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.CTandMRI).Select(x => x.Answer).FirstOrDefault(); - - // FDGPET - var FDGPETData = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.FDGPET).Select(x => x.Answer).FirstOrDefault(); - - var baseLineTaskId = await GetBaseLineTaskId(inDto); - // lastFDGPET - var lastFDGPETData = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.LastFDGPET).Select(x => x.Answer).FirstOrDefault(); - - List data = new List() { - - //1、ND NE NE/NA ND - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.ND }), - }, - //2、ND/PD/CR/NE/PR/SD PMD PMD/CMR/PMR/NMR/NE/NA PMD/PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.ND, CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD}), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMD, }), - Column3=ReadingCommon.EnumToString(new List() {FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA }), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.PMDPD }), - }, - //3、ND/PD/CR/NE/PR/SD NE PMD PMD/PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.ND, CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD}), - Column2=ReadingCommon.EnumToString(new List() {FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMD, }), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.PMDPD }), - }, - //4、PD NE CMR/PMR/NMR/NE/NA PMD/PD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PD}), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE, }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA }), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.PMDPD }), - }, - //5、NE NE NE/NA NE - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.NE }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA }), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.NE }), - }, - - //6、CR/PR/SD/NE/ND/PD CMR CMR/PMR/NMR/PMD/NE/NA CMR/CR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.CR,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.ND,CTMRIOverallAssessment.PD }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.CMR }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA }), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.CMRCR }), - }, - //7、CR NE NE/NA CMR/CR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.CR }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA,}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.CMRCR }), - }, - - //8、 CR、PR、SD、NE、ND NE CMR CMR/CR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.CR,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.CMR,}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.CMRCR }), - }, - - - - - //9、ND/PD/CR/NE/PR/SD PMR PMD/CMR/PMR/NMR/NE/NA PMR/PR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.ND, CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMR }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.CMR,FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE,FDGPETOverallAssessment.NA, }), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.PMRPR }), - }, - //10、PR NE NE/NA PMR/PR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.PR }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA,}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.PMRPR }), - }, - //11、CR/PR/SD/NE/ND NE PMR PMR/PR - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.CR,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.ND }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMR}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.PMRPR }), - }, - //12、ND/PD/CR/NE/PR/SD NMR PMD/CMR/PMR/NMR/NE/NA NMR/SD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.ND,CTMRIOverallAssessment.PD,CTMRIOverallAssessment.CR,CTMRIOverallAssessment.NE,CTMRIOverallAssessment.PR,CTMRIOverallAssessment.SD }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NMR }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.PMD, FDGPETOverallAssessment.CMR, FDGPETOverallAssessment.PMR, FDGPETOverallAssessment.NMR, FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA,}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.NMRSD }), - }, - //13、CR/PR/SD/ND/NE NE NMR NMR/SD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.CR, CTMRIOverallAssessment.PR, CTMRIOverallAssessment.SD, CTMRIOverallAssessment.ND, CTMRIOverallAssessment.NE }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NMR}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.NMRSD }), - }, - //14、SD NE NE/NA NMR/SD - new CalculationDto(){ - Column1=ReadingCommon.EnumToString(new List() { CTMRIOverallAssessment.SD }), - Column2=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE }), - Column3=ReadingCommon.EnumToString(new List() { FDGPETOverallAssessment.NE, FDGPETOverallAssessment.NA,}), - Column4=ReadingCommon.EnumToString(new List() { ImagingOverallAssessment_Lugano.NMRSD }), - }, - }; - - var resultdata = data.Where(x => - (x.NotEq.Contains(1) ? !x.Column1.Contains(CTandMRIData) : x.Column1.Contains(CTandMRIData) || x.Column1.Count() == 0) && - (x.NotEq.Contains(2) ? !x.Column2.Contains(FDGPETData) : x.Column2.Contains(FDGPETData) || x.Column2.Count() == 0) && - (x.NotEq.Contains(3) ? !x.Column3.Contains(lastFDGPETData) : x.Column3.Contains(lastFDGPETData) || x.Column3.Count() == 0)) - .Select(x => x.Column4.FirstOrDefault()) - .FirstOrDefault(); - return resultdata ?? string.Empty; - } \ No newline at end of file diff --git a/Lugano/PET5PS评分.cs b/Lugano/PET5PS评分.cs deleted file mode 100644 index 0126e40..0000000 --- a/Lugano/PET5PS评分.cs +++ /dev/null @@ -1,24 +0,0 @@ -if(如果没有PET) -{ - "NE"; -} -else if(本访视病灶的 max SUVmax(所有病灶中最大的)> 2 * 肝脏血池SUVmax) -{ - "5"; -} -else if(本访视病灶的SUVmax(所有病灶中最大的)>肝脏血池SUVmax) -{ - "4"; -} -else if(纵隔血池SUVmax<本访视点病灶的max SUVmax(所有病灶中最大的)≤1*肝脏血池SUVmax) -{ - "3"; -} -else if(本访视点病灶的SUVmax(所有病灶中最大的)<纵隔血池SUVmax) -{ - "2"; -} -else -{ - "";//原来是1这里改为空 -} \ No newline at end of file diff --git a/Lugano/与基线相比摄取值变化.cs b/Lugano/与基线相比摄取值变化.cs deleted file mode 100644 index 589c68f..0000000 --- a/Lugano/与基线相比摄取值变化.cs +++ /dev/null @@ -1,16 +0,0 @@ -if(本访视无PET图像) -{ - "NE"; -} -else if(本访视PET评分 > 基线PET评分) -{ - "增大"; -} -else if(本访视PET评分 < 基线PET评分) -{ - "减小"; -} -else if(访视PET评分 = 基线PET评分) -{ - "无明显变化"; -} diff --git a/Lugano/普通靶病灶的疾病进展状态 - 前端.cs b/Lugano/普通靶病灶的疾病进展状态 - 前端.cs deleted file mode 100644 index bb34272..0000000 --- a/Lugano/普通靶病灶的疾病进展状态 - 前端.cs +++ /dev/null @@ -1,13 +0,0 @@ -// LDi LDi= 当前病灶的长径 -// LDi LDi= 当前病灶的短径 -// PPD PPD= 当前病灶的PPD - -if( 15mm < 当前靶病灶LDi ≤20mm && 相比最低点PPD增加百分比 ≥50% && (相比PPD最低点LDi增加值 ≥5 mm || 相比PPD最低点SDi增加值≥5 mm) ) -{ - // 疾病进展 -} -else if( 当前靶病灶LDi>20 mm && 相比最低点PPD增加百分比 ≥50% (相比PPD最低点LDi增加值 ≥10 mm || 相比PPD最低点SDi增加值Sdi ≥10 mm)) -{ - // 疾病进展 -} - diff --git a/Lugano/脾脏状态.cs b/Lugano/脾脏状态.cs deleted file mode 100644 index 76b28fd..0000000 --- a/Lugano/脾脏状态.cs +++ /dev/null @@ -1,44 +0,0 @@ -if(当前垂直径 ==0) -{ - "无法评估" -}else if(当前垂直径≤130mm) -{ - "正常"; -} -else if(当前访视是基线) -{ - "肿大" -}else -{ - if(基线 垂直径> 130 mm && 与基线相比脾垂直径变化值≥10 mm && 与基线相比脾肿大增加的百分比 > 50%) - { - "显著增大"; - } - else if(基线 垂直径> 130 mm - && 当前访视的前面访视中 存在垂直径≤130mm - && 与最低点相比脾脏垂直径的增加值≥20 mm - && 当前垂直径 > 130 mm) - { - "显著增大"; - } - else if(基线垂直径≤130mm && 与基线相比脾垂直径变化值≥20 mm && 当前垂直径 > 130 mm) - { - "显著增大"; - } - else if(基线期 状态为“肿大” - && 与基线相比脾肿大增加的百分比 < -50%) - { - "部分缓解"; - } - else - { - "稳定"; - } -} - -注: -1、与基线相比脾肿大增加的百分比的计算方式: -(1)当前垂直径大于130,且基线垂直径大于130时,=[(当前垂直径-130)-(基线垂直径-130)]/(基线垂直径-130); -(2)当前垂直径小于等于130,或者基线垂直径小于等于130时,赋值NA - -2、与基线相比脾垂直径变化值的计算方式:当前访视脾脏垂直径-基线脾脏垂直径 diff --git a/Lugano/融合靶病灶的疾病进展状态 - 前端.cs b/Lugano/融合靶病灶的疾病进展状态 - 前端.cs deleted file mode 100644 index 517b429..0000000 --- a/Lugano/融合靶病灶的疾病进展状态 - 前端.cs +++ /dev/null @@ -1,9 +0,0 @@ -// LDi LDi= 当前病灶的长径 -// LDi LDi= 当前病灶的短径 -// PPD PPD= 当前病灶的PPD - -if( 15mm < 当前靶病灶LDi && 相比最低点PPD增加百分比 ≥50% ) -{ - // 疾病进展 -} - diff --git a/Lugano/靶病灶分裂主病灶的疾病进展状态.cs b/Lugano/靶病灶分裂主病灶的疾病进展状态.cs deleted file mode 100644 index ce58efc..0000000 --- a/Lugano/靶病灶分裂主病灶的疾病进展状态.cs +++ /dev/null @@ -1,19 +0,0 @@ -// LDi LDi= 主病灶加分裂病灶的长径之和 -// LDi LDi= 主病灶加分裂病灶的短径之和 -// PPD PPD= 主病灶加分裂病灶的PPD之和 - -if( 15mm < 当前靶病灶LDi≤20mm && 相比最低点PPD增加百分比 ≥50% && (相比PPD最低点LDi增加值 ≥5 mm || 相比PPD最低点SDi增加值≥5 mm) ) -{ - // 疾病进展 -} -else if( 当前靶病灶LDi>20 mm && 相比最低点PPD增加百分比 ≥50% (相比PPD最低点LDi增加值 ≥10 mm || 相比PPD最低点SDi增加值Sdi ≥10 mm)) -{ - // 疾病进展 -} -else if -( - if(之前是疾病进展) - { - // 改为存在 - } -) diff --git a/Lugano/靶病灶融合主病灶的疾病进展状态.cs b/Lugano/靶病灶融合主病灶的疾病进展状态.cs deleted file mode 100644 index c368c65..0000000 --- a/Lugano/靶病灶融合主病灶的疾病进展状态.cs +++ /dev/null @@ -1,8 +0,0 @@ -// LDi LDi= 当前病灶的长径 -// LDi LDi= 当前病灶的短径 -// PPD PPD= 当前病灶的PPD - -if( 15mm < 当前靶病灶LDi && 相比最低点PPD增加百分比 ≥50% ) -{ - // 疾病进展 -} diff --git a/Lugano/骨髓中是否存在局灶性 FDG亲和病灶的证据.cs b/Lugano/骨髓中是否存在局灶性 FDG亲和病灶的证据.cs deleted file mode 100644 index 3e1523c..0000000 --- a/Lugano/骨髓中是否存在局灶性 FDG亲和病灶的证据.cs +++ /dev/null @@ -1,8 +0,0 @@ -if(不存在PET) -{ - "NE" -} -else -{ - "取骨髓中是否存在局灶性 FDG亲和病灶的证据 的结果" -} \ No newline at end of file diff --git a/RECIST1.1确定版本/20230202-RECIST1.1疗效对照表v1.0-确认版.xlsx b/RECIST1.1确定版本/20230202-RECIST1.1疗效对照表v1.0-确认版.xlsx deleted file mode 100644 index 9ae76f5..0000000 Binary files a/RECIST1.1确定版本/20230202-RECIST1.1疗效对照表v1.0-确认版.xlsx and /dev/null differ diff --git a/RECIST1.1确定版本/20230202-RECIST1.1默认部位列表-确认版.xlsx b/RECIST1.1确定版本/20230202-RECIST1.1默认部位列表-确认版.xlsx deleted file mode 100644 index 281392a..0000000 Binary files a/RECIST1.1确定版本/20230202-RECIST1.1默认部位列表-确认版.xlsx and /dev/null differ diff --git a/RECIST1.1确定版本/20230202RECIST 1.1_ECRF.xlsx b/RECIST1.1确定版本/20230202RECIST 1.1_ECRF.xlsx deleted file mode 100644 index 4696da4..0000000 Binary files a/RECIST1.1确定版本/20230202RECIST 1.1_ECRF.xlsx and /dev/null differ diff --git a/RECIST1.1确定版本/20230202病灶验证.xlsx b/RECIST1.1确定版本/20230202病灶验证.xlsx deleted file mode 100644 index b177d81..0000000 Binary files a/RECIST1.1确定版本/20230202病灶验证.xlsx and /dev/null differ diff --git a/RECIST1.1确定版本/20230210阅片单元配置表格问题及展示页面-RECIST1.1.xlsx b/RECIST1.1确定版本/20230210阅片单元配置表格问题及展示页面-RECIST1.1.xlsx deleted file mode 100644 index fb99391..0000000 Binary files a/RECIST1.1确定版本/20230210阅片单元配置表格问题及展示页面-RECIST1.1.xlsx and /dev/null differ diff --git a/RECIST1.1确定版本/20230306靶病灶疗效评估算法-确认版.cs b/RECIST1.1确定版本/20230306靶病灶疗效评估算法-确认版.cs deleted file mode 100644 index 0aef4bb..0000000 --- a/RECIST1.1确定版本/20230306靶病灶疗效评估算法-确认版.cs +++ /dev/null @@ -1,51 +0,0 @@ -靶病灶疗效评估算法-20230306确认版本: -if(基线没有靶病灶) -{ - 靶病灶疗效为 ND -}else -{ - 初始化靶病灶疗效为 SD - - if (与基线期SOD相比减小≥30 %) - { - 靶病灶疗效为 PR - } - - if (非淋巴结靶病灶长径之和 == 0 并且所有淋巴结靶病灶的短径 < 10且淋巴结非靶病灶全部消失) - { - 靶病灶疗效为 CR - } - - if (有被评估为NE的单个靶病灶) - { - 靶病灶疗效为 NE - } - - if (最低点SOD > 0) - { - if(比整体访视期间最低点SOD增加≥20 % 且与整个访视期间最低点相比增加的值≥5 mm) - { - 靶病灶疗效为 PD - } - } - else - { - //进入该分支最低点SOD=0 - if (当前访视SOD > 0 且与整个访视期间最低点相比增加的值≥5 mm) - { - 靶病灶疗效为PD - } - } - - if(上次访视点评估是CR) - { - if (当前访视点淋巴结病灶,至少一个淋巴结靶病灶短径≥10 mm 并且该淋巴结靶病灶短径绝对增加值≥5 mm) - { - 靶病灶疗效为 PD - } - if (当前访视点非淋巴结病灶至少一个非淋巴结靶病灶的长径>0 mm。) - { - 靶病灶疗效为 PD - } - } -} diff --git a/RECIST1.1确定版本/算法验证数据.xlsx b/RECIST1.1确定版本/算法验证数据.xlsx deleted file mode 100644 index d4edbe0..0000000 Binary files a/RECIST1.1确定版本/算法验证数据.xlsx and /dev/null differ diff --git a/iRECIST评估算法/IRECIST新非靶病灶评估.cs b/iRECIST评估算法/IRECIST新非靶病灶评估.cs deleted file mode 100644 index 4330417..0000000 --- a/iRECIST评估算法/IRECIST新非靶病灶评估.cs +++ /dev/null @@ -1,23 +0,0 @@ -if(所有新非靶病灶消失或一直不存在任何新非靶病灶时评估为该结果) -{ - 新非靶病灶疗效为 ND -} -else if (上一访视新非靶病灶评估为“iUPD” && 满足任一新非靶病灶状态为“增大”) -{ - 新非靶病灶疗效为 iCPD -} -else if (上一访视新非靶病灶评估为“iCPD”&& 有"存在"状态的新非靶病灶) -{ - 新非靶病灶疗效为 iCPD -} -else if (当有存在状态的新非靶病灶) -{ - 新非靶病灶疗效为 iUPD -} -else if (至少有一个新非靶病无法评估) -{ - 新非靶病灶疗效为 NE -}else -{ - //错误级别日志:项目、标准、受试者、阅片人、任务。当前新非靶病灶的病灶数据输出: -} \ No newline at end of file diff --git a/iRECIST评估算法/IRECIST新靶病灶评估.cs b/iRECIST评估算法/IRECIST新靶病灶评估.cs deleted file mode 100644 index 269ed08..0000000 --- a/iRECIST评估算法/IRECIST新靶病灶评估.cs +++ /dev/null @@ -1,23 +0,0 @@ -if(所有新靶病灶消失或一直不存在任何新靶病灶) -{ - 新靶病灶疗效为 ND -} -else if (上一访视新靶病灶评估为“iUPD” && iSOD的增加值>=5mm) //与最近一次新靶病灶评估为iUPD的访视相比本次访视iSOD增加不小于5mm -{ - 新靶病灶疗效为 iCPD -} -else if (上一访视新靶病灶评估为“iCPD”&& (当有“存在”状态的淋巴结新靶病灶||当有“存在”或“太小”状态的非淋巴结新靶病灶))//区分了淋巴结新靶病灶和非淋巴结新靶病灶 -{ - 新靶病灶疗效为 iCPD -} -else if (当有“存在”状态的淋巴结新靶病灶||当有“存在”或“太小”状态的非淋巴结新靶病灶)//区分了淋巴结新靶病灶和非淋巴结新靶病灶 -{ - 新靶病灶疗效为 iUPD -} -else if (至少有一个新靶病无法评估) -{ - 新靶病灶疗效为 NE -}else -{ - //错误级别日志:项目、标准、受试者、阅片人、任务。输出新靶病灶数据: -} diff --git a/iRECIST评估算法/IRECIST非靶病灶评估.cs b/iRECIST评估算法/IRECIST非靶病灶评估.cs deleted file mode 100644 index 75381b5..0000000 --- a/iRECIST评估算法/IRECIST非靶病灶评估.cs +++ /dev/null @@ -1,29 +0,0 @@ -if(基线没有非靶病灶) -{ - 非靶病灶疗效为 ND -} -else if (上次非靶病灶评估结果为iUPD && (任一非靶病灶状态评估为“进一步增大(iCPD)||出现至少1个上一访视未评估为“显著增大(iUPD)”的病灶本次访视评估为“显著增大(iUPD)”)) -{ - 非靶病灶疗效为 iCPD -} -else if (上次非靶病灶评估结果为iCPD && 任一非靶病灶状态评估为“进一步增大(iCPD)”或“显著增大(iUPD)”) -{ - 非靶病灶疗效为 iCPD -} -else if (本次访视非靶病灶满足RECIST1.1的PD条件)//请注意RECIST1.1中PD条件为:任一非靶病灶本次访视评估为“显著增大”,iRECIST中,应修改为任一非靶病灶本次访视评估为“显著增大(iUPD)” -{ - 非靶病灶疗效为 iUPD -} -else if (有任一非靶病灶为NE状态) -{ - 非靶病灶疗效为 NE -} -else if (全部非靶病灶均为“消失”状态) -{ - 非靶病灶疗效为 iCR -} -else -{ - 非靶病灶疗效为 iNN -} - \ No newline at end of file diff --git a/iRECIST评估算法/IRECIST靶病灶评估.cs b/iRECIST评估算法/IRECIST靶病灶评估.cs deleted file mode 100644 index c19cf6c..0000000 --- a/iRECIST评估算法/IRECIST靶病灶评估.cs +++ /dev/null @@ -1,69 +0,0 @@ - iUPD连续时,与最近一次靶病灶评估为iUPD的访视相比本次访视SOD增加值 = NA; - SOD增加值>=5mm - - - if(基线没有靶病灶) - { - 靶病灶疗效为 ND - } - else if (上一访视评估为iCPD && 本次访视满足RECIST1.1的PD条件) - { - 靶病灶疗效为 ICPD - } - else if (上一访视评估为iUPD&& SOD增加值>=5mm)//修改条件为:与最近一次靶病灶评估为iUPD的访视相比本次访视SOD增加不小于5mm - { - 靶病灶疗效为 ICPD - iupd连续时,与最近一次靶病灶评估为iUPD的访视相比本次访视SOD增加值 =SOD增加值; - } - else if (本次访靶病灶视满足RECIST1.1的PD条件) - { - 靶病灶疗效为 iUPD - } else if (有任一靶病灶为NE状态) - { - 靶病灶疗效为 NE - } - else if (所有非淋巴结靶病灶消失,径线总和为0 mm && 所有淋巴结靶病灶的短径缩小到 < 10 mm&&非靶病灶中淋巴结病灶全部消失)//增加条件为:非靶病灶中淋巴结病灶全部消失 - { - 靶病灶疗效为 iCR - } - else if (与基线期SOD相比减小≥30 % ||(所有非淋巴结靶病灶消失,径线总和为0 mm && 所有淋巴结靶病灶的短径缩小到 < 10 mm&&非靶病灶中有淋巴结病灶为非消失))//增加排除iCR条件:所有非淋巴结靶病灶消失,径线总和为0 mm && 所有淋巴结靶病灶的短径缩小到 < 10 mm&&非靶病灶中有淋巴结病灶为非消失 - { - 靶病灶疗效为 iPR - } - else - { - 靶病灶疗效为 iSD - } - - 更新: - if(基线没有靶病灶) - { - 靶病灶疗效为 ND - } - else if (上一访视评估为iCPD && 本次访视满足RECIST1.1的PD条件) - { - 靶病灶疗效为 ICPD - } else if (本次访靶病灶视满足RECIST1.1的PD条件) - { - 靶病灶疗效为 iUPD - if (上一访视评估为iUPD&& SOD增加值>=5mm)//修改条件为:与最近一次靶病灶评估为iUPD的访视相比本次访视SOD增加不小于5mm - { - 靶病灶疗效为 ICPD - } - } else if (有任一靶病灶为NE状态) - { - 靶病灶疗效为 NE - } - else if (所有非淋巴结靶病灶消失,径线总和为0 mm && 所有淋巴结靶病灶的短径缩小到 < 10 mm&&非靶病灶中淋巴结病灶全部消失)//增加条件为:非靶病灶中淋巴结病灶全部消失 - { - 靶病灶疗效为 iCR - } - else if (与基线期SOD相比减小≥30 % ||(所有非淋巴结靶病灶消失,径线总和为0 mm && 所有淋巴结靶病灶的短径缩小到 < 10 mm&&非靶病灶中有淋巴结病灶为非消失))//增加排除iCR条件:所有非淋巴结靶病灶消失,径线总和为0 mm && 所有淋巴结靶病灶的短径缩小到 < 10 mm&&非靶病灶中有淋巴结病灶为非消失 - { - 靶病灶疗效为 iPR - } - else - { - 靶病灶疗效为 iSD - } - \ No newline at end of file diff --git a/iRECIST评估算法/IRECIS其它既往新病灶评估.cs b/iRECIST评估算法/IRECIS其它既往新病灶评估.cs deleted file mode 100644 index e46cec4..0000000 --- a/iRECIST评估算法/IRECIS其它既往新病灶评估.cs +++ /dev/null @@ -1,19 +0,0 @@ -if(所有其它既往新病灶消失或一直不存在任何其它既往新病灶) -{ - 其它既往新病灶疗效为 ND -} -else if (存在状态为“明确”的其它既往新病灶) -{ - 其它既往新病灶疗效为 iUPD -} -else if (至少有一个其它既往新病灶无法评估) -{ - 其它既往新病灶疗效为 NE -} -else if (至少有一个其它既往新病灶为疑似状态) -{ - 其它既往新病灶疗效为 疑似 -}else -{ - //错误级别日志:项目、标准、受试者、阅片人、任务。输出其它既往新病灶数据: -} \ No newline at end of file diff --git a/iRECIST评估算法/IRECIS整体肿瘤评估.cs b/iRECIST评估算法/IRECIS整体肿瘤评估.cs deleted file mode 100644 index b1c8700..0000000 --- a/iRECIST评估算法/IRECIS整体肿瘤评估.cs +++ /dev/null @@ -1,59 +0,0 @@ -if(上个访视整体肿瘤评估结果为iCPD&&当前访视靶病灶评估、非靶病灶评估、新病灶整体肿瘤评估任一项为iUPD或iCPD) //条件更新 -{ - 疗效为 iCPD -} -else if (上个访视整体肿瘤评估结果为iUPD&&(靶病灶评估、非靶病灶评估和新病灶整体评估从上个访视的评估结果iUPD变成本次访视的评估结果iCPD||靶病灶评估、非靶病灶评估和新病灶整体评估从上个访视的评估结果非iUPD变成本次访视的评估结果iUPD))//条件更新 -{ - 疗效为 iCPD -} -else if (靶病灶评估为iUPD || 非靶病灶评估为iUPD || 新病灶评估为iUPD) -{ - 疗效为 iUPD -} -else if ((靶病灶评估为iCR && 非靶病灶评估为iCR && 新病灶评估为ND)|| (靶病灶评估为ND && 非靶病灶评估为iCR && 新病灶评估为ND) || (靶病灶评估为iCR && 非靶病灶评估为ND && 新病灶评估为ND)) -{ - 疗效为 iCR -} -else if (靶病灶评估为iPR && 非靶病灶评估为iCR,iNN,NE或ND && 新病灶评估为ND或疑似或NE) -{ - 疗效为 iPR -} -else if (靶病灶评估为iCR && 非靶病灶评估为iNN或NE && 新病灶评估为ND或疑似或NE) -{ - 疗效为 iPR -} -else if (靶病灶评估为iCR && 非靶病灶评估为iCR或ND && 新病灶评估为疑似或NE) -{ - 疗效为 iPR -} -else if (靶病灶评估为ND && 非靶病灶评估为iCR && 新病灶评估为疑似或NE) -{ - 疗效为 iPR -} -else if (靶病灶评估为iSD && 非靶病灶评估为iCR,iNN,NE或ND && 新病灶评估为ND或疑似或NE) -{ - 疗效为 iSD -} -else if (靶病灶评估为ND && 非靶病灶评估为iNN && 新病灶评估为ND或疑似或NE) -{ - 疗效为 iNN -} -else if (靶病灶评估为ND && 非靶病灶评估为ND && 新病灶评估为ND或疑似) -{ - 疗效为 ND -} -else if (靶病灶评估为NE && 非靶病灶评估为iCR,iNN,NE或ND && 新病灶评估为ND或疑似或NE) -{ - 疗效为 NE -} -else if (靶病灶评估为ND && 非靶病灶评估为NE && 新病灶评估为ND或疑似或NE) -{ - 疗效为 NE -} -else if (靶病灶评估为ND && 非靶病灶评估为ND && 新病灶评估为NE) -{ - 疗效为 NE -}else -{ - //错误级别日志:项目、标准、受试者、阅片人、任务。输出靶病灶、非靶病灶、新病灶的评估结果: -} diff --git a/iRECIST评估算法/IRECIS新病灶评估.cs b/iRECIST评估算法/IRECIS新病灶评估.cs deleted file mode 100644 index 1ae47e5..0000000 --- a/iRECIST评估算法/IRECIS新病灶评估.cs +++ /dev/null @@ -1,43 +0,0 @@ -if(新靶病灶为ND&&新非靶病灶为ND&&其它既往新病灶为ND&&不存在触发iRECIST后新病灶) -{ - 疗效为 ND -} -else if (新靶病灶为iCPD||新非靶病灶为iCPD) -{ - 疗效为 iCPD -} -else if (前一访视新病灶评估为iCPD && (新靶病灶有存在病灶 || 新非靶病灶有存在状态病灶 || 其它既往新病灶有明确的病灶 || 触发iRECIST后新病灶有明确病灶)) -{ - 疗效为 iCPD -} -else if (前一访视新病灶评估为iUPD && 新靶病灶上个访视评估为NE,本次访视评估为iUPD) -{ - 疗效为 iCPD -} -else if (前一访视新病灶评估为iUPD && 新非靶病灶上个访视评估为NE,本次访视评估为iUPD) -{ - 疗效为 iCPD -} -else if (前一访视新病灶评估为iUPD && 其它既往新病灶上个访视评估为NE或疑似,本次访视评估为iUPD) -{ - 疗效为 iCPD -} -else if (前一访视新病灶评估为iUPD && 触发iRECIST后新病灶评估上个访视评估为NE或否或疑似,本次访视评估为是) -{ - 疗效为 iCPD -} -else if (新靶病灶评估为iUPD || 新非靶病灶评估为iUPD || 其它既往新病灶评估为iUPD || 触发iRECIST后新病灶评估上个访视评估为是) -{ - 疗效为 iUPD -} -else if (新靶病灶、新非靶病灶、其它既往新病灶、触发iRECIST后的新病灶任一项评估为NE) -{ - 疗效为 NE -} -else if (其它既往新病灶或触发iRECIST后新病灶评估为“疑似”) -{ - 疗效为 疑似 -}else -{ - //错误级别日志:项目、标准、受试者、阅片人、任务。输出新病灶数据: -} \ No newline at end of file diff --git a/iRECIST评估算法/IRECIS触发iRECIST后新病灶评估.cs b/iRECIST评估算法/IRECIS触发iRECIST后新病灶评估.cs deleted file mode 100644 index 5b218e7..0000000 --- a/iRECIST评估算法/IRECIS触发iRECIST后新病灶评估.cs +++ /dev/null @@ -1,16 +0,0 @@ -if(出现至少1个“明确”状态的触发iRECIST后新病灶) -{ - 触发iRECIST后新病灶疗效为 是 -} -else if (只要有一个触发iRECIST后新病灶评估为NE) -{ - 触发iRECIST后新病灶疗效为 NE -} -else if (只要有一个触发iRECIST后新病灶评估为疑似) -{ - 触发iRECIST后新病灶疗效为 疑似 -} -else -{ - 触发iRECIST后新病灶疗效为 否 -} \ No newline at end of file