diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 72a97326d..004baa736 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -985,6 +985,398 @@ + + + 方案编号 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 通用) + + + + 研究标识符 + + + 中心编号 + + + 受试者标识符 + + + 受试者唯一标识 + + + 访视名称 + + + 阅片人角色 + + + 拍片日期 + + + 阅片完成时间 + + + + 访视编号 VISITNUM + + + + 访视点备注 + + + + IVUS 导表模型 + + + + 靶段 + + + 斑块编号 + + + 外弹力膜面积 + + + 管腔面积 + + + 外弹力膜与管腔面积差值 + + + 回撤中的图像帧数 + + + 分析图像帧数 + + + 总外弹力膜面积 (如无可不填) + + + 总 PA (如无可不填) + + + PAV (如无可不填) + + + + OCT 导表模型 + + + + 靶段 + + + 斑块编号 + + + 测量标识 + + + 测量参数名称 + + + 测量参数值 + + + 测量值单位 + + + 斑块类型 + + + 最小纤维帽厚度 + + + 平均纤维帽厚度 + + + 脂质角度平均值 + + + 脂质角度最大值 + + + 巨噬细胞浸润 + + + 巨噬细胞浸润角度 + + + 微通道 + + + 胆固醇结晶 + ExploreRecommendService diff --git a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs index 69cc6719f..4965a065e 100644 --- a/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs +++ b/IRaCIS.Core.Application/Service/Allocation/DTO/VisitTaskViewModel.cs @@ -490,6 +490,8 @@ namespace IRaCIS.Core.Application.ViewModel public int? RandomOrder { get; set; } public bool? IsRandomOrderList { get; set; } + + public CriterionType? CriterionType { get; set; } } diff --git a/IRaCIS.Core.Application/Service/Common/_MapConfig.cs b/IRaCIS.Core.Application/Service/Common/_MapConfig.cs index 446757487..f86a835c4 100644 --- a/IRaCIS.Core.Application/Service/Common/_MapConfig.cs +++ b/IRaCIS.Core.Application/Service/Common/_MapConfig.cs @@ -2,6 +2,7 @@ using IRaCIS.Application.Contracts; using IRaCIS.Core.Application.Contracts; using IRaCIS.Core.Application.Helper; +using IRaCIS.Core.Application.Service.Common; using IRaCIS.Core.Application.ViewModel; namespace IRaCIS.Core.Application.Service diff --git a/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs b/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs index 2bdaaa87d..efd7e54ed 100644 --- a/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs +++ b/IRaCIS.Core.Domain/Reading/ReadingFormAnswer/ReadingTableAnswerRowInfo.cs @@ -11,6 +11,18 @@ public class ReadingTableAnswerRowInfo : BaseFullDeleteAuditEntity [ForeignKey("InstanceId")] public DicomInstance Instance { get; set; } + + [JsonIgnore] + [ForeignKey("SeriesId")] + public DicomSeries DicomSeries { get; set; } + + /// + /// studyId 关联 dicom 和非dicom ,这里为了查询方便,默认查询非dicom dicom 通过序列查询 + /// + [JsonIgnore] + [ForeignKey("StudyId")] + public NoneDicomStudy NoneDicomStudy { get; set; } + [JsonIgnore] [ForeignKey("OrganInfoId")] public OrganInfo OrganInfo { get; set; } diff --git a/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs b/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs index f2e4ef204..9b4bb4e26 100644 --- a/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs +++ b/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs @@ -32,7 +32,7 @@ public class DicomSeriesConfigration : IEntityTypeConfiguration builder.HasMany(s => s.DicomInstanceList).WithOne(di => di.DicomSerie).HasForeignKey(t => t.SeriesId).HasPrincipalKey(se => se.Id); builder.HasMany(s => s.SubjectCriteriaEvaluationVisitStudyFilterList).WithOne(di => di.Series).HasForeignKey(t => t.SeriesId).HasPrincipalKey(se => se.Id); - + } } @@ -42,10 +42,10 @@ public class DicomInstanceConfigration : IEntityTypeConfiguration { builder.HasKey(e => e.SeqId); - builder.HasOne(e => e.DicomStudy).WithMany(c=>c.InstanceList).HasForeignKey(t=>t.StudyId).HasPrincipalKey(st => st.Id); + builder.HasOne(e => e.DicomStudy).WithMany(c => c.InstanceList).HasForeignKey(t => t.StudyId).HasPrincipalKey(st => st.Id); builder.HasMany(s => s.ReadingTableAnswerRowInfoList).WithOne(di => di.Instance).HasForeignKey(t => t.InstanceId).HasPrincipalKey(se => se.Id); - + } } @@ -76,7 +76,7 @@ public class TaskInstanceConfigration : IEntityTypeConfiguration { builder.HasKey(e => e.SeqId); - builder.HasOne(e => e.TaskStudy).WithMany(t=>t.InstanceList).HasForeignKey(t => t.StudyId).HasPrincipalKey(st => st.Id); + builder.HasOne(e => e.TaskStudy).WithMany(t => t.InstanceList).HasForeignKey(t => t.StudyId).HasPrincipalKey(st => st.Id); } } @@ -112,6 +112,18 @@ public class SCPInstanceConfigration : IEntityTypeConfiguration } +public class ReadingTableAnswerRowInfoConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + + + builder.HasOne(e => e.DicomSeries).WithMany().HasForeignKey(t => t.SeriesId).HasPrincipalKey(st => st.Id); + + //builder.HasOne(e => e.Instance).WithMany().HasForeignKey(t => t.InstanceId).HasPrincipalKey(st => st.Id); + } +} +