diff --git a/src/app/dashboard/partner-details/partner-details.component.html b/src/app/dashboard/partner-details/partner-details.component.html index 2be62d0..1160fba 100644 --- a/src/app/dashboard/partner-details/partner-details.component.html +++ b/src/app/dashboard/partner-details/partner-details.component.html @@ -435,8 +435,8 @@
Export as
- - + +
diff --git a/src/app/dashboard/partner-details/partner-details.component.ts b/src/app/dashboard/partner-details/partner-details.component.ts index 70d7baa..b3ba823 100644 --- a/src/app/dashboard/partner-details/partner-details.component.ts +++ b/src/app/dashboard/partner-details/partner-details.component.ts @@ -1,6 +1,7 @@ import { Component, OnInit } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; import * as Papa from 'papaparse'; +import * as XLSX from 'xlsx' @Component({ @@ -27,8 +28,7 @@ export class PartnerDetailsComponent implements OnInit { } - loadCSVData(partnerData: any) { - JSON.stringify(partnerData).split + loadExportData(partnerData: any) { let csvArray = [{ "PortalID": partnerData.portalId ? partnerData.portalId : '-', @@ -89,17 +89,25 @@ export class PartnerDetailsComponent implements OnInit { return csvArray; } - exportCSV() { - let csvData = Papa.unparse(this.loadCSVData(this.partnerDetails)) + exportProfileData(index: number) { + let fileTypeXLS = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8'; + let fileTypeCSV = 'text/csv;charset=utf-8;'; + let fileExtension = index === 0 ? '.csv' : '.xlsx'; let element = document.createElement('a'); - let blob = new Blob([csvData], { type: 'text/csv;charset=utf-8;' }); + let blob; + + if (index === 0) { + let csvData = Papa.unparse(this.loadExportData(this.partnerDetails)); + blob = new Blob([csvData], { type: fileTypeCSV }); + } else { + let ws = XLSX.utils.json_to_sheet(this.loadExportData(this.partnerDetails)); + let wb = { Sheets: { 'data': ws }, SheetNames: ['data'] }; + let excelBuffer = XLSX.write(wb, { bookType: 'xlsx', type: 'array' }); + blob = new Blob([excelBuffer], { type: fileTypeXLS }); + } let url = URL.createObjectURL(blob); element.href = url; - element.setAttribute('download', 'PartnerProfile.csv'); + element.setAttribute('download', 'PartnerProfile' + fileExtension); element.click(); } - - exportExcel() { - - } } diff --git a/src/app/dashboard/table/table.component.ts b/src/app/dashboard/table/table.component.ts index b4bf42b..9f9dc73 100644 --- a/src/app/dashboard/table/table.component.ts +++ b/src/app/dashboard/table/table.component.ts @@ -172,6 +172,7 @@ export class TableComponent implements OnInit { element.href = url; element.setAttribute('download', 'PartnerProfile' + fileExtension); element.click(); - } + + }