[ACS-4985] Updated query generation logic. Now both 'In the last' and 'Between' options use the start date to end date query format

This commit is contained in:
swapnil.verma
2023-07-27 11:14:48 +05:30
committed by Jatin_Chugh
parent c4aaa8ff59
commit d4de517a03
@@ -180,9 +180,26 @@ export class SearchDateRangeAdvancedTabbedComponent implements SearchWidget, OnI
private generateQuery(value: Partial<SearchDateRangeAdvanced>, field: string): string { private generateQuery(value: Partial<SearchDateRangeAdvanced>, field: string): string {
let query = ''; let query = '';
if (value.dateRangeType === DateRangeType.IN_LAST) { if (value.dateRangeType === DateRangeType.IN_LAST) {
query = `${field}:[NOW/DAY-${value.inLastValue}${value.inLastValueType} TO NOW/DAY+1DAY]`; switch(value.inLastValueType) {
case InLastDateType.DAYS:
startDate = startOfDay(subDays(new Date(), parseInt(value.inLastValue)));
break;
case InLastDateType.WEEKS:
startDate = startOfWeek(subWeeks(new Date(), parseInt(value.inLastValue)));
break;
case InLastDateType.MONTHS:
startDate = startOfMonth(subMonths(new Date(), parseInt(value.inLastValue)));
break;
default:
break;
}
endDate = endOfToday();
} else if (value.dateRangeType === DateRangeType.BETWEEN) { } else if (value.dateRangeType === DateRangeType.BETWEEN) {
query = `${field}:['${formatISO(startOfDay(value.betweenStartDate))}' TO '${formatISO(endOfDay(value.betweenEndDate))}']`; startDate = startOfDay(value.betweenStartDate);
endDate = endOfDay(value.betweenEndDate);
}
if (startDate && endDate) {
query = `${field}:['${formatISO(startDate)}' TO '${formatISO(endDate)}']`;
} }
return query; return query;
} }