计算修改
parent
1f45a3aa9f
commit
2cada0fcbe
|
@ -1734,7 +1734,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
|
|
||||||
// 脾脏评估
|
// 脾脏评估
|
||||||
var spleenEvaluation = string.Empty;
|
var spleenEvaluation = string.Empty;
|
||||||
var c = new List<TargetAssessment>() { TargetAssessment.CR };
|
|
||||||
List<CalculationDto> data = new List<CalculationDto>() {
|
List<CalculationDto> data = new List<CalculationDto>() {
|
||||||
|
|
||||||
//ND ND 否/疑似 正常 正常 ND
|
//ND ND 否/疑似 正常 正常 ND
|
||||||
|
@ -1815,69 +1815,114 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
NotEq=new List<int>(){ 2},
|
NotEq=new List<int>(){ 2},
|
||||||
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.NE }),
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.NE }),
|
||||||
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.PD }),
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.PD }),
|
||||||
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected, }),
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected, NewLesionAssessment.NE}),
|
||||||
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal }),
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Increase }),
|
||||||
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal }),
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Increase }),
|
||||||
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND }),
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.NE }),
|
||||||
},
|
},
|
||||||
|
//ND NE 否/疑似/无法评估(不为是) 正常/稳定/无法评估/部分缓解(非显著增大) 正常/稳定/无法评估/部分缓解(非显著增大) NE
|
||||||
new CalculationDto(){
|
new CalculationDto(){
|
||||||
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.CR }),
|
NotEq=new List<int>(){ 3,4,5},
|
||||||
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.ND }),
|
||||||
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.NE }),
|
||||||
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.Yes }),
|
||||||
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Increase }),
|
||||||
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Increase }),
|
||||||
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.NE }),
|
||||||
|
},
|
||||||
|
//ND ND 无法评估 正常/稳定/无法评估/部分缓解(非显著增大) 正常/稳定/无法评估/部分缓解(非显著增大) NE
|
||||||
|
new CalculationDto(){
|
||||||
|
NotEq=new List<int>(){ 4,5},
|
||||||
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.ND }),
|
||||||
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
||||||
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.NE }),
|
||||||
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Increase }),
|
||||||
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Increase }),
|
||||||
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.NE }),
|
||||||
|
},
|
||||||
|
//ND ND 否/疑似 无法评估 正常/稳定/无法评估/部分缓解(非显著增大) NE
|
||||||
|
new CalculationDto(){
|
||||||
|
NotEq=new List<int>(){ 4},
|
||||||
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.ND }),
|
||||||
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
||||||
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected }),
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected }),
|
||||||
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal }),
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.NotEvaluable }),
|
||||||
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal }),
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Increase }),
|
||||||
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND }),
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.NE }),
|
||||||
},
|
},
|
||||||
|
// ND ND 否/疑似 正常/稳定 NE NE
|
||||||
new CalculationDto(){
|
new CalculationDto(){
|
||||||
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.CR }),
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.ND }),
|
||||||
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
||||||
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected }),
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected }),
|
||||||
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal }),
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal,LiverAssessment.Stabilization }),
|
||||||
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal }),
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.NotEvaluable }),
|
||||||
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND }),
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.NE }),
|
||||||
},
|
},
|
||||||
|
//PR 非PD 否/疑似/无法评估(不为是) 正常/稳定 正常/部分缓解 PR
|
||||||
new CalculationDto(){
|
new CalculationDto(){
|
||||||
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.CR }),
|
NotEq=new List<int>(){ 2,3},
|
||||||
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.PR }),
|
||||||
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected }),
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.PD }),
|
||||||
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal }),
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.Yes }),
|
||||||
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal }),
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal,LiverAssessment.Stabilization}),
|
||||||
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND }),
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal,SpleenAssessment.Remission }),
|
||||||
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.PR }),
|
||||||
},
|
},
|
||||||
new CalculationDto(){
|
//CR (PR/SD)或者NE 否/疑似/无法评估(不为是) 正常/部分缓解 正常/部分缓解 PR
|
||||||
|
new CalculationDto(){
|
||||||
|
NotEq=new List<int>(){ 3},
|
||||||
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.CR }),
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.CR }),
|
||||||
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.PRSD,NoTargetAssessment.NE }),
|
||||||
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected }),
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.Yes,NewLesionAssessment.Yes }),
|
||||||
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal }),
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal,LiverAssessment.Stabilization}),
|
||||||
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal }),
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal,SpleenAssessment.Remission }),
|
||||||
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND }),
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.PR }),
|
||||||
},
|
|
||||||
new CalculationDto(){
|
|
||||||
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.CR }),
|
|
||||||
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.ND }),
|
|
||||||
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.No,NewLesionAssessment.Suspected }),
|
|
||||||
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal }),
|
|
||||||
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal }),
|
|
||||||
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.ND }),
|
|
||||||
},
|
},
|
||||||
|
//CR CR/ND 疑似/无法评估 正常/稳定 正常/部分缓解 PR
|
||||||
|
new CalculationDto(){
|
||||||
|
|
||||||
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.CR }),
|
||||||
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.CR,NoTargetAssessment.ND }),
|
||||||
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.Suspected, NewLesionAssessment.NE }),
|
||||||
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal,LiverAssessment.Stabilization}),
|
||||||
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal,SpleenAssessment.Remission }),
|
||||||
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.PR }),
|
||||||
|
},
|
||||||
|
// ND CR 疑似/无法评估 正常/稳定 正常/部分缓解 PR
|
||||||
|
new CalculationDto(){
|
||||||
|
|
||||||
|
Column1=EnumToString(new List<TargetAssessment>() { TargetAssessment.ND }),
|
||||||
|
Column2=EnumToString(new List<NoTargetAssessment>() { NoTargetAssessment.CR }),
|
||||||
|
Column3=EnumToString(new List<NewLesionAssessment>() { NewLesionAssessment.Suspected, NewLesionAssessment.NE }),
|
||||||
|
Column4=EnumToString(new List<LiverAssessment>() { LiverAssessment.Normal,LiverAssessment.Stabilization}),
|
||||||
|
Column5=EnumToString(new List<SpleenAssessment>() { SpleenAssessment.Normal,SpleenAssessment.Remission }),
|
||||||
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.PR }),
|
||||||
|
},
|
||||||
|
new CalculationDto(){
|
||||||
|
Column1=EnumToString(new List<TargetAssessment>() { }),
|
||||||
|
Column2=EnumToString(new List<NoTargetAssessment>() { }),
|
||||||
|
Column3=EnumToString(new List<NewLesionAssessment>() { }),
|
||||||
|
Column4=EnumToString(new List<LiverAssessment>() { }),
|
||||||
|
Column5=EnumToString(new List<SpleenAssessment>() { }),
|
||||||
|
Column6=EnumToString(new List<CTMRIOverallAssessment>() { CTMRIOverallAssessment.SD }),
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
return string.Empty;
|
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;
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 枚举数组转字符串数组 方法名简短
|
|
||||||
/// </summary>
|
|
||||||
/// <typeparam name="T"></typeparam>
|
|
||||||
/// <param name="emus"></param>
|
|
||||||
/// <returns></returns>
|
|
||||||
private List<string> EnumToString<T>(List<T> emus) where T : Enum
|
|
||||||
{
|
|
||||||
return emus.Select(x => ((int)(object)x).ToString()).ToList();
|
|
||||||
}
|
|
||||||
|
|
||||||
#region 脾脏评估
|
#region 脾脏评估
|
||||||
|
|
||||||
|
|
|
@ -1018,7 +1018,7 @@ namespace IRaCIS.Core.Domain.Share
|
||||||
Suspected = 1,
|
Suspected = 1,
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// NE
|
/// NE 无法评估
|
||||||
/// </summary>
|
/// </summary>
|
||||||
NE = 2,
|
NE = 2,
|
||||||
|
|
||||||
|
|
|
@ -58,6 +58,17 @@ namespace IRaCIS.Core.Infra.EFCore.Common
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 枚举数组转字符串数组 方法名简短
|
||||||
|
/// </summary>
|
||||||
|
/// <typeparam name="T"></typeparam>
|
||||||
|
/// <param name="emus"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public static List<string> EnumToString<T>(List<T> emus) where T : Enum
|
||||||
|
{
|
||||||
|
return emus.Select(x => ((int)(object)x).ToString()).ToList();
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取语言名称
|
/// 获取语言名称
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
Loading…
Reference in New Issue