Added date range filter.

This commit is contained in:
DESKTOP-T0O5CDB\DESK-555BD
2024-12-12 11:56:05 -07:00
parent 5cf3538be3
commit 97acd873eb
7 changed files with 92 additions and 6 deletions

File diff suppressed because one or more lines are too long

View File

@@ -6,6 +6,9 @@ function getAndValidateSelectedColumns() {
var reportExtraFields = [];
var tagFilterMode = $("#tagSelector").val();
var tagsToFilter = $("#tagSelectorInput").val();
var filterByDateRange = $("#dateRangeSelector").is(":checked");
var startDate = $("#dateRangeStartDate").val();
var endDate = $("#dateRangeEndDate").val();
$("#columnSelector :checked").map(function () {
if ($(this).hasClass('column-default')) {
reportVisibleColumns.push(this.value);
@@ -13,21 +16,45 @@ function getAndValidateSelectedColumns() {
reportExtraFields.push(this.value);
}
});
var hasValidationError = false;
var validationErrorMessage = "";
if (reportVisibleColumns.length + reportExtraFields.length == 0) {
hasValidationError = true;
validationErrorMessage = "You must select at least one column";
}
if (filterByDateRange) {
//validate date range
let startDateTicks = $("#dateRangeStartDate").datepicker('getDate')?.getTime();
let endDateTicks = $("#dateRangeEndDate").datepicker('getDate')?.getTime();
if (!startDateTicks || !endDateTicks || startDateTicks > endDateTicks) {
hasValidationError = true;
validationErrorMessage = "Invalid date range";
}
}
if (hasValidationError) {
return {
hasError: true,
errorMessage: validationErrorMessage,
visibleColumns: [],
extraFields: [],
tagFilter: tagFilterMode,
tags: []
tags: [],
filterByDateRange: filterByDateRange,
startDate: '',
endDate: ''
}
} else {
return {
hasError: false,
errorMessage: '',
visibleColumns: reportVisibleColumns,
extraFields: reportExtraFields,
tagFilter: tagFilterMode,
tags: tagsToFilter
tags: tagsToFilter,
filterByDateRange: filterByDateRange,
startDate: startDate,
endDate: endDate
}
}
}
@@ -50,6 +77,9 @@ function getSavedReportParameters() {
selectedReportColumns.tags.map(x => {
$("#tagSelectorInput").append(`<option value='${x}'>${x}</option>`)
});
$("#dateRangeSelector").prop('checked', selectedReportColumns.filterByDateRange);
$("#dateRangeStartDate").val(selectedReportColumns.startDate);
$("#dateRangeEndDate").val(selectedReportColumns.endDate);
}
}
function generateVehicleHistoryReport() {
@@ -65,13 +95,15 @@ function generateVehicleHistoryReport() {
//validate
var selectedColumnsData = getAndValidateSelectedColumns();
if (selectedColumnsData.hasError) {
Swal.showValidationMessage(`You must select at least one column`);
Swal.showValidationMessage(selectedColumnsData.errorMessage);
}
return { selectedColumnsData }
},
didOpen: () => {
getSavedReportParameters();
initTagSelector($("#tagSelectorInput"));
initDatePicker($('#dateRangeStartDate'));
initDatePicker($('#dateRangeEndDate'));
}
}).then(function (result) {
if (result.isConfirmed) {