diff --git a/src/storage/elasticsearch/query.ts b/src/storage/elasticsearch/query.ts index 18b6bf94..1211e3ec 100644 --- a/src/storage/elasticsearch/query.ts +++ b/src/storage/elasticsearch/query.ts @@ -57,6 +57,8 @@ function escapeESReservedCharacters(str: string): string { /** * Builds a boolean filter. Returns an elasticsearch boolean filter + * @param booleanFilter a search boolean filter for the retrieval of the data + * @returns elasticsearch boolean arguments object */ export function buildBooleanFilter(booleanFilter: SCSearchBooleanFilter): ESBooleanFilterArguments { @@ -107,7 +109,8 @@ export function buildFilter(filter: SCSearchFilter): ESTermFilter | ESGeoDistanc }; } = {}; startRangeFilter[filter.arguments.fromField] = { - lte: 'now', + lte: typeof filter.arguments.time !== 'undefined' + ? filter.arguments.time : 'now', }; const endRangeFilter: { @@ -119,7 +122,8 @@ export function buildFilter(filter: SCSearchFilter): ESTermFilter | ESGeoDistanc }; } = {}; endRangeFilter[filter.arguments.toField] = { - gte: 'now', + gte: typeof filter.arguments.time !== 'undefined' + ? filter.arguments.time : 'now', }; return { @@ -158,7 +162,7 @@ export function buildFilter(filter: SCSearchFilter): ESTermFilter | ESGeoDistanc }; case 'distance': const geoObject: ESGeoDistanceFilterArguments = { - distance: `${filter.arguments.distanceInM}m`, + distance: `${filter.arguments.distance}m`, }; geoObject[filter.arguments.field] = { lat: filter.arguments.position[1], @@ -172,8 +176,6 @@ export function buildFilter(filter: SCSearchFilter): ESTermFilter | ESGeoDistanc return { bool: buildBooleanFilter(filter), }; - default: - throw new Error('Unknown Filter type'); } } @@ -265,6 +267,7 @@ function buildFunctionsForBoostingTypes( * Builds body for Elasticsearch requests * @param params Parameters for querying the backend * @param defaultConfig Default configuration of the backend + * @param elasticsearchConfig Elasticsearch configuration * @returns ElasticsearchQuery (body of a search-request) */ export function buildQuery( @@ -356,9 +359,9 @@ export function buildQuery( }, }; - } else { - throw new Error('Query Type is not supported. Check your config file and reconfigure your elasticsearch query'); } + } else { + throw new Error('Unsupported query type. Check your config file and reconfigure your elasticsearch query'); } const functionScoreQuery: ESFunctionScoreQuery = {