Merge branch 'Test_HIR_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_HIR_Net8
continuous-integration/drone/push Build is passing Details

Test_HIR_Net8
hang 2025-09-19 16:48:35 +08:00
commit 7214626850
1 changed files with 23 additions and 4 deletions

View File

@ -1247,6 +1247,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
// 当前访视新病灶数量
var thisNewLesionsCount = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.NewLesionsCount).Select(x => x.Answer).FirstIsNullReturnEmpty().IsNullOrEmptyReturn0();
// 其他访视的BTN
var otherBTNStrList =await _readingTaskQuestionAnswerRepository.Where(x => x.VisitTaskId != inDto.VisitTaskId && taskIdList.Contains(x.VisitTaskId) && x.ReadingQuestionTrial.QuestionType == QuestionType.BaseLineLesionsCount).Select(x=>new {
x.VisitTask.VisitTaskNum,
@ -1254,13 +1255,24 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
}).ToListAsync();
// 最小的BTN 这个时候再转为int 避免查询报错
var othenMinBTNCount= otherBTNStrList.Select(x => x.Answer.IsNullOrEmptyReturn0()).Min();
var otherMinBTNCount= otherBTNStrList.Select(x => x.Answer.IsNullOrEmptyReturn0()).Min();
// [(V3 - BTN - MinV2 - BTN、V1 - BTN、BL - BTN] 小于当0计算
var btnValue = thisBTN - otherMinBTNCount;
if (btnValue < 0)
{
btnValue = 0;
}
// 历史有PD
if (pdTaskList.Count() > 0)
{
// 当前访视:自治疗后第二个访视点以来持续的新骨变数量 + [(V3 - BTN - MinV2 - BTN、V1 - BTN、BL - BTN] + 新病灶 >= 2
if (thisNewBoneLesionsCount + thisBTN - othenMinBTNCount + thisNewLesionsCount >= 2)
if (thisNewBoneLesionsCount + btnValue + thisNewLesionsCount >= 2)
{
result.IsPD = true;
}
@ -1301,9 +1313,16 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
// V3与V2的间隔 >= 6周
// 按上面条件写三个if看着清晰点
if (lastNewLesionsCount + lastBTN - lastTwoBTN >= 2)
var lastBtnSubMin = lastBTN - lastTwoBTN;
if (lastBtnSubMin < 0)
{
if (thisNewBoneLesionsCount + thisBTN - othenMinBTNCount + thisNewLesionsCount >= 2)
lastBtnSubMin = 0;
}
if (lastNewLesionsCount + lastBtnSubMin >= 2)
{
if (thisNewBoneLesionsCount + btnValue + thisNewLesionsCount >= 2)
{
if (daysBetween >= 42)
{