diff --git a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs index 3bdce95f3..ac89912c7 100644 --- a/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs +++ b/IRaCIS.Core.Application/Service/Reading/ReadingImageTask/ReadingImageTaskService.cs @@ -3412,6 +3412,15 @@ namespace IRaCIS.Core.Application.Service throw new BusinessValidationFailedException(_localizer["ReadingImage_IDMust"]); } + if (inDto.SubjectCode.IsNotNullOrEmpty() && inDto.SubjectId != null) + { + if (! (await _visitTaskRepository.AnyAsync(x => x.TrialReadingCriterionId == inDto.TrialReadingCriterionId + && x.SubjectId == inDto.SubjectId && (x.BlindSubjectCode == inDto.SubjectCode || x.Subject.Code == inDto.SubjectCode)))) + { + throw new BusinessValidationFailedException(_localizer["ReadingImage_SubjectCodeError"]); + } + } + #region 跳过阅片 var clearSkipReadingCache = await _fusionCache.GetOrDefaultAsync(CacheKeys.SkipReadingCacheKey(_userInfo.UserRoleId));