diff --git a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs index 615440f8f..3d03a692b 100644 --- a/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs +++ b/IRaCIS.Core.Application/Service/TrialSiteUser/TrialSiteService.cs @@ -270,11 +270,18 @@ namespace IRaCIS.Core.Application.Services /// /// [HttpGet("{trialId:guid}")] - public async Task> GetTrialSiteSelect(Guid trialId) + public async Task> GetTrialSiteSelect(Guid trialId, bool? ignoreDisable) { //CRC只看到他负责的 - var list = await _trialSiteRepository.Where(t => t.TrialId == trialId) + var query = _trialSiteRepository.Where(t => t.TrialId == trialId); + + if (ignoreDisable == true) + { + query = query.IgnoreQueryFilters(); + } + + var list = await query .WhereIf(_userInfo.UserTypeEnumInt == (int)UserTypeEnum.ClinicalResearchCoordinator || _userInfo.UserTypeEnumInt == (int)UserTypeEnum.CRA, t => t.CRCUserList.Any(t => t.UserId == _userInfo.UserRoleId)) .ProjectTo(_mapper.ConfigurationProvider).OrderBy(t => t.TrialSiteCode).ToListAsync();