diff --git a/app/BulkActions/Banking/Transactions.php b/app/BulkActions/Banking/Transactions.php new file mode 100644 index 000000000..6c26a728c --- /dev/null +++ b/app/BulkActions/Banking/Transactions.php @@ -0,0 +1,37 @@ + [ + 'name' => 'general.delete', + 'message' => 'bulk_actions.message.delete', + 'permission' => 'delete-banking-transactions', + ], + 'export' => [ + 'name' => 'general.export', + 'message' => 'bulk_actions.message.export', + 'type' => 'download', + ], + ]; + + public function destroy($request) + { + $this->deleteTransactions($request); + } + + public function export($request) + { + $selected = $this->getSelectedInput($request); + + return \Excel::download(new Export($selected), \Str::filename(trans_choice('general.transactions', 2)) . '.xlsx'); + } +} diff --git a/resources/assets/js/views/banking/transactions.js b/resources/assets/js/views/banking/transactions.js index d9bf498b8..712547d24 100644 --- a/resources/assets/js/views/banking/transactions.js +++ b/resources/assets/js/views/banking/transactions.js @@ -13,6 +13,7 @@ import DashboardPlugin from './../../plugins/dashboard-plugin'; import Global from './../../mixins/global'; import Form from './../../plugins/form'; +import BulkAction from './../../plugins/bulk-action'; // plugin setup Vue.use(DashboardPlugin); @@ -27,6 +28,7 @@ const app = new Vue({ data: function () { return { form: new Form('transaction'), + bulk_action: new BulkAction('transactions') } }, diff --git a/resources/views/banking/transactions/index.blade.php b/resources/views/banking/transactions/index.blade.php index 6b16ba24a..bc7a02295 100644 --- a/resources/views/banking/transactions/index.blade.php +++ b/resources/views/banking/transactions/index.blade.php @@ -15,14 +15,18 @@ @section('content')
@sortablelink('paid_at', trans('general.date')) | -@sortablelink('amount', trans('general.amount')) | -@sortablelink('type', trans_choice('general.types', 1)) | -@sortablelink('category.name', trans_choice('general.categories', 1)) | -@sortablelink('account.name', trans_choice('general.accounts', 1)) | -@sortablelink('description', trans('general.description')) | +{{ Form::bulkActionAllGroup() }} | +@sortablelink('paid_at', trans('general.date')) | +@sortablelink('amount', trans('general.amount')) | +@sortablelink('type', trans_choice('general.types', 1)) | +@sortablelink('category.name', trans_choice('general.categories', 1)) | +@sortablelink('account.name', trans_choice('general.accounts', 1)) | +@sortablelink('description', trans('general.description')) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
+ | ||||||||||||
{{ Form::bulkActionGroup($item->id, $item->contact->name) }} | +@date($item->paid_at) | -@money($item->amount, $item->currency_code, true) | -{{ $item->type_title }} | -{{ $item->category->name }} | -{{ $item->account->name }} | -{{ $item->description }} | +@money($item->amount, $item->currency_code, true) | +{{ $item->type_title }} | +{{ $item->category->name }} | +{{ $item->account->name }} | +{{ $item->description }} | |
{{ Form::bulkActionGroup($item->id, $item->contact->name) }} | @if ($item->reconciled) -@date($item->paid_at) | +@date($item->paid_at) | @else@date($item->paid_at) | @endif