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));
        }