From b3386c20abe6b10c1ef1f6c18caa288d5d227a5f Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Wed, 12 Jul 2023 10:31:58 +0800 Subject: [PATCH] S-45 --- .../ClinicalData/ClinicalAnswerService.cs | 17 +++++++++----- .../ReadingClinicalDataService.cs | 2 +- .../ClinicalData/ReadingClinicalData.cs | 6 +---- .../ClinicalQuestionAnswer/ClinicalForm.cs | 4 ++-- IRaCIS.Core.Domain/Visit/Subject.cs | 2 ++ .../ClinicalFromConfigration.cs | 22 +++++++++---------- 6 files changed, 29 insertions(+), 24 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs index 1c28eb9e4..24d4bc267 100644 --- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalAnswerService.cs @@ -128,7 +128,14 @@ namespace IRaCIS.Core.Application.Service var clinicalDataList =await _readingClinicalDataRepository .WhereIf(inDto.SubjectId != null, x => x.SubjectId == inDto.SubjectId) - .Where(x =>x.TrialId==inDto.TrialId&&x.ClinicalDataTrialSet.UploadRole== UploadRole.CRC).IgnoreAutoIncludes().ToListAsync(); + .Where(x =>x.TrialId==inDto.TrialId&&x.ClinicalDataTrialSet.UploadRole== UploadRole.CRC) + .Select(x=>new + { + ClinicalDataTrialSetId=x.ClinicalDataTrialSetId, + SubjectId=x.SubjectId, + x.ReadingId, + + }).ToListAsync(); List readingClinicalDatas = new List(); @@ -184,12 +191,12 @@ namespace IRaCIS.Core.Application.Service }).ToList()); }); - await _readingClinicalDataRepository.AddRangeAsync(readingClinicalDatas); - - await _readingClinicalDataRepository.SaveChangesAsync(); + + await _readingClinicalDataRepository.AddRangeAsync(readingClinicalDatas); + await _readingClinicalDataRepository.SaveChangesAsync(); - } + } /// /// 获取CRC受试者临床数据 diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs index 00e3e559d..ab142f525 100644 --- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs @@ -197,7 +197,7 @@ namespace IRaCIS.Application.Services Path = x.ClinicalDataTrialSet.Path, IsBlind = x.IsBlind, IsComplete = x.IsComplete, - ClinicalFromList=x.ClinicalFormList.Select(y=> new ClinicalFromData() { + ClinicalFromList=x.Subject.ClinicalFormList.Where(y=>y.ReadingId==x.ReadingId).Select(y=> new ClinicalFromData() { CheckDate=y.CheckDate, ClinicalFormId=y.Id }).ToList(), diff --git a/IRaCIS.Core.Domain/Reading/ClinicalData/ReadingClinicalData.cs b/IRaCIS.Core.Domain/Reading/ClinicalData/ReadingClinicalData.cs index ce3380c9b..2c6ba3b0f 100644 --- a/IRaCIS.Core.Domain/Reading/ClinicalData/ReadingClinicalData.cs +++ b/IRaCIS.Core.Domain/Reading/ClinicalData/ReadingClinicalData.cs @@ -96,11 +96,7 @@ namespace IRaCIS.Core.Domain.Models [JsonIgnore] public List ReadingClinicalDataPDFList { get; set; } - /// - /// 临床数据表单 - /// - [JsonIgnore] - public List ClinicalFormList { get; set; } + } diff --git a/IRaCIS.Core.Domain/Reading/ClinicalQuestionAnswer/ClinicalForm.cs b/IRaCIS.Core.Domain/Reading/ClinicalQuestionAnswer/ClinicalForm.cs index 294097af3..b59d1374d 100644 --- a/IRaCIS.Core.Domain/Reading/ClinicalQuestionAnswer/ClinicalForm.cs +++ b/IRaCIS.Core.Domain/Reading/ClinicalQuestionAnswer/ClinicalForm.cs @@ -55,8 +55,8 @@ namespace IRaCIS.Core.Domain.Models public ClinicalDataTrialSet ClinicalDataTrialSet { get; set; } [JsonIgnore] - - public ReadingClinicalData ReadingClinicalData { get; set; } + [ForeignKey("SubjectId")] + public Subject Subject { get; set; } } diff --git a/IRaCIS.Core.Domain/Visit/Subject.cs b/IRaCIS.Core.Domain/Visit/Subject.cs index d1a4e131f..82adee191 100644 --- a/IRaCIS.Core.Domain/Visit/Subject.cs +++ b/IRaCIS.Core.Domain/Visit/Subject.cs @@ -121,6 +121,8 @@ namespace IRaCIS.Core.Domain.Models public Guid? DeleteUserId { get; set; } public bool IsReReadingOrBackInfluenceAnalysis { get; set; } + [JsonIgnore] + public List ClinicalFormList { get; set; } public Guid? ClaimUserId { get; set; } diff --git a/IRaCIS.Core.Infra.EFCore/EntityConfigration/ClinicalFromConfigration.cs b/IRaCIS.Core.Infra.EFCore/EntityConfigration/ClinicalFromConfigration.cs index cd87fd662..98b711e7a 100644 --- a/IRaCIS.Core.Infra.EFCore/EntityConfigration/ClinicalFromConfigration.cs +++ b/IRaCIS.Core.Infra.EFCore/EntityConfigration/ClinicalFromConfigration.cs @@ -9,19 +9,19 @@ using System.Threading.Tasks; namespace IRaCIS.Core.Infra.EFCore.EntityConfigration { - public class ClinicalFromConfigration : IEntityTypeConfiguration - { + //public class ClinicalFromConfigration : IEntityTypeConfiguration + //{ - public void Configure(EntityTypeBuilder builder) - { - builder - .HasOne(s => s.ReadingClinicalData) - .WithMany(c => c.ClinicalFormList) - .HasForeignKey(s => new { s.SubjectId, s.ReadingId }) - .HasPrincipalKey(c => new { c.SubjectId, c.ReadingId }); - } + // public void Configure(EntityTypeBuilder builder) + // { + // builder + // .HasOne(s => s.ReadingClinicalData) + // .WithMany(c => c.ClinicalFormList) + // .HasForeignKey(s => new { s.SubjectId, s.ReadingId }) + // .HasPrincipalKey(c => new { c.SubjectId, c.ReadingId }); + // } - } + //} }