diff --git a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml index 3d41b2217..6241f27c7 100644 --- a/IRaCIS.Core.Application/IRaCIS.Core.Application.xml +++ b/IRaCIS.Core.Application/IRaCIS.Core.Application.xml @@ -16834,17 +16834,17 @@ - ���� + 质疑 - һ���Ժ˲� + 一致性核查 - ���� + 复制 diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs index d849a5c5a..e3f031e0e 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs @@ -939,7 +939,8 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc //存在ivus 和oct 这两种的项目 if (_readingQuestionCriterionTrialRepository.Where(t => t.TrialId == info.TrialId && (t.CriterionType == CriterionType.IVUS || t.CriterionType == CriterionType.OCT)).Distinct().Count() == 2 - && !_noneDicomStudyReposiotry.Any(t => t.SubjectId == inQuery.SubjectId && t.Modality == "IVUS")) + && _noneDicomStudyReposiotry.Where(t => t.SubjectId == inQuery.SubjectId && t.Modality == "IVUS").Count() != _dicomStudyRepository.Where(t => t.SubjectId == inQuery.SubjectId).Select(t => t.SubjectVisitId).Distinct().Count() + ) { #region ivus 自动创建非dicom检查 @@ -957,6 +958,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc }).ToListAsync(); + var noneDicomStudyVisitIdList = _noneDicomStudyReposiotry.Where(t => t.SubjectId == inQuery.SubjectId && t.Modality == "IVUS").Select(t => t.SubjectVisitId).ToList(); var @lock = _distributedLockProvider.CreateLock($"NoneDicomCode"); @@ -967,10 +969,12 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc //默认会是0 var code = await _noneDicomStudyReposiotry.Where(t => t.TrialId == trialId).Select(x => x.Code).DefaultIfEmpty().MaxAsync(); - foreach (var g in addList.GroupBy(t => t.SubjectVisitId)) + foreach (var g in addList.Where(t => !noneDicomStudyVisitIdList.Contains(t.SubjectVisitId)).GroupBy(t => t.SubjectVisitId)) { var addOrEditNoneDicomStudy = g.First(); + + var optEntity = await _noneDicomStudyReposiotry.InsertFromDTOAsync(addOrEditNoneDicomStudy); optEntity.Code = code + 1;