public async Task <ResponseDTO <List <AmigoTenantTUserBasicDTO> > > SearchForAutocomplete([FromUri] UserSearchBasicRequest search) { var resp = await _usersApplicationService.SearchUsersByCriteriaBasicAsync(search); return(resp); }
public async Task <ResponseDTO <List <AmigoTenantTUserBasicDTO> > > SearchUsersByCriteriaBasicAsync(UserSearchBasicRequest search) { Expression <Func <AmigoTenantTUserBasicDTO, bool> > queryFilter = p => true; queryFilter = queryFilter.And(p => p.RowStatus == true); //if (search!= null && !string.IsNullOrEmpty(search.CustomUsername)) // queryFilter = queryFilter.And(p => p.CustomUsername.Contains(search.CustomUsername)); var result = (await _userBasicDataAccess.ListAsync(queryFilter)).ToList(); await SetUsersAdditionalInformationBasic(result); Expression <Func <AmigoTenantTUserBasicDTO, bool> > queryOtherFilter = p => true; if (search != null && !string.IsNullOrEmpty(search.CustomUsername)) { queryOtherFilter = queryOtherFilter.And(p => p.CustomUsername.ToLower().Contains(search.CustomUsername.ToLower())); } var applyOtherFilters = result.AsQueryable().Where(queryOtherFilter).ToList(); return(ResponseBuilder.Correct(applyOtherFilters)); }