|
|
|
@ -587,7 +587,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
var allMinFCT = inDto.QuestionInfo.Where(x => x.LesionType == LesionType.FCT).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList)
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.MinFCT).Select(x => x.Answer.IsNullOrEmptyReturn0()).Min();
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.MinFCT).Select(x => x.Answer.IsNullOrEmptyReturn0()).MinOrDefault();
|
|
|
|
|
if (allMinFCT == 0)
|
|
|
|
|
{
|
|
|
|
|
return null;
|
|
|
|
@ -603,12 +603,12 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|
|
|
|
public async Task<decimal?> GetAvgMinFCT(ReadingCalculateDto inDto)
|
|
|
|
|
{
|
|
|
|
|
var allMinFCT = inDto.QuestionInfo.Where(x => x.LesionType == LesionType.FCT).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList)
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.MinFCT).Select(x => x.Answer.IsNullOrEmptyReturn0()).Average();
|
|
|
|
|
if (allMinFCT == 0)
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.MinFCT).Select(x => x.Answer.IsNullOrEmptyReturn0()).ToList();
|
|
|
|
|
if (allMinFCT.Count() == 0)
|
|
|
|
|
{
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
return allMinFCT;
|
|
|
|
|
return allMinFCT.Average();;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -621,7 +621,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
var maxLipidAngle = inDto.QuestionInfo.Where(x => x.LesionType == LesionType.LipidAngle).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList)
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.LipidAngle).Select(x => x.Answer.IsNullOrEmptyReturn0()).Max();
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.LipidAngle).Select(x => x.Answer.IsNullOrEmptyReturn0()).MaxOrDefault();
|
|
|
|
|
if (maxLipidAngle == 0)
|
|
|
|
|
{
|
|
|
|
|
return null;
|
|
|
|
@ -637,12 +637,12 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
|
|
|
|
|
public async Task<decimal?> GetAvgMinLipidAngle(ReadingCalculateDto inDto)
|
|
|
|
|
{
|
|
|
|
|
var avgMinLipidAngle = inDto.QuestionInfo.Where(x => x.LesionType == LesionType.LipidAngle).SelectMany(x => x.TableRowInfoList).SelectMany(x => x.TableQuestionList)
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.LipidAngle).Select(x => x.Answer.IsNullOrEmptyReturn0()).Average();
|
|
|
|
|
if (avgMinLipidAngle == 0)
|
|
|
|
|
.Where(x => x.QuestionMark == QuestionMark.LipidAngle).Select(x => x.Answer.IsNullOrEmptyReturn0()).ToList();
|
|
|
|
|
if (avgMinLipidAngle.Count() == 0)
|
|
|
|
|
{
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
return avgMinLipidAngle;
|
|
|
|
|
return avgMinLipidAngle.Average();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#region 将上一次的访视病灶添加到这一次
|
|
|
|
|