in src/Relecloud.Web.CallCenter.Api/Services/Search/AzureSearchConcertSearchService.cs [123:146]
private string GetFilter(SearchRequest request)
{
var filters = new List<string>();
// only visible concerts should be returned by search results
filters.Add($"({nameof(Concert.IsVisible)}) eq true");
if (!string.IsNullOrWhiteSpace(request.PriceRange))
{
var priceRangeStart = int.Parse(request.PriceRange);
var priceRangeEnd = priceRangeStart + PriceFacetInterval;
filters.Add($"({nameof(Concert.Price)} ge {priceRangeStart} and {nameof(Concert.Price)} lt {priceRangeEnd})");
}
if (!string.IsNullOrWhiteSpace(request.Genre))
{
filters.Add($"({nameof(Concert.Genre)} eq '{request.Genre}')");
}
if (!string.IsNullOrWhiteSpace(request.Location))
{
filters.Add($"({nameof(Concert.Location)} eq '{request.Location}')");
}
return string.Join(" and ", filters);
}