Compare commits

...

3 Commits

Author SHA1 Message Date
he f83819d0c9 res 同步病灶调整
continuous-integration/drone/push Build is passing Details
2025-09-15 14:41:44 +08:00
he 43c0885e0a 修改 2025-09-15 14:41:41 +08:00
he 1cff4f7603 MRECISTHCC 同步病灶 2025-09-15 14:41:39 +08:00
2 changed files with 21 additions and 7 deletions

View File

@ -5395,7 +5395,7 @@
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.PCWG3CalculateService.ChangeLastTaskSiteVisitForTumorEvaluation(IRaCIS.Core.Application.Service.Reading.Dto.ReadingCalculateDto)">
<summary>
修改上一次访视结果
修改上一次访视结果 并且计算是不是PD
</summary>
<param name="inDto"></param>
<returns></returns>

View File

@ -867,6 +867,15 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
TrialId = x.TrialId,
}).ToListAsync();
// 肛门淋巴结
var portalOrgan = await _organInfoRepository.Where(x => x.SystemCriterionId == trialReadingCriterion.ReadingQuestionCriterionSystemId &&
x.Part == "肝门淋巴结" &&
x.IsLymphNodes == IsLymph.Yes
).FirstOrDefaultAsync();
foreach (var item in recistTableAnswers)
{
var rowinfo = tableRowAnswers.Where(y => y.OriginalId == item.RowId).FirstOrDefault();
@ -874,14 +883,19 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate
{
item.QuestionId = rowinfo.QuestionId;
var IslymphNode= recistTableAnswers.Where(x=>x.RowId== item.RowId&&x.QuestionMark==QuestionMark.IsLymph).Select(x=>x.Answer).FirstIsNullReturnEmpty().EqEnum(YesOrNoOrNa.Yes);
var minorAxis= recistTableAnswers.Where(x => x.RowId == item.RowId && x.QuestionMark == QuestionMark.ShortAxis).Select(x => x.Answer).FirstIsNullReturnEmpty().IsNullOrEmptyReturn0();
var iSbetween15and20= minorAxis >= 15 && minorAxis < 20;
if (item.QuestionMark == QuestionMark.State && IslymphNode && iSbetween15and20 && rowinfo.LesionType == LesionType.TargetLesion)
if (portalOrgan != null && rowinfo.OrganInfoId == portalOrgan.Id)
{
item.Answer = string.Empty;
var IslymphNode = recistTableAnswers.Where(x => x.RowId == item.RowId && x.QuestionMark == QuestionMark.IsLymph).Select(x => x.Answer).FirstIsNullReturnEmpty().EqEnum(YesOrNoOrNa.Yes);
var minorAxis = recistTableAnswers.Where(x => x.RowId == item.RowId && x.QuestionMark == QuestionMark.ShortAxis).Select(x => x.Answer).FirstIsNullReturnEmpty().IsNullOrEmptyReturn0();
var iSbetween15and20 = minorAxis >= 15 && minorAxis < 20;
if (item.QuestionMark == QuestionMark.State && IslymphNode && iSbetween15and20 && rowinfo.LesionType == LesionType.TargetLesion)
{
item.Answer = string.Empty;
}
}
}