From 5ade2135ee752eca4e9a125e5024f6bcb492cced Mon Sep 17 00:00:00 2001
From: he <109787524@qq.com>
Date: Wed, 10 Sep 2025 15:11:34 +0800
Subject: [PATCH] =?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 ++++-
.../Reading/Dto/ExportTumorEvaluationDto.cs | 44 +++++++++++++++++--
2 files changed, 51 insertions(+), 5 deletions(-)
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index d6394366c..6332842f8 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -7087,7 +7087,7 @@
- 所有访视的靶病灶列表
+ 所有访视的靶病灶列表 最多有三个
@@ -7115,6 +7115,16 @@
靶病灶信息
+
+
+
+
+
+
+
+
+
+
非靶病灶信息
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ExportTumorEvaluationDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ExportTumorEvaluationDto.cs
index a275d7557..b7f5f02d0 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ExportTumorEvaluationDto.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ExportTumorEvaluationDto.cs
@@ -1,6 +1,10 @@
-using System;
+using DocumentFormat.OpenXml.Wordprocessing;
+using MassTransit.Caching.Internals;
+using System;
+using System.Collections;
using System.Collections.Generic;
using System.Linq;
+using System.Reflection;
using System.Text;
using System.Threading.Tasks;
@@ -17,7 +21,7 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public class ExportTumorEvaluationInfo
{
///
- /// 所有访视的靶病灶列表
+ /// 所有访视的靶病灶列表 最多有三个
///
public List VisitList { get; set; }
@@ -97,8 +101,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
TargetInfo targetInfo = new TargetInfo()
{
Title = item.Title,
- VisitOneImgNum = item.VisitImgNum,
- VisitOneLength = item.VisitLength.ToString(),
+ VisitOneImgNum = GetVisitAnswer(0, "VisitTargetInfoList", index, "VisitImgNum"),
+ VisitOneLength = GetVisitAnswer(0, "VisitTargetInfoList", index, "VisitLength"),
VisitTwoImgNum = VisitList.Count >= 2 ? VisitTwo.VisitTargetInfoList[index].VisitImgNum : string.Empty,
VisitTwoLength = VisitList.Count >= 2 ? VisitTwo.VisitTargetInfoList[index].VisitLength.ToString() : string.Empty,
VisitThreeImgNum = VisitList.Count >= 3 ? VisitThree.VisitTargetInfoList[index].VisitImgNum : string.Empty,
@@ -112,6 +116,38 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
}
}
+ ///
+ /// 获取访视答案
+ ///
+ /// 访视Index 第几个访视
+ /// 病灶字段名 数组
+ /// 第几个病灶
+ /// 要取的字段名
+ ///
+ private string GetVisitAnswer(int visitIndex, string lesionName , int num, string fieldName)
+ {
+ var result= string.Empty;
+ try
+ {
+ PropertyInfo listProp = VisitList[visitIndex].GetType().GetProperty(lesionName);
+ IList list = listProp.GetValue(VisitList[visitIndex]) as IList;
+ object listItem = list[num];
+ FieldInfo field = listItem.GetType().GetField(fieldName, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
+ if (field != null)
+ return field.GetValue(listItem).ToString();
+ PropertyInfo prop = listItem.GetType().GetProperty(fieldName, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
+ if (prop != null)
+ return prop.GetValue(listItem).ToString();
+ }
+ catch (Exception)
+ {
+
+
+ }
+
+ return result;
+ }
+
///
/// 非靶病灶信息
///