From a6fcf3421c609593c5118bf2edd43b4de4825f61 Mon Sep 17 00:00:00 2001
From: he <10978375@qq.com>
Date: Tue, 11 Jul 2023 11:49:48 +0800
Subject: [PATCH] S-40
---
.../ClinicalData/ReadingClinicalDataService.cs | 7 ++++++-
.../Service/Reading/Dto/ReadingClinicalDataDto.cs | 15 ++++++++++-----
2 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs
index 900d57eff..05dbab942 100644
--- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs
+++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs
@@ -691,6 +691,7 @@ namespace IRaCIS.Application.Services
var setIds = moduleCriterionFromList.Select(x=>x.ClinicalDataTrialSetId).Distinct().ToList();
var clinicalresult = await _clinicalDataTrialSetRepository.Where(x => x.UploadRole == UploadRole.CRC && (x.ClinicalDataLevel == ClinicalLevel.OncologyRead || x.ClinicalDataLevel == ClinicalLevel.ImageRead))
.Where(x => setIds.Contains(x.Id))
+
.Select(x => new GetReadingClinicalDataListOutDto()
{
@@ -794,6 +795,7 @@ namespace IRaCIS.Application.Services
{
var resultQuery = _readingClinicalDataRepository.Where(x => x.SubjectId == inDto.SubjectId)
.Where(x => x.ReadingId == inDto.ReadingId)
+ .WhereIf(inDto.ClinicalDataTrialSetId!=null, x=>x.ClinicalDataTrialSetId==inDto.TrialReadingCriterionId)
.Where(x => x.ClinicalDataTrialSet.TrialClinicalDataSetCriteriaList.Any(t=>t.TrialReadingCriterionId==inDto.TrialReadingCriterionId))
.Select(x => new GetReadingClinicalDataListOutDto()
{
@@ -831,7 +833,10 @@ namespace IRaCIS.Application.Services
.FirstOrDefaultAsync();
if (readModule != null)
{
- var moduleCriterionFromList = await _readModuleCriterionFromRepository.Where(x => x.ReadModuleId == readModule.Id).Select(x => new {
+ var moduleCriterionFromList = await _readModuleCriterionFromRepository.Where(x => x.ReadModuleId == readModule.Id)
+
+ .WhereIf(inDto.ClinicalDataTrialSetId != null, x => x.ClinicalForm.ClinicalDataTrialSetId == inDto.TrialReadingCriterionId)
+ .Select(x => new {
ClinicalFormId = x.ClinicalFormId,
CheckDate = x.ClinicalForm.CheckDate,
ClinicalDataTrialSetId = x.ClinicalForm.ClinicalDataTrialSetId
diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs
index 6825d0851..c20cff244 100644
--- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs
+++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs
@@ -213,11 +213,16 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid SubjectId { get; set; }
[NotDefault]
public Guid ReadingId { get; set; }
-
- ///
- /// 1 PM上传的所有的 2CRC上传的所有已确认的 3 所有已经签名的
- ///
- public GetClinicalType? GetClinicalType { get; set; }
+
+ ///
+ /// 临床数据类型Id
+ ///
+ public Guid? ClinicalDataTrialSetId { get; set; }
+
+ ///
+ /// 1 PM上传的所有的 2CRC上传的所有已确认的 3 所有已经签名的
+ ///
+ public GetClinicalType? GetClinicalType { get; set; }
[NotDefault]
public Guid TrialReadingCriterionId { get; set; }