private static IQueryable <LocationEntity> ApplyFiltering(IQueryable <LocationEntity> queryable, LocationFilter locationFilter) { if (locationFilter.StartDate.HasValue) { queryable = queryable.Where(x => x.DateTime >= locationFilter.StartDate.Value); } if (locationFilter.EndDate.HasValue) { queryable = queryable.Where(x => x.DateTime <= locationFilter.EndDate.Value); } if (locationFilter.MinSpeed.HasValue) { queryable = queryable.Where(x => x.Speed >= locationFilter.MinSpeed.Value); } if (locationFilter.MaxSpeed.HasValue) { queryable = queryable.Where(x => x.Speed <= locationFilter.MaxSpeed.Value); } if (locationFilter.MinAltitude.HasValue) { queryable = queryable.Where(x => x.Altitude >= locationFilter.MinAltitude.Value); } if (locationFilter.MaxAltitude.HasValue) { queryable = queryable.Where(x => x.Altitude <= locationFilter.MaxAltitude.Value); } return(queryable); }
public override int GetHashCode() { int hashCode = 1266972041; if (LoyaltyAccountFilter != null) { hashCode += LoyaltyAccountFilter.GetHashCode(); } if (TypeFilter != null) { hashCode += TypeFilter.GetHashCode(); } if (DateTimeFilter != null) { hashCode += DateTimeFilter.GetHashCode(); } if (LocationFilter != null) { hashCode += LocationFilter.GetHashCode(); } if (OrderFilter != null) { hashCode += OrderFilter.GetHashCode(); } return(hashCode); }
public LocationsRecycleAdapter(List <LocationViewModel> locations, Activity activity) { this.mLocations = locations; this.mFilteredLocations = locations; this.mActivity = activity; Filter = new LocationFilter(this); }
public async Task <ApiResult> GetLocationsAsync(LocationFilter locationFilter) { var locationsPagedResult = await locationRepository.GetLocationsAsync(locationFilter); var locationsDtoPagedResult = new PagedResult <LocationDto>(); Mapper.Map(locationsPagedResult, locationsDtoPagedResult); return(new ApiResult(MessageType.Success, locationsDtoPagedResult)); }
public IQueryable <LocationEntity> GetLocations(int assetId, LocationFilter locationFilter) { IQueryable <LocationEntity> queryable = repository.GetEntities <LocationEntity>() .OrderByDescending(x => x.DateTime) .Where(x => x.AssetId == assetId); queryable = ApplyFiltering(queryable, locationFilter); return(queryable); }
/// <summary> /// Initializes a new instance of the <see cref="AmplaLocationAttribute"/> class. /// </summary> /// <param name="location">The location.</param> public AmplaLocationAttribute(string location) { LocationFilter filter; if (LocationFilter.TryParse(location, out filter)) { Location = filter.Location; WithRecurse = filter.WithRecurse; } }
private Expression <Func <Location, bool> > GetLocationExpression(LocationFilter filter) { Expression <Func <Location, bool> > expression = null; if (filter.Id > 0) { expression = x => x.Id == filter.Id; } return(expression); }
/// <summary> /// Asynchronously Retrieve Locations, with support for cancellation. /// </summary> /// <remarks> /// Retrieves a list of all locations associated with your company, /// with optional filters to narrow down the results. /// </remarks> /// <param name="filter"> /// An instance of the <see cref="LocationFilter"/> class, for narrowing down the results. /// </param> /// <param name="options"> /// An instance of the <see cref="RequestOptions"/> class, for customizing method processing. /// </param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns> /// An enumerable set of <see cref="Location"/> objects, along with an output /// instance of the <see cref="ResultsMeta"/> class containing additional data. /// </returns> public async Task <(IList <Location>, ResultsMeta)> GetLocationsAsync( LocationFilter filter, RequestOptions options, CancellationToken cancellationToken) { var context = new GetContext <Location>(EndpointName.Locations, filter, options); await ExecuteOperationAsync(context, cancellationToken).ConfigureAwait(false); return(context.Results.Items, context.ResultsMeta); }
public async Task <ApiResponse <LocationList> > GetLocationsResponseAsync(LocationFilter locationFilter = null) { if (locationFilter?.After != null && locationFilter.Before != null) { throw new InvalidOperationException("Only after or before can be specified for a request, not both."); } var apiResponse = await _restApiClient.GetApiResponseAsync <LocationList>(UrlPathBuilder.LocationUrl, locationFilter?.ToQueryParams()); return(apiResponse); }
private IQueryable <DbLocation> GetAllWithFilterQueryable(LocationFilter model) { IQueryable <DbLocation> filteredLocations = _dbSet; if (model.Name != null) { model.Name = model.Name.Trim().ToLower(); filteredLocations = filteredLocations.Where(x => x.Name.ToLower().Contains(model.Name)); } if (model.MinCapacity != null) { filteredLocations = filteredLocations.Where(x => x.Capacity > model.MinCapacity); } if (model.CityOrPostcode != null) { model.CityOrPostcode = model.CityOrPostcode.Trim().ToLower(); int postalCode = -1; bool isValidPostalCode = int.TryParse(model.CityOrPostcode, out postalCode); if (isValidPostalCode) { filteredLocations = filteredLocations.Where(x => x.AddressPostalCode == postalCode); } else { filteredLocations = filteredLocations.Where(x => x.AddressCity.ToLower().Contains(model.CityOrPostcode)); } } if (model.Province != null) { model.Province = model.Province.Trim().ToLower(); filteredLocations = filteredLocations.Where(x => x.AddressProvince.ToLower().Contains(model.Province)); } if (model.From != null) { filteredLocations = filteredLocations.Where(x => !x.Bookings.Where(y => y.StatusId != (int)EBookingStatus.Cancelled || y.StatusId != (int)EBookingStatus.Denied).Where(y => y.StartDateTime <= model.From && y.EndDateTime >= model.From).Any()); } if (model.To != null) { filteredLocations = filteredLocations.Where(x => !x.Bookings.Where(y => y.StatusId != (int)EBookingStatus.Cancelled || y.StatusId != (int)EBookingStatus.Denied).Where(y => y.StartDateTime <= model.To && y.EndDateTime >= model.To).Any()); } if (model.From != null && model.To != null) { filteredLocations = filteredLocations.Where(x => !x.Bookings.Where(y => y.StatusId != (int)EBookingStatus.Cancelled || y.StatusId != (int)EBookingStatus.Denied).Where(y => y.StartDateTime >= model.From && y.EndDateTime <= model.To).Any()); } filteredLocations = filteredLocations.OrderBy(x => x.PricePerDay); return(filteredLocations); }
// [END city_location_search] // [START multi_location_search] public static void MultiLocationSearch(string companyName, string location1, double distance1, string location2) { RequestMetadata requestMetadata = new RequestMetadata() { // Make sure to hash your userID UserId = "HashedUserId", // Make sure to hash the sessionID SessionId = "HashedSessionId", // Domain of the website where the search is conducted Domain = "www.google.com" }; LocationFilter locationFilter1 = new LocationFilter() { Address = location1, DistanceInMiles = distance1 }; LocationFilter locationFilter2 = new LocationFilter() { Address = location2 }; JobQuery jobQuery = new JobQuery() { LocationFilters = new List <LocationFilter>() { locationFilter1, locationFilter2 } }; if (companyName != null) { jobQuery.CompanyNames = new List <string> { companyName }; } SearchJobsRequest searchJobRequest = new SearchJobsRequest() { RequestMetadata = requestMetadata, JobQuery = jobQuery, SearchMode = "JOB_SEARCH" }; SearchJobsResponse searchJobsResponse = jobServiceClient.Projects.Jobs.Search(searchJobRequest, parent).Execute(); Console.WriteLine("Jobs multi location searched: " + ToJsonString(searchJobsResponse)); }
/// <summary> /// Tries to get the Location value from the specified type. /// </summary> /// <typeparam name="TModel">The type of the model.</typeparam> /// <param name="location">The location.</param> /// <returns></returns> public static bool TryGetLocation <TModel>(out LocationFilter location) { location = null; AmplaLocationAttribute attribute; if (typeof(TModel).TryGetAttribute(out attribute)) { location = new LocationFilter(attribute.Location, attribute.WithRecurse); if (string.IsNullOrEmpty(location.Location)) { location = null; } } return(location != null); }
public async Task <PagedResult <Location> > GetLocationsAsync(LocationFilter filter) { filter = filter ?? new LocationFilter(); var result = unitOfWork.Query(GetLocationExpression(filter), filter.PropertiesToInclude); List <Location> list = await result.OrderBy(filter.OrderBy) .Skip((filter.Page - 1) * filter.Skip).Take(filter.Take) .ToListAsync(); var pagedResult = new PagedResult <Location> { Data = list, PageInfo = await GetPageInfo(x => x.Id, filter, GetLocationExpression(filter)) }; return(pagedResult); }
public override bool Equals(object obj) { if (obj == null) { return(false); } if (obj == this) { return(true); } return(obj is LoyaltyEventFilter other && ((LoyaltyAccountFilter == null && other.LoyaltyAccountFilter == null) || (LoyaltyAccountFilter?.Equals(other.LoyaltyAccountFilter) == true)) && ((TypeFilter == null && other.TypeFilter == null) || (TypeFilter?.Equals(other.TypeFilter) == true)) && ((DateTimeFilter == null && other.DateTimeFilter == null) || (DateTimeFilter?.Equals(other.DateTimeFilter) == true)) && ((LocationFilter == null && other.LocationFilter == null) || (LocationFilter?.Equals(other.LocationFilter) == true)) && ((OrderFilter == null && other.OrderFilter == null) || (OrderFilter?.Equals(other.OrderFilter) == true))); }
private string GenerateUrlWithFilter(string baseUrl, LocationFilter filter, string cityOrPostCodeParamName, string fromParamName, string toParamName) { string fullUrl = baseUrl + "?"; if (filter.CityOrPostcode != null) { fullUrl += cityOrPostCodeParamName + "=" + filter.CityOrPostcode + "&"; } if (filter.From != null) { fullUrl += fromParamName + "=" + filter.From + "&"; } if (filter.To != null) { fullUrl += toParamName + "=" + filter.To + "&"; } fullUrl = fullUrl.Remove(fullUrl.Length - 1, 1); return(fullUrl); }
public IEnumerable <ApiLocation> Get(string name = null, string cityOrPostcode = null, string province = null, DateTime?from = null, DateTime?to = null, int?minCapacity = null) { var locationsRepository = _unitOfWork.LocationsRepository; LocationFilter filter = new LocationFilter(); filter.Name = name; filter.CityOrPostcode = cityOrPostcode; filter.Province = province; filter.From = from; filter.To = to; filter.MinCapacity = minCapacity; IList <DbLocation> locations = locationsRepository.GetAllWithFilter(filter); return(locations.Select(x => { ApiLocation location = x.ToApiEntity(); location.DetailsPageUrl = Uri.EscapeUriString(string.Format(DetailsPageUrlTemplate, x.Id)); location.BookingPageUrl = Uri.EscapeUriString(string.Format(BookingPageUrlTemplate, x.Id)); location.BannerImageUrl = Uri.EscapeUriString(string.Format(BannerImageBaseUrl, x.Id, x.BannerImageFileName)); return location; })); }
public async Task <List <TripWithLocations> > GetTrips(int assetId, LocationFilter locationFilter) { IQueryable <TripEntity> queryable = repository.GetEntities <TripEntity>() .OrderByDescending(x => x.Id) .Include(x => x.StartLocation) .Include(x => x.EndLocation) .Where(x => x.AssetId == assetId); queryable = ApplyFiltering(queryable, locationFilter); queryable = queryable.Take(100); List <TripEntity> trips = await queryable .ToListAsync(); if (trips.Any()) { DateTime startDate = trips.Min(x => x.StartLocation.DateTime); DateTime endDate = trips.Max(x => x.EndLocation.DateTime); List <LocationEntity> locations = await repository.GetEntities <LocationEntity>() .Include(x => x.ConnectionMessage) .Where(x => x.AssetId == assetId && x.DateTime >= startDate && x.DateTime <= endDate) .OrderBy(x => x.DateTime) .ToListAsync(); List <TripWithLocations> tripWithLocations = trips.Select(x => new TripWithLocations { Trip = x, Locations = locations.Where(y => y.DateTime >= x.StartLocation.DateTime && y.DateTime <= x.EndLocation.DateTime).ToList() }).ToList(); return(tripWithLocations); } return(Enumerable.Empty <TripWithLocations>().ToList()); }
public async Task <PlayerRankingList> GetPlayerRankingsAsync(Locations location, LocationFilter locationFilter = null) { var apiResponse = await GetPlayerRankingsResponseAsync(location, locationFilter); return(apiResponse.GetModel()); }
public async Task <LocationList> GetLocationsAsync(LocationFilter locationFilter = null) { var apiResponse = await GetLocationsResponseAsync(locationFilter); return(apiResponse.GetModel()); }
public async Task <PagedLocations> GetLocationsAsync(LocationFilter locationFilter = null) { IApiResponse <PagedLocations> apiResponse = await GetLocationsResponseAsync(locationFilter); return(apiResponse.Model); }
public async Task <PagedLocationRankingPlayers> GetPlayerRankingsAsync(LocationsEnum locationEnum, LocationFilter locationFilter = null) { IApiResponse <PagedLocationRankingPlayers> apiResponse = await GetPlayerRankingsResponseAsync(locationEnum, locationFilter); return(apiResponse.Model); }
/// <summary> /// Asynchronously Retrieve Locations. /// </summary> /// <remarks> /// Retrieves a list of all locations associated with your company, /// with optional filters to narrow down the results. /// </remarks> /// <param name="filter"> /// An instance of the <see cref="LocationFilter"/> class, for narrowing down the results. /// </param> /// <param name="options"> /// An instance of the <see cref="RequestOptions"/> class, for customizing method processing. /// </param> /// <returns> /// An enumerable set of <see cref="Location"/> objects, along with an output /// instance of the <see cref="ResultsMeta"/> class containing additional data. /// </returns> public async Task <(IList <Location>, ResultsMeta)> GetLocationsAsync( LocationFilter filter, RequestOptions options) { return(await GetLocationsAsync(filter, options, default).ConfigureAwait(false)); }
/// <summary> /// Asynchronously Retrieve Locations, with support for cancellation. /// </summary> /// <remarks> /// Retrieves a list of all locations associated with your company, /// with optional filters to narrow down the results. /// </remarks> /// <param name="filter"> /// An instance of the <see cref="LocationFilter"/> class, for narrowing down the results. /// </param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns> /// An enumerable set of <see cref="Location"/> objects, along with an output /// instance of the <see cref="ResultsMeta"/> class containing additional data. /// </returns> public async Task <(IList <Location>, ResultsMeta)> GetLocationsAsync( LocationFilter filter, CancellationToken cancellationToken) { return(await GetLocationsAsync(filter, null, cancellationToken).ConfigureAwait(false)); }
/// <summary> /// Retrieve Locations. /// </summary> /// <remarks> /// Retrieves a list of all locations associated with your company, /// with optional filters to narrow down the results. /// </remarks> /// <param name="filter"> /// An instance of the <see cref="LocationFilter"/> class, for narrowing down the results. /// </param> /// <param name="options"> /// An instance of the <see cref="RequestOptions"/> class, for customizing method processing. /// </param> /// <returns> /// An enumerable set of <see cref="Location"/> objects, along with an output /// instance of the <see cref="ResultsMeta"/> class containing additional data. /// </returns> public (IList <Location>, ResultsMeta) GetLocations( LocationFilter filter, RequestOptions options) { return(AsyncUtil.RunSync(() => GetLocationsAsync(filter, options))); }
public LocationFilterTests() { var services = ConfigureDi.BuildDi(); locationFilter = services.GetRequiredService <LocationFilter>(); }
private void typeComboBox_SelectedIndexChanged(object sender, EventArgs e) { m_Filter = ( LocationFilter )typeComboBox.SelectedItem; ShowCurrentFolder( m_CurrentFolder ); }
protected void ToString(List <string> toStringOutput) { toStringOutput.Add($"LoyaltyAccountFilter = {(LoyaltyAccountFilter == null ? "null" : LoyaltyAccountFilter.ToString())}"); toStringOutput.Add($"TypeFilter = {(TypeFilter == null ? "null" : TypeFilter.ToString())}"); toStringOutput.Add($"DateTimeFilter = {(DateTimeFilter == null ? "null" : DateTimeFilter.ToString())}"); toStringOutput.Add($"LocationFilter = {(LocationFilter == null ? "null" : LocationFilter.ToString())}"); toStringOutput.Add($"OrderFilter = {(OrderFilter == null ? "null" : OrderFilter.ToString())}"); }
public async Task <IHttpActionResult> GetLocations(LocationFilter filter) { var locations = await locationManager.GetLocationsAsync(filter); return(Ok(locations)); }
private IQueryable <TripEntity> ApplyFiltering(IQueryable <TripEntity> queryable, LocationFilter locationFilter) { if (locationFilter.StartDate.HasValue) { queryable = queryable.Where(x => x.StartLocation.DateTime >= locationFilter.StartDate.Value); } if (locationFilter.EndDate.HasValue) { queryable = queryable.Where(x => x.EndLocation.DateTime <= locationFilter.EndDate.Value); } // TODO // if (locationFilter.MinSpeed.HasValue) // { // queryable = queryable.Where(x => x.Speed >= locationFilter.MinSpeed.Value); // } // // if (locationFilter.MaxSpeed.HasValue) // { // queryable = queryable.Where(x => x.Speed <= locationFilter.MaxSpeed.Value); // } // // if (locationFilter.MinAltitude.HasValue) // { // queryable = queryable.Where(x => x.Altitude >= locationFilter.MinAltitude.Value); // } // // if (locationFilter.MaxAltitude.HasValue) // { // queryable = queryable.Where(x => x.Altitude <= locationFilter.MaxAltitude.Value); // } return(queryable); }
public IList <DbLocation> GetAllWithFilter(LocationFilter model) { return(GetAllWithFilterQueryable(model).ToList()); }
public IPagedList <DbLocation> GetAllPagedWithFilter(int page, int itemsPerPage, LocationFilter model) { return(GetAllWithFilterQueryable(model).ToPagedList(page, itemsPerPage)); }