Merge branch 'dillon/34.4-jenkins-vapor' into vapor/development

This commit is contained in:
Dillon Ngo
2024-06-17 13:07:54 +08:00
2 changed files with 21 additions and 22 deletions
@@ -22,6 +22,7 @@ use App\Classes\Modules\Exports\Services\ExportsReceiptTransactions;
use App\Classes\Modules\Exports\Services\ExportsImportedReceiptMappeds;
use App\Classes\Modules\Exports\Services\ExportsWhiteFormTransactions;
use Illuminate\Support\Facades\Storage;
use Carbon\Carbon;
class ExportCustomersToExcelController
{
@@ -61,31 +62,17 @@ class ExportCustomersToExcelController
$exportFileName = 'payment-transactions.xls';
$filesystemDriver = Storage::getDefaultDriver();
if($filesystemDriver === 's3'){
//Step 1: Upload to S3
$filePathForS3 = 'temp/' . $exportFileName;
$exportsTransactions->store($filePathForS3, 's3');
//Step 2: Read and Download from S3
$fileContent = Storage::disk('s3')->get($filePathForS3);
// $exportDirectory = storage_path('app/temp'); // Update this with the actual directory path
// if (!file_exists($exportDirectory)) {
// mkdir($exportDirectory, 0755, true);
// }
// $localPath = $exportDirectory . '/' . $exportFileName;
// file_put_contents($localPath, $fileContent);
//Step 2: Return temporary URL from S3
$temporaryUrl = Storage::disk('s3')->temporaryUrl(
$filePathForS3,
Carbon::now()->addMinutes(10)
);
// //Step 3: Return
// return response()->file($localPath, ['Content-Type' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet']);
$headers = [
'Content-Type' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
'Content-Disposition' => 'attachment; filename="' . $exportFileName . '"',
];
// Return the file content as a response with the headers
return response($fileContent, 200)
->withHeaders($headers);
return response([ 'src' => $temporaryUrl ]);
}
else{
$response = $exportsTransactions->download($exportFileName, Excel::XLS, ['Content-Type' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet']);
@@ -94,12 +94,24 @@ export default {
apiRoute = route('whiteFormTransactions.export');
break;
}
window.open(apiRoute + '?startDate=' + this.parameters.startDate + '&endDate=' + this.parameters.endDate, '_blank');
if(window.LARAVEL_VAPOR_ENABLED){
this.submit(apiRoute, 'get', this.section, false, false);
}
else{
window.open(apiRoute + '?startDate=' + this.parameters.startDate + '&endDate=' + this.parameters.endDate, '_blank');
}
},
updateDocumentType(documentType) {
this.parameters.type = documentType;
this.selectedDocumentStatus = !this.selectedDocumentStatus
}
},
successHandler(response) {
if(window.LARAVEL_VAPOR_ENABLED){
if (response.src) {
window.location.href = response.src;
}
}
},
},
mixins: [componentHandler]
};