From ba279254091f24da59696be8eba3104d35dd7239 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Mon, 8 Apr 2024 13:44:57 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=97=85=E7=81=B6?= =?UTF-8?q?=E7=BC=96=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Common/AuditingData.cs | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index 6eefb8d0d..c0122645b 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -2700,7 +2700,8 @@ namespace IRaCIS.Core.Infra.EFCore.Common // 保存影像质量 、 修改整体肿瘤评估结果 、 非dicom 保存访视阅片结果 、附加评估 if (_userInfo.RequestUrl == "ReadingImageTask/changeDicomReadingQuestionAnswer" || _userInfo.RequestUrl == "ReadingImageTask/saveImageQuality" - || _userInfo.RequestUrl == "ReadingImageTask/saveVisitTaskQuestions" + || _userInfo.RequestUrl.Contains("SaveTaskQuestion") + || _userInfo.RequestUrl == "ReadingImageTask/saveVisitTaskQuestions" || _userInfo.RequestUrl == "ReadingImageTask/changeCalculationAnswer" || _userInfo.RequestUrl == "ReadingImageTask/submitTaskAdditionalQuestion") { @@ -2790,8 +2791,11 @@ namespace IRaCIS.Core.Infra.EFCore.Common }, new { - QuestionAnswerList = taskQuestionAnswerList.Join(quesionList, t => t.ReadingQuestionTrialId, u => u.QuestionId, (t, u) => - new { Answer = u.AnswerType == "upload" ? "❄❅❆❇❈❉❊" + t.Answer : t.Answer, u.DictionaryCode, u.QuestionName, u.QuestionEnName, u.ShowOrder }).OrderBy(t => t.ShowOrder).ToList() + QuestionAnswerList = taskQuestionAnswerList.Join(quesionList, + t => t.ReadingQuestionTrialId, + u => u.QuestionId, + (t, u) => + new { Answer = u.AnswerType == "upload" ? "❄❅❆❇❈❉❊" + t.Answer : t.Answer, u.DictionaryCode, u.QuestionName, u.QuestionEnName, u.ShowOrder }).OrderBy(t => t.ShowOrder).ToList() , TableQuestionAndAnswerList = tableQuesionAndAnswerList } @@ -2848,9 +2852,15 @@ namespace IRaCIS.Core.Infra.EFCore.Common originalRowMark = await _dbContext.ReadingTableAnswerRowInfo.Where(t => t.Id == entity.SplitRowId).Select(t => t.RowMark).FirstOrDefaultAsync(); } - //处理标识 因为触发器在稽查后才进行操作 + //处理标识 因为触发器在稽查后才进行操作 - entity.RowMark = entity.OrderMark + entity.RowIndex.GetLesionMark(); + if (entity.OrderMark == string.Empty) + { + entity.OrderMark = await _dbContext.ReadingQuestionTrial.Where(x => x.Id == entity.QuestionId).Select(x => x.OrderMark).FirstOrDefaultAsync(); + + } + + entity.RowMark = entity.OrderMark + entity.RowIndex.GetLesionMark(); From e1383445e2882e764338111e5012f295b8b33161 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Mon, 8 Apr 2024 14:45:39 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs | 82 +++++++++++++------ .../Common/AuditingData.cs | 4 +- 2 files changed, 58 insertions(+), 28 deletions(-) diff --git a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs index b4bf54ad2..0e482d0cd 100644 --- a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs +++ b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs @@ -402,39 +402,67 @@ namespace IRaCIS.Core.Domain.Share Min = 9 } - /// - /// 数值单位 - /// - public enum ValueUnit - { - None = 0, + /// + /// 数值单位 + /// + public enum ValueUnit + { + /// + /// 无 + /// + none = 0, - /// - /// MM - /// - MM = 1, + /// + /// mm + /// + mm = 1, - /// - /// CM - /// - CM = 2, + /// + /// cm + /// + cm = 2, - /// - /// 个 - /// - Individual = 3, + /// + /// 个 + /// + individual = 3, - /// - /// 自定义 - /// - Custom = 4, - } + /// + /// 自定义 + /// + Custom = 4, + + /// + /// mm2 + /// + mm2 = 5, + + /// + /// mm3 + /// + mm3 = 6, + + /// + /// SUV + /// + SUV = 7, + + /// + /// HU + /// + HU = 8, + + /// + /// % + /// + percentage = 9, + } - /// - /// 数值类型 - /// - public enum ValueOfType + /// + /// 数值类型 + /// + public enum ValueOfType { /// diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index c0122645b..5324ea9d4 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -2719,7 +2719,8 @@ namespace IRaCIS.Core.Infra.EFCore.Common t.QuestionEnName, QuestionId = t.Id, t.DictionaryCode, - t.ShowOrder, + t.Unit, + t.ShowOrder, AnswerType = t.Type, }).OrderBy(t => t.ShowOrder).ToListAsync(); @@ -2755,6 +2756,7 @@ namespace IRaCIS.Core.Infra.EFCore.Common t.ReadingQuestionTrial.CustomUnit, t.DictionaryCode, t.QuestionName, + t.Unit, t.QuestionEnName, QuestionId = t.Id, t.ShowOrder, From dc86767184c363fe982c851dae99a36d2e2b8fec Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Mon, 8 Apr 2024 14:45:58 +0800 Subject: [PATCH 3/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs | 1 - 1 file changed, 1 deletion(-) diff --git a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs index 5324ea9d4..186af7474 100644 --- a/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs +++ b/IRaCIS.Core.Infra.EFCore/Common/AuditingData.cs @@ -2756,7 +2756,6 @@ namespace IRaCIS.Core.Infra.EFCore.Common t.ReadingQuestionTrial.CustomUnit, t.DictionaryCode, t.QuestionName, - t.Unit, t.QuestionEnName, QuestionId = t.Id, t.ShowOrder, From 8bc0cee81ffab771e3af8b8cf3e57e58e18a0d9d Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Mon, 8 Apr 2024 17:25:08 +0800 Subject: [PATCH 4/4] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../IRaCIS.Core.Application.xml | 12 +++++ .../LuganoCalculateService.cs | 41 +++++++++++---- IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs | 52 +++++++++++++++++-- 3 files changed, 92 insertions(+), 13 deletions(-) diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 302b2bed9..7d3d1cd21 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -1761,6 +1761,11 @@ 基线任务Id + + + 影像是否无法融合 + + 删除病灶获取起始病灶序号(RECIST1Point1 固定是1) @@ -1811,6 +1816,13 @@ + + + 获取影像是否无法融合 + + + + 获取报告整体整体评估 diff --git a/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs b/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs index 3c40540ca..bce37b092 100644 --- a/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs +++ b/IRaCIS.Core.Application/Service/ReadingCalculate/LuganoCalculateService.cs @@ -111,7 +111,13 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate /// private Guid? BaseLineTaskId; - private string nAString = "NA"; + /// + /// 影像是否无法融合 + /// + private bool? isUnableFuse; + + + private string nAString = "NA"; #endregion #region 删除病灶获取起始病灶序号 @@ -767,13 +773,32 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate } + /// + /// 获取影像是否无法融合 + /// + /// + /// + public async Task ImageQualityIsUnableFuse(ReadingCalculateDto inDto) + { + if (isUnableFuse != null) + { + return isUnableFuse.Value; + } + else + { + var imageQualityProblem = inDto.QuestionInfo.Where(x => x.QuestionType == QuestionType.ImageQualityProblem).Select(x => x.Answer).FirstOrDefault(); + isUnableFuse = imageQualityProblem == ((int)ImageQualityIssues.PETCTFailureFuse).ToString(); + return isUnableFuse.Value; + } - /// - /// 获取报告整体整体评估 - /// - /// - /// - public async Task GetReportTumor(Guid visitTaskId) + } + + /// + /// 获取报告整体整体评估 + /// + /// + /// + public async Task GetReportTumor(Guid visitTaskId) { return await GetTumor(await _generalCalculateService.GetReadingCalculateDto(visitTaskId)); } @@ -2428,11 +2453,9 @@ namespace IRaCIS.Core.Application.Service.ReadingCalculate //无需标记,自主选择 else { - Console.WriteLine("计算了PET5PS,当前接口" + _userInfo.RequestUrl + "当前结果"); return string.Empty; } - Console.WriteLine("计算了PET5PS,当前接口" + _userInfo.RequestUrl+"当前结果"+ result.GetEnumInt()); return result.GetEnumInt(); } #endregion diff --git a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs index 0e482d0cd..93e01519e 100644 --- a/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs +++ b/IRaCIS.Core.Domain.Share/Reading/ReadEnum.cs @@ -2001,10 +2001,49 @@ public enum SUVChangeVSBaseline } - /// - /// 问题类型 这里序号关系着计算顺序 请勿修改 - /// - public enum QuestionType + + /// + /// 影像质量问题 + /// + public enum ImageQualityIssues + { + /// + /// 解剖不完整 + /// + IncompleteAnatomy = 1, + + /// + /// 扫描断层丢失 + /// + MissingScanSlice=2, + + /// + /// 存在运动伪影 + /// + MotionArtifactsPresent = 3, + + /// + /// 关键解剖部位缺失 + /// + KeyAnatomyOutOfFieldOfView = 4, + + /// + /// 其它(需要备注) + /// + OtherIssuesCommentsRequired=5, + + /// + /// PET-CT影像无法融合 + /// + PETCTFailureFuse = 6, + + } + + + /// + /// 问题类型 这里序号关系着计算顺序 请勿修改 + /// + public enum QuestionType { /// /// 靶病灶径线之和(SOD) @@ -2315,6 +2354,11 @@ public enum SUVChangeVSBaseline /// 脾底位置 /// SplenicBottomPosition = 61, + + /// + /// 影像质量问题 + /// + ImageQualityProblem = 67, }