70 lines
1.8 KiB
C#
70 lines
1.8 KiB
C#
if(当前是基线)
|
||
{
|
||
return "NA";
|
||
}
|
||
else if(日期未知)
|
||
{
|
||
return "空白";
|
||
}
|
||
else if(影像不正常)
|
||
{
|
||
return "NE";
|
||
}
|
||
else if (结果是PD) -- PD的判断写在最下面 这样看着清楚一点
|
||
{
|
||
return "PD";
|
||
}
|
||
else if(新病灶数量=0 && 基线病灶数量=0 && 既往新病灶数量=0 )
|
||
{
|
||
return "NE";
|
||
}
|
||
else
|
||
{
|
||
return "非PD";
|
||
}
|
||
|
||
|
||
|
||
|
||
// 结果是PD的条件
|
||
//
|
||
if(存在上一个阅片任务)
|
||
{
|
||
if(历史存在PD)
|
||
{
|
||
// 基线病灶增值 具体计算公式 当前访视为n BTN 为基线病灶数量
|
||
// 基线病灶增值 = 当前访视的基线病灶数量-(基线到上一次访视中基线病灶数量的最小值)
|
||
// 如果基线病灶增值小于0 取0
|
||
if(自治疗后第二个访视点以来持续的新骨变数量+ 基线病灶增值 + 新病灶数量>=2)
|
||
{
|
||
return '存在PD';
|
||
}
|
||
}
|
||
else
|
||
{
|
||
if(当前访视为V2)
|
||
{
|
||
if(V1:新病灶计数>=2; V2:新病灶计数>=2且既往新病灶计数>=2; V2与V1的间隔 >= 6周)
|
||
{
|
||
V2结果为 "PD"; V1也改为PD
|
||
}
|
||
}
|
||
else if(访视>V2)
|
||
{
|
||
// V2:新病灶计数+[(V2-BTN- Min(V1-BTN、BL-BTN)]>=2;
|
||
// V3:自治疗后第二个访视点以来持续的新骨变数量 + [(V3 - BTN - Min(V2 - BTN、V1 - BTN、BL - BTN)] + 新病灶 >= 2
|
||
// V3与V2的间隔 >= 6周
|
||
// 下面条件用多个If 看着清晰一点
|
||
if (上一访视:新病灶计数 + 视基线病灶增值 >= 2)
|
||
{
|
||
if (当前访视:自治疗后第二个访视点以来持续的新骨变数量 + 基线病灶增值 + 新病灶 >= 2)
|
||
{
|
||
if (间隔天数 >= 42)
|
||
{
|
||
当前访视结果为 "PD"; 上一访视也改为PD
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
} |