diff --git a/src/app/solicitation/solicitation-report/solicitation-report.component.html b/src/app/solicitation/solicitation-report/solicitation-report.component.html index 7af18e3..0e910e9 100644 --- a/src/app/solicitation/solicitation-report/solicitation-report.component.html +++ b/src/app/solicitation/solicitation-report/solicitation-report.component.html @@ -51,8 +51,8 @@

+ src="../../../assets/downloadcsv.jpeg" style="float:left" (keydown.enter)="exportCSV({}, gb.filters)" + (click)="exportCSV({}, gb.filters)">
diff --git a/src/app/solicitation/solicitation-report/solicitation-report.component.ts b/src/app/solicitation/solicitation-report/solicitation-report.component.ts index ca07622..e794d2d 100644 --- a/src/app/solicitation/solicitation-report/solicitation-report.component.ts +++ b/src/app/solicitation/solicitation-report/solicitation-report.component.ts @@ -346,8 +346,9 @@ export class SolicitationReportComponent extends BaseComponent implements OnInit * Copied from the PrimeNG prototype and then modified * * @param options + * @param filters - Filter values associated with the soliciation p-table */ - exportCSV (options) { + exportCSV (options, filters) { const csvSeparator = ','; let csv = ''; @@ -367,7 +368,14 @@ export class SolicitationReportComponent extends BaseComponent implements OnInit } } - const filter = {first: 0, rows: 1000}; + let filter = {first: 0, rows: 1000, filters: {}}; + + // The filters parameter is passed from the p-table element with the template reference variable #gb. + // It contains the current filtering criteria applied to the table, allowing the export to include only the filtered data. + if (filters) { + filter.filters = filters; + } + const appendSolicitations = (solicitations) => { document.body.style.cursor = 'wait'; for (const s of solicitations.predictions) { @@ -388,7 +396,7 @@ export class SolicitationReportComponent extends BaseComponent implements OnInit .subscribe(appendSolicitations); } }; - + this.solicitationService .getFilteredSolicitations(filter) .subscribe( appendSolicitations );