From e17d973fad6e7e1a6e27ea8ee563f339f6c63df6 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Fri, 12 Sep 2025 11:06:21 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=8E=BB=E6=8E=89=E9=AA=A8=E6=89=AB?= =?UTF-8?q?=E6=8F=8F=E7=AD=9B=E9=80=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Service/ReadingCalculate/PCWG3CalculateService.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs index 645770dad..4b29cd984 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/PCWG3CalculateService.cs @@ -1208,7 +1208,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate var visitIds = siteVisitForTumorList.Select(x => x.SubjectVisitId).ToList(); // Dicom 用NM 非dicom 用骨扫描 (BoneScan) - List visitStudies = await _dicomStudyRepository.Where(x => visitIds.Contains(x.SubjectVisitId) && x.ModalityForEdit == "BoneScan").Select(x => new VisitStudyTime() + List visitStudies = await _dicomStudyRepository.Where(x => visitIds.Contains(x.SubjectVisitId)/* && x.ModalityForEdit == "BoneScan"*/).Select(x => new VisitStudyTime() { SubjectVisitId = x.SubjectVisitId, StudyTime = x.StudyTime @@ -1216,7 +1216,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate }).ToListAsync(); visitStudies.AddRange( - await _noneDicomStudyRepository.Where(x => visitIds.Contains(x.SubjectVisitId) && x.Modality == "BoneScan").Select(x => new VisitStudyTime() + await _noneDicomStudyRepository.Where(x => visitIds.Contains(x.SubjectVisitId) /*&& x.Modality == "BoneScan"*/).Select(x => new VisitStudyTime() { SubjectVisitId = x.SubjectVisitId, StudyTime = x.ImageDate From 4c396dc4ae693226e8f99c6172b0a9304bd48486 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Fri, 12 Sep 2025 11:30:52 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=8D=E5=88=B6=20reci?= =?UTF-8?q?st1.1=20=E6=B7=8B=E5=B7=B4=E7=BB=93=E7=97=85=E7=81=B6=E7=8A=B6?= =?UTF-8?q?=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MRECISTHCCCalculateService.cs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs index 1d0929520..98b07fd7f 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/MRECISTHCCCalculateService.cs @@ -1374,8 +1374,21 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate foreach (var item in recistTableAnswers) { + var rowinfo = tableRowAnswers.Where(y => y.OriginalId == item.RowId).FirstOrDefault(); + if (rowinfo != null) + { + item.QuestionId = rowinfo.QuestionId; - item.QuestionId = tableRowAnswers.Where(y => y.OriginalId == item.RowId).Select(x => x.QuestionId).FirstOrDefault(); + var IslymphNode= recistTableAnswers.Where(x=>x.RowId== rowinfo.Id&&x.QuestionMark==QuestionMark.IsLymph).Select(x=>x.Answer).FirstIsNullReturnEmpty().EqEnum(YesOrNoOrNa.Yes); + var minorAxis= recistTableAnswers.Where(x => x.RowId == rowinfo.Id && 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; + } + } + item.TableQuestionId = tableQuestionList.Where(x => x.ReadingQuestionId == item.QuestionId && x.QuestionMark == item.QuestionMark).Select(x => x.Id).FirstOrDefault(); } @@ -1386,6 +1399,7 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate { }; + var tableAnswers = recistTableAnswers.Select(x => new ReadingTableQuestionAnswer { Id = NewId.NextGuid(), From 38a42dc44fefd28a12049f0a92cdd228e4354d04 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Fri, 12 Sep 2025 11:35:41 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=8E=BB=E9=99=A4=E6=8A=A5=E5=91=8A?= =?UTF-8?q?=E7=BC=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReadingCalculate/General/ReadingCalculateService.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs index f2de7e2d3..c070055e1 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/General/ReadingCalculateService.cs @@ -188,7 +188,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate public async Task GetVisitReadReportUrl(CaGetVisitReadReportUrl inDto) { var taskinfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).Include(x => x.Subject).Include(x => x.SourceSubjectVisit).FirstNotNullAsync(); - if (taskinfo.ReportExportUrl != string.Empty) + var iscache = false; + if (iscache && taskinfo.ReportExportUrl != string.Empty) { return taskinfo.ReportExportUrl; } @@ -242,7 +243,8 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate public async Task GetTumorEvaluationReportUrl(CaGetVisitReadReportUrl inDto) { var taskinfo = await _visitTaskRepository.Where(x => x.Id == inDto.VisitTaskId).Include(x => x.Subject).Include(x => x.SourceSubjectVisit).FirstNotNullAsync(); - if (taskinfo.TumorEvaluationUrl != string.Empty) + var iscache = false; + if (iscache&&taskinfo.TumorEvaluationUrl != string.Empty) { return taskinfo.TumorEvaluationUrl; }