代码修改
parent
9e82fd124a
commit
b926519424
|
@ -1707,6 +1707,83 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region 获取脾脏状态
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 获取脾脏状态
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="visitTaskId"></param>
|
||||||
|
/// <param name="spleenLength"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
[HttpPost]
|
||||||
|
public async Task<string> GetSplenicState(Guid visitTaskId,decimal spleenLength)
|
||||||
|
{
|
||||||
|
|
||||||
|
ReadingCalculateDto inDto = await _generalCalculateService.GetReadingCalculateDto(visitTaskId);
|
||||||
|
|
||||||
|
if (inDto.IsBaseLine)
|
||||||
|
{
|
||||||
|
return SpleenAssessment.Stabilization.GetEnumInt();
|
||||||
|
}
|
||||||
|
|
||||||
|
var result = SpleenAssessment.Stabilization;
|
||||||
|
|
||||||
|
|
||||||
|
var presentSpd = spleenLength;
|
||||||
|
var baseLineSpleenLength = await GetBaseLineSpleenLength(inDto);
|
||||||
|
|
||||||
|
var baseLineTaskId = await GetBaseLineTaskId(inDto);
|
||||||
|
var baseLineState = await _readingTaskQuestionAnswerRepository.Where(x => x.VisitTaskId == baseLineTaskId && x.ReadingQuestionTrial.QuestionType == QuestionType.SplenicStatus).Select(x => x.Answer).FirstOrDefaultAsync();
|
||||||
|
|
||||||
|
|
||||||
|
var differenceValue = presentSpd - baseLineSpleenLength;
|
||||||
|
decimal percentage = 0;
|
||||||
|
if (baseLineSpleenLength != 0)
|
||||||
|
{
|
||||||
|
percentage = differenceValue * 100 / baseLineSpleenLength;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 1、基线 垂直径> 130 mm
|
||||||
|
//2、与基线相比脾垂直径变化值≥10 mm
|
||||||
|
//与基线相比脾肿大增加的百分比 > 50%
|
||||||
|
if (baseLineSpleenLength > 130 && differenceValue >= 10 && percentage > 50)
|
||||||
|
{
|
||||||
|
result = SpleenAssessment.Increase;
|
||||||
|
}
|
||||||
|
//1、基线垂直径≤130mm
|
||||||
|
//2、与基线相比脾垂直径变化值≥20 mm
|
||||||
|
//当前垂直径 > 130 mm
|
||||||
|
else if (baseLineSpleenLength <= 130 && differenceValue >= 20 && presentSpd > 130)
|
||||||
|
{
|
||||||
|
result = SpleenAssessment.Increase;
|
||||||
|
}
|
||||||
|
//1、基线 垂直径> 130 mm
|
||||||
|
//2、当前访视的前面访视中 存在垂直径≤130mm
|
||||||
|
//3、与最低点相比脾脏垂直径的增加值≥20 mm
|
||||||
|
//4、当前垂直径 > 130 mm
|
||||||
|
else if (baseLineSpleenLength > 130 && presentSpd <= 130 && differenceValue >= 20 && presentSpd > 130)
|
||||||
|
{
|
||||||
|
result = SpleenAssessment.Increase;
|
||||||
|
}
|
||||||
|
// 基线垂直径≤130mm
|
||||||
|
else if (baseLineSpleenLength <= 130)
|
||||||
|
{
|
||||||
|
result = SpleenAssessment.Normal;
|
||||||
|
}
|
||||||
|
//1、基线期 状态为“肿大”
|
||||||
|
//与基线相比脾肿大增加的百分比 > 50%
|
||||||
|
else if (baseLineState.EqEnum(SpleenState.Swelling) && percentage > 50)
|
||||||
|
{
|
||||||
|
result = SpleenAssessment.Remission;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = SpleenAssessment.Remission;
|
||||||
|
}
|
||||||
|
return result.GetEnumInt();
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region 获取脾脏评估
|
#region 获取脾脏评估
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -1731,14 +1808,14 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
//var baseLineSpleenLength = await GetBaseLineSpleenLength(inDto);
|
//var baseLineSpleenLength = await GetBaseLineSpleenLength(inDto);
|
||||||
|
|
||||||
//var baseLineTaskId = await GetBaseLineTaskId(inDto);
|
//var baseLineTaskId = await GetBaseLineTaskId(inDto);
|
||||||
//var baseLineState= await _readingTaskQuestionAnswerRepository.Where(x => x.VisitTaskId == baseLineTaskId && x.ReadingQuestionTrial.QuestionType == QuestionType.SplenicStatus).Select(x => x.Answer).FirstOrDefaultAsync();
|
//var baseLineState = await _readingTaskQuestionAnswerRepository.Where(x => x.VisitTaskId == baseLineTaskId && x.ReadingQuestionTrial.QuestionType == QuestionType.SplenicStatus).Select(x => x.Answer).FirstOrDefaultAsync();
|
||||||
|
|
||||||
|
|
||||||
//var differenceValue = presentSpd - baseLineSpleenLength;
|
//var differenceValue = presentSpd - baseLineSpleenLength;
|
||||||
//decimal percentage = 0;
|
//decimal percentage = 0;
|
||||||
//if (baseLineSpleenLength != 0)
|
//if (baseLineSpleenLength != 0)
|
||||||
//{
|
//{
|
||||||
// percentage = differenceValue*100 / baseLineSpleenLength;
|
// percentage = differenceValue * 100 / baseLineSpleenLength;
|
||||||
//}
|
//}
|
||||||
|
|
||||||
//// 1、基线 垂直径> 130 mm
|
//// 1、基线 垂直径> 130 mm
|
||||||
|
@ -1779,9 +1856,12 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
||||||
// result = SpleenAssessment.Remission;
|
// result = SpleenAssessment.Remission;
|
||||||
//}
|
//}
|
||||||
//return result.GetEnumInt();
|
//return result.GetEnumInt();
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
#region PET 5PS
|
#region PET 5PS
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
Loading…
Reference in New Issue