- re enabled CSV export for super user;

This commit is contained in:
Vitalii Kiiko
2025-07-03 08:44:38 +02:00
parent 194ab25c7e
commit 70cb4c99e6
4 changed files with 84 additions and 17 deletions

View File

@@ -94,30 +94,65 @@ const AllBandiTableAsync = () => {
<Button severity="info" label={__('Mostra', 'gepafin')} icon="pi pi-eye" size="small" iconPos="right"/>
</Link>
{['PUBLISH', 'EXPIRED'].includes(rowData.status)
? <Button type="button"
size="small"
severity='info'
icon="pi pi-download"
iconPos="right"
label={__('Scarica graduatoria', 'gepafin')}
onClick={() => handleDownloadRanking(rowData.id)}
/> : null}
? <>
<Button type="button"
size="small"
severity="info"
icon="pi pi-download"
iconPos="right"
label={__('Scarica graduatoria', 'gepafin')}
onClick={() => handleDownloadRanking(rowData.id)}
/>
<Button type="button"
size="small"
icon="pi pi-receipt"
iconPos="right"
label={__('CSV', 'gepafin')}
onClick={() => exportToCSV(rowData.id)}/>
</>
: null}
</div>
}
const exportToCSV = (applicationId) => {
setLocalAsyncRequest(true);
ApplicationService.downloadCsvReport(
applicationId,
(resp) => getCsvReportback(resp, applicationId),
errCsvReportCallback
)
}
const getCsvReportback = (resp, applicationId) => {
const file = new Blob([resp], { type: 'text/csv' });
const url = window.URL.createObjectURL(file);
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', `call-${applicationId}-applications-report.csv`);
document.body.appendChild(link);
link.click();
link.remove();
setLocalAsyncRequest(false);
}
const errCsvReportCallback = (resp) => {
set404FromErrorResponse(resp);
setLocalAsyncRequest(false);
}
const handleDownloadRanking = (callId) => {
setLocalAsyncRequest(true);
ApplicationService.downloadRanking(callId,
(resp) => downloadSuccessCallback(resp, callId),
downloadErrorCallback)
}
setLocalAsyncRequest(true);
ApplicationService.downloadRanking(callId,
(resp) => downloadSuccessCallback(resp, callId),
downloadErrorCallback)
}
const downloadSuccessCallback = (resp, applicationId) => {
const file = new Blob([resp], { type: 'text/csv' });
const url = window.URL.createObjectURL(file);
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', `call-${applicationId}-applications-report.csv`);
link.setAttribute('download', `call-${applicationId}-graduatoria.csv`);
document.body.appendChild(link);
link.click();
link.remove();