From 010367d018bb31bc1f5e6351672a7286589f66b4 Mon Sep 17 00:00:00 2001
From: hang <872297557@qq.com>
Date: Thu, 12 Feb 2026 03:57:42 -0500
Subject: [PATCH] =?UTF-8?q?=E5=AF=BC=E8=A1=A8=E6=A8=A1=E6=9D=BF=E4=BF=AE?=
=?UTF-8?q?=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../IRaCIS.Core.Application.xml | 546 +++++++++---------
.../Common/{ => Export}/ExcelExportService.cs | 0
.../Service/Visit/VisitPlanService.cs | 20 +-
.../_IRaCIS/_Config/_StaticData.cs | 5 +
4 files changed, 290 insertions(+), 281 deletions(-)
rename IRaCIS.Core.Application/Service/Common/{ => Export}/ExcelExportService.cs (100%)
diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
index 74d1b453b..61c1555c2 100644
--- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
+++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml
@@ -674,6 +674,276 @@
+
+
+ 方案编号 STUDYID
+
+
+
+
+ 域 DOMAIN TU TR RS
+
+
+
+
+ 取值类型 TUSPID TRSPID RSSPID
+
+
+
+
+ 受试者编号 USUBJID 实际展示TrialSiteSubjectCode
+
+
+
+
+ 供应商 TUNAM (Extensive Imaging)
+
+
+
+
+ 阅片人 TUEVAL TREVAL RSEVAL
+
+
+
+
+ 阅片人标识 TUEVALID TREVALID RSEVALID
+
+
+
+
+ 访视编号 VISITNUM
+
+
+
+
+ 访视名称 VISIT
+
+
+
+
+ 拍片日期 TUDTC TRDTC RSDTC
+
+
+
+
+ eCRF标识 TUREFID TRREFID RSREFID
+
+
+
+
+ RSCAT 阅片标准
+
+
+
+
+ RSACPTFL 裁定标记 TUACPTFL
+
+
+
+
+ 序号 TUSEQ (同一个访视,所有阅片人选择病灶给个顺序号)
+
+
+
+
+ 链接ID TULNKID (阅片人角色_病灶编号)不同访视可以重复
+
+
+
+
+ 肿瘤识别简称 TUTESTCD
+
+
+
+
+ 肿瘤识别全称 TUTEST
+
+
+
+
+ 肿瘤鉴定结果 TUORRES
+
+
+
+
+ 肿瘤识别结果类型 TUSTRESC
+
+
+
+
+ 部位 TULOC (对应病灶表的部位,需要国际化)
+
+
+
+
+ 鉴定方法 TUMETHOD (Modality?)
+
+
+
+
+ 部位描述 LOCTEXT
+
+
+
+
+ 每个subject 按照顺序编号 TRSEQ
+
+
+
+
+ TRGRPID 组ID 对应TU表肿瘤鉴定结果 TumorIdentificationResult
+
+
+
+
+ TRLNKID 链接ID 对应TU表的链接ID TumorNo(阅片人角色_病灶编号)
+
+
+
+
+ TRLNKGRP 链接组 ARM-任务名(访视名) 对应RS的链接组
+
+
+
+
+ 肿瘤评估简称 TRTESTCD
+
+
+
+
+ 肿瘤评估全称 TRTEST
+
+
+
+
+ 原始测量 TRORRES
+
+
+
+
+ 原始单位 TRORRESU
+
+
+
+
+ 标准结果(字符) TRSTRESC
+
+
+
+
+ 标准结果(数值) TRORRESU
+
+
+
+
+ 标准单位 TRSTRESU
+
+
+
+
+ 完成状态 TRSTAT
+
+
+
+
+ 完成状态 TRMETHOD
+
+
+
+
+ 无法测量原因 TRREASND
+
+
+
+
+ RSSEQ 按照subject 的数据顺序编号
+
+
+
+
+ RSLNKGRP 链接组 ARM_任务名(访视名)
+
+
+
+
+ RSTESTCD 疗效评估简称
+
+
+
+
+ RSTEST 疗效评估全称
+
+
+
+
+ RSORRES 响应评估原始结果
+
+
+
+
+ RSSTRESC 标准疗效评估
+
+
+
+
+ RSSTAT 完成状态
+
+
+
+
+ RSREASND 无法评估原因
+
+
+
+
+ REASASM 评估原因
+
+
+
+
+ REASOVR 重新评估原因
+
+
+
+
+ REASUPD 更新评估原因
+
+
+
+
+ 关联域 RS:(访视点备注) 空:裁判选择原因
+
+
+
+
+ COSEQ 序号
+
+
+
+
+ IDVAR 标识变量 RSSEQ 空:裁判选择原因
+
+
+
+
+ 标识 IDVARVAL RSSEQ具体的值 空:裁判选择原因
+
+
+
+
+ COREF 备注引用
+
+
+
+
+ 备注 COVAL
+
+
+
+
+ 裁决日期 CODTC
+
+
质控问题答案导出
@@ -989,276 +1259,6 @@
-
-
- 方案编号 STUDYID
-
-
-
-
- 域 DOMAIN TU TR RS
-
-
-
-
- 取值类型 TUSPID TRSPID RSSPID
-
-
-
-
- 受试者编号 USUBJID 实际展示TrialSiteSubjectCode
-
-
-
-
- 供应商 TUNAM (Extensive Imaging)
-
-
-
-
- 阅片人 TUEVAL TREVAL RSEVAL
-
-
-
-
- 阅片人标识 TUEVALID TREVALID RSEVALID
-
-
-
-
- 访视编号 VISITNUM
-
-
-
-
- 访视名称 VISIT
-
-
-
-
- 拍片日期 TUDTC TRDTC RSDTC
-
-
-
-
- eCRF标识 TUREFID TRREFID RSREFID
-
-
-
-
- RSCAT 阅片标准
-
-
-
-
- RSACPTFL 裁定标记 TUACPTFL
-
-
-
-
- 序号 TUSEQ (同一个访视,所有阅片人选择病灶给个顺序号)
-
-
-
-
- 链接ID TULNKID (阅片人角色_病灶编号)不同访视可以重复
-
-
-
-
- 肿瘤识别简称 TUTESTCD
-
-
-
-
- 肿瘤识别全称 TUTEST
-
-
-
-
- 肿瘤鉴定结果 TUORRES
-
-
-
-
- 肿瘤识别结果类型 TUSTRESC
-
-
-
-
- 部位 TULOC (对应病灶表的部位,需要国际化)
-
-
-
-
- 鉴定方法 TUMETHOD (Modality?)
-
-
-
-
- 部位描述 LOCTEXT
-
-
-
-
- 每个subject 按照顺序编号 TRSEQ
-
-
-
-
- TRGRPID 组ID 对应TU表肿瘤鉴定结果 TumorIdentificationResult
-
-
-
-
- TRLNKID 链接ID 对应TU表的链接ID TumorNo(阅片人角色_病灶编号)
-
-
-
-
- TRLNKGRP 链接组 ARM-任务名(访视名) 对应RS的链接组
-
-
-
-
- 肿瘤评估简称 TRTESTCD
-
-
-
-
- 肿瘤评估全称 TRTEST
-
-
-
-
- 原始测量 TRORRES
-
-
-
-
- 原始单位 TRORRESU
-
-
-
-
- 标准结果(字符) TRSTRESC
-
-
-
-
- 标准结果(数值) TRORRESU
-
-
-
-
- 标准单位 TRSTRESU
-
-
-
-
- 完成状态 TRSTAT
-
-
-
-
- 完成状态 TRMETHOD
-
-
-
-
- 无法测量原因 TRREASND
-
-
-
-
- RSSEQ 按照subject 的数据顺序编号
-
-
-
-
- RSLNKGRP 链接组 ARM_任务名(访视名)
-
-
-
-
- RSTESTCD 疗效评估简称
-
-
-
-
- RSTEST 疗效评估全称
-
-
-
-
- RSORRES 响应评估原始结果
-
-
-
-
- RSSTRESC 标准疗效评估
-
-
-
-
- RSSTAT 完成状态
-
-
-
-
- RSREASND 无法评估原因
-
-
-
-
- REASASM 评估原因
-
-
-
-
- REASOVR 重新评估原因
-
-
-
-
- REASUPD 更新评估原因
-
-
-
-
- 关联域 RS:(访视点备注) 空:裁判选择原因
-
-
-
-
- COSEQ 序号
-
-
-
-
- IDVAR 标识变量 RSSEQ 空:裁判选择原因
-
-
-
-
- 标识 IDVARVAL RSSEQ具体的值 空:裁判选择原因
-
-
-
-
- COREF 备注引用
-
-
-
-
- 备注 COVAL
-
-
-
-
- 裁决日期 CODTC
-
-
公共影像导表基类(IVUS / OCT 通用)
@@ -16790,17 +16790,17 @@
- ����
+ 质疑
- һ���Ժ˲�
+ 一致性核查
- ����
+ 复制
diff --git a/IRaCIS.Core.Application/Service/Common/ExcelExportService.cs b/IRaCIS.Core.Application/Service/Common/Export/ExcelExportService.cs
similarity index 100%
rename from IRaCIS.Core.Application/Service/Common/ExcelExportService.cs
rename to IRaCIS.Core.Application/Service/Common/Export/ExcelExportService.cs
diff --git a/IRaCIS.Core.Application/Service/Visit/VisitPlanService.cs b/IRaCIS.Core.Application/Service/Visit/VisitPlanService.cs
index 8b9c69687..3222e390f 100644
--- a/IRaCIS.Core.Application/Service/Visit/VisitPlanService.cs
+++ b/IRaCIS.Core.Application/Service/Visit/VisitPlanService.cs
@@ -1,11 +1,16 @@
using DocumentFormat.OpenXml.Office2010.ExcelAc;
using IRaCIS.Application.Contracts;
using IRaCIS.Application.Interfaces;
+using IRaCIS.Core.API._ServiceExtensions.NewtonsoftJson;
using IRaCIS.Core.Application.Filter;
+using IRaCIS.Core.Application.ViewModel;
using IRaCIS.Core.Domain.Share;
using IRaCIS.Core.Infrastructure;
+using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
+using Microsoft.Extensions.Hosting;
using MiniExcelLibs;
+using System.ComponentModel.Design;
namespace IRaCIS.Core.Application.Service
{
@@ -485,22 +490,21 @@ namespace IRaCIS.Core.Application.Service
}
[HttpGet("{visitPlanInfluenceStatId:guid}")]
- public async Task DownloadInflunceStudyList(Guid visitPlanInfluenceStatId)
+ public async Task DownloadInflunceStudyList(Guid visitPlanInfluenceStatId,
+ [FromServices] IRepository _commonDocumentRepository, [FromServices] IWebHostEnvironment _hostEnvironment, [FromServices] IRaCIS.Application.Interfaces.IDictionaryService _dictionaryService)
{
var list = _influnceRepository.Where(t => t.VisitPlanInfluenceStatId == visitPlanInfluenceStatId)
.ProjectTo(_mapper.ConfigurationProvider).ToList();
- var memoryStream = new MemoryStream();
- memoryStream.SaveAs(list);
- memoryStream.Seek(0, SeekOrigin.Begin);
- return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
- {
- FileDownloadName = _localizer["VisitPlan_CheckExport", DateTime.Now.ToString("yyyy-MM-dd:hh:mm:ss")]
- };
+ var exportInfo = new ExcelExportInfo();
+ exportInfo.List = ExportExcelConverterDate.ConvertToClientTimeInObject(list, _userInfo.TimeZoneId);
+ exportInfo.CurrentTime = ExportExcelConverterDate.DateTimeInternationalToString(DateTime.Now, _userInfo.TimeZoneId);
+ return await ExcelExportHelper.DataExportAsync(StaticData.Export.TrialVisit_InfluenceStudys_Export, exportInfo, exportInfo.TrialCode, _commonDocumentRepository, _hostEnvironment, _dictionaryService, typeof(VisitPlanInfluenceSubjectVisitDTO));
+
}
diff --git a/IRaCIS.Core.Infrastructure/_IRaCIS/_Config/_StaticData.cs b/IRaCIS.Core.Infrastructure/_IRaCIS/_Config/_StaticData.cs
index c1f6aa1b4..8e331a5a7 100644
--- a/IRaCIS.Core.Infrastructure/_IRaCIS/_Config/_StaticData.cs
+++ b/IRaCIS.Core.Infrastructure/_IRaCIS/_Config/_StaticData.cs
@@ -316,6 +316,11 @@ public static class StaticData
public const string OCT_CDISC_Export = "OCT_CDISC_Export";
+ public const string TrialVisit_InfluenceStudys_Export = "TrialVisit_InfluenceStudys_Export";
+
+
+
+
}