From 8a2833bbdae83b6d760c05d06c8f698616e9f53a Mon Sep 17 00:00:00 2001 From: he <10978375@qq.com> Date: Mon, 5 Dec 2022 16:14:28 +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/ReadingClinicalDataService.cs | 10 ++++++++++ .../Service/Reading/Dto/ReadingClinicalDataDto.cs | 5 ++++- .../ReadingImageTask/ReadingOncologyTaskService.cs | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs index 920a7118..6feb917c 100644 --- a/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ClinicalData/ReadingClinicalDataService.cs @@ -23,6 +23,7 @@ namespace IRaCIS.Application.Services private readonly IRepository _previousHistoryRepository; private readonly IRepository _previousOtherRepository; private readonly IRepository _previousSurgeryRepository; + private readonly IRepository _readingQuestionCriterionTrialRepository; private readonly IServiceProvider iServiceProvider; private readonly IRepository _subjectRepository; private readonly IRepository _readModuleRepository; @@ -35,6 +36,7 @@ namespace IRaCIS.Application.Services IRepository previousHistoryRepository, IRepository previousOtherRepository, IRepository previousSurgeryRepository, + IRepository readingQuestionCriterionTrialRepository, IServiceProvider IServiceProvider, IRepository subjectRepository, @@ -49,6 +51,7 @@ namespace IRaCIS.Application.Services this._previousHistoryRepository = previousHistoryRepository; this._previousOtherRepository = previousOtherRepository; this._previousSurgeryRepository = previousSurgeryRepository; + this._readingQuestionCriterionTrialRepository = readingQuestionCriterionTrialRepository; this.iServiceProvider = IServiceProvider; this._subjectRepository = subjectRepository; this._readModuleRepository = readModuleRepository; @@ -494,13 +497,20 @@ namespace IRaCIS.Application.Services [NonDynamicMethod] public async Task> GetReadingClinicalList(GetReadingClinicalDataListIndto inDto) { + + var criterionType = await _readingQuestionCriterionTrialRepository.Where(x => x.Id == inDto.TrialReadingCriterionId).Select(x => x.CriterionType).FirstNotNullAsync(); + + var resultQuery = _readingClinicalDataRepository.Where(x => x.SubjectId == inDto.SubjectId) .Where(x => x.ReadingId == inDto.ReadingId) .WhereIf(inDto.UploadRole == UploadRole.CRC, x => x.ClinicalDataTrialSet.UploadRole == UploadRole.CRC) + .Include(x=>x.ClinicalDataTrialSet) + .Where(x=>x.ClinicalDataTrialSet.CriterionEnumListStr.Contains(((int)criterionType).ToString())) .Select(x => new GetReadingClinicalDataListOutDto() { ClinicalDataLevel = x.ClinicalDataTrialSet.ClinicalDataLevel, SubjectId = x.SubjectId, + ClinicalDataSetName = x.ClinicalDataTrialSet.ClinicalDataSetName, ClinicalDataTrialSetId = x.ClinicalDataTrialSetId, IsSign = x.IsSign, diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs index 533ebc3f..53d4aa66 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ReadingClinicalDataDto.cs @@ -196,7 +196,10 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto public Guid ReadingId { get; set; } public UploadRole? UploadRole { get; set; } - + + [NotDefault] + public Guid TrialReadingCriterionId { get; set; } + public Guid TrialId { get; set; } /// diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs index cea7cb31..029dc878 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingOncologyTaskService.cs @@ -246,6 +246,7 @@ namespace IRaCIS.Application.Services SubjectId = readModuleInfo.SubjectId, ReadingId = readModuleInfo.Id, TrialId = readModuleInfo.TrialId, + TrialReadingCriterionId= readModuleInfo.TrialReadingCriterionId, });