From b1e54d4455c18b034ad1050b40d03acc3b186887 Mon Sep 17 00:00:00 2001 From: prahalad Date: Fri, 4 Mar 2022 23:16:39 +0530 Subject: [PATCH] Bug Fix Export CSV and XLSX --- .../partner-details.component.ts | 17 ++++++++++++----- src/app/dashboard/table/table.component.ts | 17 +++++++++++++++-- 2 files changed, 27 insertions(+), 7 deletions(-) diff --git a/src/app/dashboard/partner-details/partner-details.component.ts b/src/app/dashboard/partner-details/partner-details.component.ts index 53c330f..9f72d4d 100644 --- a/src/app/dashboard/partner-details/partner-details.component.ts +++ b/src/app/dashboard/partner-details/partner-details.component.ts @@ -122,8 +122,6 @@ export class PartnerDetailsComponent implements OnInit { "Primary Areas Of Support Required Other": partnerData.strengthAndCapability.primaryAreasOfSupportRequiredOther, }] - - let surveyCtoHIIData = []; for (const hiidata of partnerData.surveyCtoData.hiiData) { let partnerHiiDetails = { @@ -206,22 +204,31 @@ export class PartnerDetailsComponent implements OnInit { this.loadExportData(this.partnerDetails) + const fileTypeCSV = 'text/csv;charset=utf-8;', + element = document.createElement('a'); + let blob; const partnerData = XLSX.utils.json_to_sheet(this.exportData); const hiiData = XLSX.utils.json_to_sheet(this.exportSurveyCtoData[0]); const spData = XLSX.utils.json_to_sheet(this.exportSurveyCtoData[1]); const spSchema = XLSX.utils.json_to_sheet(this.exportSurveyCtoData[2]); const wb = XLSX.utils.book_new(); - + + console.log(this.exportData) if (exportType === 'CSV') { if (this.isProfileData) { - this.exportJsonToCSV(this.exportData,['ProfileData']) + let csvData = Papa.unparse(this.exportData); + blob = new Blob([csvData], { type: fileTypeCSV }); + let url = URL.createObjectURL(blob); + element.href = url; + element.setAttribute('download', 'ProfileData' + '.csv'); + element.click(); } else if (this.isImplementationData) { this.exportJsonToCSV(this.exportSurveyCtoData, ['HiiData', 'SPData', 'SPSchemaData']) } else { let completeData = this.exportSurveyCtoData completeData.push(this.exportData) - this.exportJsonToCSV(completeData, ['ProfileData', 'HiiData', 'SPData', 'SPSchemaData']) + this.exportJsonToCSV(completeData, ['HiiData', 'SPData', 'SPSchemaData', 'ProfileData',]) } } else { if (this.isProfileData) { diff --git a/src/app/dashboard/table/table.component.ts b/src/app/dashboard/table/table.component.ts index 4193a1c..2cf86fd 100644 --- a/src/app/dashboard/table/table.component.ts +++ b/src/app/dashboard/table/table.component.ts @@ -140,6 +140,7 @@ export class TableComponent implements OnInit { this.partialLoad(this.userData.slice(0, 100)) }, (e) => console.log(e)); + this.selectedPartnerList = []; } partialLoad(data: Array) { @@ -308,6 +309,10 @@ export class TableComponent implements OnInit { exportProfileData(exportType: exportType) { this.loadExportData(); + const fileTypeCSV = 'text/csv;charset=utf-8;', + element = document.createElement('a'); + let blob; + const partnerData = XLSX.utils.json_to_sheet(this.exportData); const hiiData = XLSX.utils.json_to_sheet(this.exportSurveyCtoData[0]); const spData = XLSX.utils.json_to_sheet(this.exportSurveyCtoData[1]); @@ -317,13 +322,20 @@ export class TableComponent implements OnInit { if (exportType === 'CSV') { if (this.isProfileData) { - this.exportJsonToCSV(this.exportData,['ProfileData']) + let csvData = Papa.unparse(this.exportData); + blob = new Blob([csvData], { type: fileTypeCSV }); + let url = URL.createObjectURL(blob); + element.href = url; + element.setAttribute('download', 'ProfileData' + '.csv'); + element.click(); } else if (this.isImplementationData) { this.exportJsonToCSV(this.exportSurveyCtoData, ['HiiData', 'SPData', 'SPSchemaData']) } else { let completeData = this.exportSurveyCtoData completeData.push(this.exportData) - this.exportJsonToCSV(completeData, ['ProfileData', 'HiiData', 'SPData', 'SPSchemaData']) + + console.log(completeData) + this.exportJsonToCSV(completeData, ['HiiData', 'SPData', 'SPSchemaData', 'ProfileData',]) } } else { if (this.isProfileData) { @@ -350,6 +362,7 @@ export class TableComponent implements OnInit { let blob; csvData.forEach((exportData: any, index: number) => { + console.log(exportData) let csvData = Papa.unparse(exportData); blob = new Blob([csvData], { type: fileTypeCSV }); let url = URL.createObjectURL(blob);