diff --git a/app/Http/Controllers/Exports/ExportCustomersToExcelController.php b/app/Http/Controllers/Exports/ExportCustomersToExcelController.php index 67a23d50..f77d8acb 100644 --- a/app/Http/Controllers/Exports/ExportCustomersToExcelController.php +++ b/app/Http/Controllers/Exports/ExportCustomersToExcelController.php @@ -150,14 +150,22 @@ class ExportCustomersToExcelController } } - public function walletTransactions(Request $request){ + public function walletTransactions(Request $request) + { $exportsTransactions = new ExportsWalletTransactions($request); - $exportFileName = 'wallet-transactions.xls'; + + $type = $request->get('type'); + $exportFileName = match ($type) { + 'payment' => 'wallet-payment-transactions.xls', + 'credit_note' => 'wallet-credit-note-transactions.xls', + 'debit_note' => 'wallet-debit-note-transactions.xls', + default => 'wallet-topup-transactions.xls', + }; + $filesystemDriver = Storage::getDefaultDriver(); - if($filesystemDriver === 's3'){ - return response([ 'src' => AWSS3Helper::S3Exportable($exportFileName, $exportsTransactions) ]); - } - else{ + if ($filesystemDriver === 's3') { + return response(['src' => AWSS3Helper::S3Exportable($exportFileName, $exportsTransactions)]); + } else { $response = $exportsTransactions->download($exportFileName, Excel::XLS, ['Content-Type' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet']); ob_end_clean(); return $response; diff --git a/resources/assets/vue/components/bookings/elements/DownloadBillingWithDatesComponent.vue b/resources/assets/vue/components/bookings/elements/DownloadBillingWithDatesComponent.vue index 867ee932..1c96cb94 100644 --- a/resources/assets/vue/components/bookings/elements/DownloadBillingWithDatesComponent.vue +++ b/resources/assets/vue/components/bookings/elements/DownloadBillingWithDatesComponent.vue @@ -19,7 +19,7 @@
- +
@@ -80,27 +80,44 @@ export default { } }, methods: { - downloadReport(){ - var apiRoute = ''; - if(!this.validate()){ return; } - switch(this.parameters.reportType) { - case 'Payments Report': - apiRoute = route('paymentTransactions.export'); - break; - case 'Wallets Report': - apiRoute = route('walletTransactions.export'); - break; - case 'White Form Report': - apiRoute = route('whiteFormTransactions.export'); - break; - } - let url = apiRoute + '?startDate=' + this.parameters.startDate + '&endDate=' + this.parameters.endDate; - if(window.LARAVEL_VAPOR_ENABLED){ - this.submit(url, 'get', this.section, false, false); - } - else{ - window.open(url, '_blank'); + options() { + return [ + 'Payments Report', + 'White Form Report', + 'Wallet Top Up Report', + 'Wallet Payment Report', + 'Wallet Credit Note Report', + 'Wallet Debit Note Report', + ]; + }, + downloadReport() { + if (!this.validate()) return; + + const reportType = this.parameters.reportType; + const walletTypes = { + 'Wallet Payment Report': 'payment', + 'Wallet Credit Note Report': 'credit_note', + 'Wallet Debit Note Report': 'debit_note', + }; + + const routesMap = { + 'Payments Report': route('paymentTransactions.export'), + 'White Form Report': route('whiteFormTransactions.export'), + 'Wallet Top Up Report': route('walletTransactions.export'), + 'Wallet Payment Report': route('walletTransactions.export'), + 'Wallet Credit Note Report': route('walletTransactions.export'), + 'Wallet Debit Note Report': route('walletTransactions.export'), + }; + + let url = `${routesMap[reportType]}?startDate=${this.parameters.startDate}&endDate=${this.parameters.endDate}`; + + if (walletTypes[reportType]) { + url += `&type=${walletTypes[reportType]}`; } + + window.LARAVEL_VAPOR_ENABLED + ? this.submit(url, 'get', this.section, false, false) + : window.open(url, '_blank'); }, updateDocumentType(documentType) { this.parameters.type = documentType; diff --git a/resources/views/partials/header.blade.php b/resources/views/partials/header.blade.php index eaeeaec7..54a1783a 100644 --- a/resources/views/partials/header.blade.php +++ b/resources/views/partials/header.blade.php @@ -66,6 +66,9 @@
Bank Accounts
+
+
E-Invoice Guideline
+