diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 3b0916bf7..2615f37f1 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -565,6 +565,11 @@ 上传方式 + + + 项目ID + + 名称 @@ -3291,6 +3296,13 @@ + + + 设置勾选 + + + + 将系统配置添加到项目配置 diff --git a/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs b/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs index 95c692cb2..d90ffa6d1 100644 --- a/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ClinicalDataSetService.cs @@ -98,6 +98,45 @@ namespace IRaCIS.Application.Services } + + /// + /// 设置勾选 + /// + /// + /// + public async Task SetClinicalDataCheckd(SetClinicalDataCheckdIndto setClinicalData) + { + // 为了后面稽查这样写 + + var nocheckids =await _clinicalDataTrialSetRepository.Where(x => x.TrialId == setClinicalData.TrialId && setClinicalData.ClinicalDataTrialIds.Contains(x.Id)).Select(x => x.Id).ToListAsync(); + + foreach (var item in setClinicalData.ClinicalDataTrialIds) + { + + + await _clinicalDataTrialSetRepository.UpdatePartialFromQueryAsync(item, x => new ClinicalDataTrialSet() + { + IsCheck = true + }); + + } + + foreach (var item in nocheckids) + { + + + await _clinicalDataTrialSetRepository.UpdatePartialFromQueryAsync(item, x => new ClinicalDataTrialSet() + { + IsCheck = false + }); + + } + + await _clinicalDataTrialSetRepository.SaveChangesAsync(); + + return ResponseOutput.Ok(true); + } + /// /// 将系统配置添加到项目配置 /// @@ -118,6 +157,7 @@ namespace IRaCIS.Application.Services ClinicalDataLevel=x.ClinicalDataLevel, ClinicalUploadType=x.ClinicalUploadType, TrialId= trialId, + IsEnable=x.IsEnable, }).ToList(); await _clinicalDataTrialSetRepository.AddRangeAsync(dataSets); var result= await _clinicalDataTrialSetRepository.SaveChangesAsync(); diff --git a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs index 043a0b0f1..90c17b9e8 100644 --- a/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs +++ b/IRaCIS.Core.Application/Service/Reading/Dto/ClinicalDataServiceViewModel.cs @@ -188,6 +188,19 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto } + public class SetClinicalDataCheckdIndto + { + /// + /// 项目ID + /// + public Guid TrialId { get; set; } + + + + public List ClinicalDataTrialIds { get; set; } + } + + public class GetTrialClinicalDataTrialIndto { public Guid TrialId { get; set; } diff --git a/IRaCIS.Core.Application/Service/Reading/ReadModuleService.cs b/IRaCIS.Core.Application/Service/Reading/ReadModuleService.cs index 4208d46a8..a686bbe78 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadModuleService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadModuleService.cs @@ -377,13 +377,9 @@ namespace IRaCIS.Application.Services /// public async Task> GetSubjectReadVisitList(GetSubjectReadVisitsInDto inDto) { - var maxReadVisit = await _readModuleRepository.Where(x => x.SubjectId == inDto.SubjectId&&x.ReadingSetType==inDto.ReadingSetType && x.ModuleType != ModuleTypeEnum.Global).OrderByDescending(x=>x.VisitNum).FirstOrDefaultAsync(); - var maxReadVisitNum= maxReadVisit==null?0:maxReadVisit.VisitNum; - var visitQuery = _subjectVisitRepository.Where(x => x.SubjectId == inDto.SubjectId && x.LatestScanDate != null); - var finalVisitNum = await visitQuery.Where(x => x.IsFinalVisit).Select(x => x.VisitNum).FirstOrDefaultAsync();