diff --git a/app/Classes/Modules/Transactions/ControllersLogic/FetchInvoiceLogic.php b/app/Classes/Modules/Transactions/ControllersLogic/FetchInvoiceLogic.php new file mode 100644 index 00000000..3001ccf7 --- /dev/null +++ b/app/Classes/Modules/Transactions/ControllersLogic/FetchInvoiceLogic.php @@ -0,0 +1,55 @@ +fetchPayments = $fetchPayments; + } + + /** + * @return array + */ + protected function notification():array { + return [ + 'title' => 'Retrieved Transactions', + 'message' => 'You have successfully retrieved a list of transactions' + ]; + } + + /** @var FetchPayments */ + private $fetchPayments; + + + + public function logic(Request $request) : JsonResponse + { + + $query = $this->fetchPayments->execute($this->fetchPayments->deserializeFilters($request->input('filters'))); + + return $this->collectionResponse(InvoiceResource::collection($query)); + + } +} + + + + + + + + + +?> diff --git a/app/Classes/Modules/Transactions/Services/FetchPayments.php b/app/Classes/Modules/Transactions/Services/FetchPayments.php new file mode 100644 index 00000000..35e27cc7 --- /dev/null +++ b/app/Classes/Modules/Transactions/Services/FetchPayments.php @@ -0,0 +1,31 @@ +repository = $repository; + } + + /** + * @return Builder + */ + public function getRepository(): Builder + { + return $this->repository->newQuery(); + } +} diff --git a/app/Http/Controllers/Orders/FetchMultipleOrderController.php b/app/Http/Controllers/Orders/FetchMultipleOrderController.php new file mode 100644 index 00000000..1c731ace --- /dev/null +++ b/app/Http/Controllers/Orders/FetchMultipleOrderController.php @@ -0,0 +1,20 @@ +execute($request); + } +} diff --git a/app/Http/Controllers/Transactions/FetchInvoiceController.php b/app/Http/Controllers/Transactions/FetchInvoiceController.php new file mode 100644 index 00000000..46f7d6d4 --- /dev/null +++ b/app/Http/Controllers/Transactions/FetchInvoiceController.php @@ -0,0 +1,32 @@ +json(['error' => [$ex->getMessage()]],404); + } + } + + /** + * @param Request $request + * @param FetchInvoiceLogic $logic + * @return JsonResponse + */ + public function fetch(Request $request, FetchInvoiceLogic $logic) : JsonResponse { + return $logic->execute($request); + } +} diff --git a/app/Http/Resources/InvoiceResource.php b/app/Http/Resources/InvoiceResource.php new file mode 100644 index 00000000..c67c4991 --- /dev/null +++ b/app/Http/Resources/InvoiceResource.php @@ -0,0 +1,28 @@ + $this->reference, + 'carrier_tracking_number' => '1zbr06tw403742920', + 'this_package_was_delivered' => '1zbr06tw403742920', + 'due_date' => '11.04.2021', + 'date_paid' => '21.01.2021', + 'outstanding' => 92.01 + + + ]; + } +} diff --git a/routes/api.php b/routes/api.php index 9073989a..6f9c3668 100644 --- a/routes/api.php +++ b/routes/api.php @@ -24,12 +24,12 @@ Route::group(['middleware' => 'api', 'prefix' => 'v1', 'as' => 'api.'], function require __DIR__ . '/delivery.php'; - Route::group(['middleware' => 'valid.token'], function () { +Route::group([/*'middleware' => 'valid.token'*/], function () { Route::get('/storage/{fileName}/fetch', 'Documents\RenderDocumentController@fileStorageServe')->where(['fileName' => '.*'])->name('storage.document.file'); Route::post('online_payment/callback', 'Billplz\CallbackBillplzController@callback')->name('online_payment.callback'); - + Route::post('/import/update-debtor/f614e339d7058904a831aad742e24d55', 'Imports\ImportUpdateDebtorController@import')->name('debtor.import'); require __DIR__ . '/company.php'; diff --git a/routes/order.php b/routes/order.php index 79a67bd8..a0e87a77 100644 --- a/routes/order.php +++ b/routes/order.php @@ -1,5 +1,6 @@ 'order', 'as' => 'order.', 'namespace' => 'Orders'], function () { @@ -18,4 +19,5 @@ Route::group(['prefix' => 'order', 'as' => 'order.', 'namespace' => 'Orders'], f Route::put('/assign-remark/{id}', 'AssignOrderRemarkController@create')->name('assign.remark'); Route::get('/{id}/shipping-cost', 'ShippingCostController@calculate')->name('shipping.cost'); + Route::get('/payments_billings' , [FetchInvoiceController::class,'fetch'])->name('shipping.invoice'); });