public Task <IEnumerable <FunctionAuthority> > GetAsync(FunctionAuthoritySearch option, CancellationToken token = default(CancellationToken)) { var query = @" SELECT fa.* FROM FunctionAuthority fa WHERE fa.CompanyId = @CompanyId"; if (option.LoginUserId.HasValue) { query += @" AND fa.AuthorityLevel IN ( SELECT lu.FunctionLevel FROM LoginUser lu WHERE lu.Id = @LoginUserId )"; } if (option.FunctionTypes?.Any() ?? false) { query += @" AND fa.FunctionType IN (SELECT Id FROM @FunctionTypes)"; } return(dbHelper.GetItemsAsync <FunctionAuthority>(query, new { option.CompanyId, option.LoginUserId, FunctionTypes = option.FunctionTypes.GetTableParameter() }, token)); }
public async Task <IEnumerable <FunctionAuthority> > GetItems(FunctionAuthoritySearch option, CancellationToken token) => (await functionAuthorityProcessor.GetAsync(option, token)).ToArray();
public async Task <IEnumerable <FunctionAuthority> > GetAsync(FunctionAuthoritySearch option, CancellationToken token = default(CancellationToken)) => await functionAuthorityQueryProcessor.GetAsync(option, token);