Merge branch 'Test_IRC_Net10' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net10
continuous-integration/drone/push Build is running

This commit is contained in:
he
2026-06-17 17:33:09 +08:00
4 changed files with 17 additions and 8 deletions
@@ -13,6 +13,6 @@ namespace IRaCIS.Core.Application.Interfaces
Task<PageOutput<SiteStatDTO>> GetSiteCRCList(SiteCrcQueryDTO param);
Task<IResponseOutput<PageOutput<SiteStatSimpleDTO>> > GetSiteCRCSimpleList(SiteCrcQueryDTO param);
Task<PageOutput<TrialSiteScreeningDTO>> GetTrialSiteScreeningList(TrialSiteQuery trialSiteQuery);
Task<IEnumerable<TrialSiteForSelect>> GetTrialSiteSelect(Guid trialId);
Task<IEnumerable<TrialSiteForSelect>> GetTrialSiteSelect(Guid trialId, bool? ignoreDisable);
}
}
@@ -268,13 +268,21 @@ namespace IRaCIS.Core.Application.Services
/// 获取项目下的 site 下拉框数据 CRC只看到他负责的
/// </summary>
/// <param name="trialId"></param>
/// <param name="ignoreDisable"></param>
/// <returns></returns>
[HttpGet("{trialId:guid}")]
public async Task<IEnumerable<TrialSiteForSelect>> GetTrialSiteSelect(Guid trialId)
public async Task<IEnumerable<TrialSiteForSelect>> 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<TrialSiteForSelect>(_mapper.ConfigurationProvider).OrderBy(t => t.TrialSiteCode).ToListAsync();