Uat_Study
parent
9f92a1e3f7
commit
386c6e6f8f
|
@ -19,6 +19,11 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
|
||||||
|
|
||||||
public class TargetLesionCalculateDto
|
public class TargetLesionCalculateDto
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 最低SOD
|
||||||
|
/// </summary>
|
||||||
|
public decimal LowSod { get; set; }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 是否存在靶病灶
|
/// 是否存在靶病灶
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
@ -1106,6 +1106,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
|
|
||||||
var taskIds = taskAnswerList.Select(x => x.VisitTaskId).ToList();
|
var taskIds = taskAnswerList.Select(x => x.VisitTaskId).ToList();
|
||||||
|
|
||||||
|
// 排除无法评估
|
||||||
var unableEvaluateTaskIds = await _readingTableQuestionAnswerRepository.Where(x => taskIds.Contains(x.VisitTaskId) &&
|
var unableEvaluateTaskIds = await _readingTableQuestionAnswerRepository.Where(x => taskIds.Contains(x.VisitTaskId) &&
|
||||||
x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State
|
x.ReadingTableQuestionTrial.QuestionMark == QuestionMark.State
|
||||||
&& x.ReadingQuestionTrial.LesionType == LesionType.TargetLesion
|
&& x.ReadingQuestionTrial.LesionType == LesionType.TargetLesion
|
||||||
|
@ -1258,6 +1259,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
// 是否存在靶病灶
|
// 是否存在靶病灶
|
||||||
ExistsTargetLesion= tableQuestion.Count()>0,
|
ExistsTargetLesion= tableQuestion.Count()>0,
|
||||||
|
|
||||||
|
// 最低SOD
|
||||||
|
LowSod=(await GetLowSODVisit(inDto)).Select(x=>x.SOD).FirstOrDefault(),
|
||||||
|
|
||||||
//非淋巴结靶病灶长径之和 decimal
|
//非淋巴结靶病灶长径之和 decimal
|
||||||
SumOfDiameter = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.SumOfDiameter).Sum(x => x.Answer.IsNullOrEmptyReturn0()),
|
SumOfDiameter = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.SumOfDiameter).Sum(x => x.Answer.IsNullOrEmptyReturn0()),
|
||||||
|
|
||||||
|
@ -1343,6 +1347,10 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
{
|
{
|
||||||
if (resultData.LastTargetLesionEvaluate.EqEnum(TargetAssessment.CR))
|
if (resultData.LastTargetLesionEvaluate.EqEnum(TargetAssessment.CR))
|
||||||
{
|
{
|
||||||
|
if (resultData.ExixtsNETargetLesion)
|
||||||
|
{
|
||||||
|
result = TargetAssessment.NE;
|
||||||
|
}
|
||||||
if (resultData.CurrenShortBigger10 && resultData.IsAddFive)
|
if (resultData.CurrenShortBigger10 && resultData.IsAddFive)
|
||||||
{
|
{
|
||||||
result = TargetAssessment.PD;
|
result = TargetAssessment.PD;
|
||||||
|
@ -1352,30 +1360,37 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
result = TargetAssessment.PD;
|
result = TargetAssessment.PD;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (resultData.LowPercentBigger20)
|
|
||||||
{
|
|
||||||
result = TargetAssessment.PD;
|
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (resultData.ExixtsNETargetLesion)
|
if (resultData.LowSod != 0 && resultData.LowPercentBigger20 && resultData.LowChangeBigger5)
|
||||||
{
|
{
|
||||||
result = TargetAssessment.NE;
|
result = TargetAssessment.PD;
|
||||||
} else
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
if (resultData.SODPercentBigger30)
|
if (resultData.ExixtsNETargetLesion)
|
||||||
{
|
{
|
||||||
if (resultData.LowPercentLess20||resultData.LowChangeLess5)
|
result = TargetAssessment.NE;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (resultData.SODPercentBigger30)
|
||||||
{
|
{
|
||||||
result = TargetAssessment.PR;
|
if (resultData.LowPercentLess20 || resultData.LowChangeLess5)
|
||||||
}
|
{
|
||||||
|
result = TargetAssessment.PR;
|
||||||
|
}
|
||||||
|
|
||||||
if (resultData.SumOfDiameter == 0 && resultData.DiameterLessThan10)
|
if (resultData.SumOfDiameter == 0 && resultData.DiameterLessThan10)
|
||||||
{
|
{
|
||||||
result = TargetAssessment.CR;
|
result = TargetAssessment.CR;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue