From be088d8ba2ce541f8297ccfbeba0fef5f4d993d6 Mon Sep 17 00:00:00 2001 From: he <109787524@qq.com> Date: Fri, 29 Mar 2024 13:24:57 +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 --- .../Reading/ClinicalData/ClinicalDataSetService.cs | 10 ++++++---- .../Reading/ClinicalData/ClinicalDataTrialSet.cs | 13 +++++++++---- 2 files changed, 15 insertions(+), 8 deletions(-) diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalDataSetService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalDataSetService.cs index d9fef6059..3305e04d3 100644 --- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalDataSetService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ClinicalDataSetService.cs @@ -8,6 +8,7 @@ using IRaCIS.Core.Infrastructure; using System.Linq; using System.Linq.Expressions; using System; +using MathNet.Numerics.Optimization.LineSearch; namespace IRaCIS.Application.Services { @@ -281,11 +282,12 @@ namespace IRaCIS.Application.Services if (inDto.CriterionIds != null) { - - predicate = x => x.IsConfirm || x.SystemClinicalDataSetId == null; - foreach (var item in inDto.CriterionIds) + List criterionTypes = (await _iReadingQuestionCriterionTrialRepository.Where(x => inDto.CriterionIds.Contains(x.Id)).Select(x => x.CriterionType).ToListAsync()) + .Select(x => ((int)x).ToString()).ToList(); + predicate = x => x.IsConfirm || x.SystemClinicalDataSetId == null; + foreach (var item in criterionTypes) { - Expression> typeExpression = x => x.TrialClinicalDataSetCriteriaList.Any(x=>x.TrialReadingCriterionId== item); + Expression> typeExpression = x =>x.ClinicalDataSystemSet==null|| x.ClinicalDataSystemSet.CriterionEnumListStr.Contains(item); predicate = predicate.Or(typeExpression); } diff --git a/IRaCIS.Core.Domain/Reading/ClinicalData/ClinicalDataTrialSet.cs b/IRaCIS.Core.Domain/Reading/ClinicalData/ClinicalDataTrialSet.cs index 4eb814256..c358e751c 100644 --- a/IRaCIS.Core.Domain/Reading/ClinicalData/ClinicalDataTrialSet.cs +++ b/IRaCIS.Core.Domain/Reading/ClinicalData/ClinicalDataTrialSet.cs @@ -48,10 +48,15 @@ namespace IRaCIS.Core.Domain.Models /// public Guid? SystemClinicalDataSetId { get; set; } - /// - /// 创建时间 - /// - public DateTime CreateTime { get; set; } + /// + /// 系统的ClinicalDataSet + /// + public ClinicalDataSystemSet? ClinicalDataSystemSet { get; set; } + + /// + /// 创建时间 + /// + public DateTime CreateTime { get; set; } /// /// 创建人