diff --git a/app/Listeners/Incomes/Invoice/Paid.php b/app/Listeners/Incomes/Invoice/Paid.php index 30d38ae40..3aa88633d 100644 --- a/app/Listeners/Incomes/Invoice/Paid.php +++ b/app/Listeners/Incomes/Invoice/Paid.php @@ -4,8 +4,16 @@ namespace App\Listeners\Incomes\Invoice; use App\Events\InvoicePaid; -class Paid extends Listener +use App\Models\Income\Invoice; +use App\Models\Income\InvoicePayment; +use App\Models\Income\InvoiceHistory; + +use App\Traits\DateTime; +use Date; + +class Paid { + use DateTime; /** * Handle the event. @@ -33,10 +41,10 @@ class Paid extends Listener if ($request['amount'] > $invoice->amount) { $message = trans('messages.error.added', ['type' => trans_choice('general.payment', 1)]); - return response()->json([ + return [ 'success' => false, 'error' => $message, - ]); + ]; } elseif ($request['amount'] == $invoice->amount) { $invoice->invoice_status_code = 'paid'; } else { @@ -59,9 +67,9 @@ class Paid extends Listener InvoiceHistory::create($request->input()); - return response()->json([ + return [ 'success' => true, 'error' => false, - ]); + ]; } } diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index 7cfcad577..8c0a79fe1 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -24,7 +24,7 @@ class EventServiceProvider extends ServiceProvider 'Illuminate\Auth\Events\Logout' => [ 'App\Listeners\Auth\Logout', ], - 'App\Events\Events\InvoicePaid' => [ + 'App\Events\InvoicePaid' => [ 'App\Listeners\Incomes\Invoice\Paid', ], ]; diff --git a/modules/OfflinePayment/Http/Controllers/OfflinePayment.php b/modules/OfflinePayment/Http/Controllers/OfflinePayment.php index c2f4b326a..e1a590ff1 100644 --- a/modules/OfflinePayment/Http/Controllers/OfflinePayment.php +++ b/modules/OfflinePayment/Http/Controllers/OfflinePayment.php @@ -49,6 +49,6 @@ class OfflinePayment extends Controller { $result = event(new InvoicePaid($invoice, $request)); - return response()->json($result); + return response()->json($result[0]); } } diff --git a/modules/OfflinePayment/Http/routes.php b/modules/OfflinePayment/Http/routes.php index d5cfba100..98282096e 100644 --- a/modules/OfflinePayment/Http/routes.php +++ b/modules/OfflinePayment/Http/routes.php @@ -7,7 +7,7 @@ Route::group(['middleware' => ['web', 'auth', 'language', 'adminmenu', 'permissi Route::post('settings/delete', 'Settings@delete'); }); -Route::group(['prefix' => 'customers', 'namespace' => 'Modules\OfflinePayment\Http\Controllers'], function () { +Route::group(['middleware' => ['web', 'auth', 'language', 'customermenu', 'permission:read-customer-panel'], 'prefix' => 'customers', 'namespace' => 'Modules\OfflinePayment\Http\Controllers'], function () { Route::get('invoices/{invoice}/offlinepayment', 'OfflinePayment@show'); Route::post('invoices/{invoice}/offlinepayment/confirm', 'OfflinePayment@confirm'); }); diff --git a/modules/OfflinePayment/Resources/views/confirm.blade.php b/modules/OfflinePayment/Resources/views/confirm.blade.php index 695763dae..406a248ea 100644 --- a/modules/OfflinePayment/Resources/views/confirm.blade.php +++ b/modules/OfflinePayment/Resources/views/confirm.blade.php @@ -26,6 +26,10 @@ $('#button-confirm').button('reset'); }, success: function(data) { + if (data['error']) { + alert(data['error']); + } + if (data['success']) { location.reload(); }