From e740fc57a6d18d6d4ad755c31ad93edc5fd5a218 Mon Sep 17 00:00:00 2001 From: James Cole Date: Sun, 26 Oct 2025 17:15:54 +0100 Subject: [PATCH] Replace a few request class calls. --- .../Autocomplete/AccountController.php | 15 ++++++++++----- .../Models/Account/ListController.php | 17 ++++++++++------- 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/app/Api/V1/Controllers/Autocomplete/AccountController.php b/app/Api/V1/Controllers/Autocomplete/AccountController.php index 082186c37d..455293aaed 100644 --- a/app/Api/V1/Controllers/Autocomplete/AccountController.php +++ b/app/Api/V1/Controllers/Autocomplete/AccountController.php @@ -81,11 +81,16 @@ class AccountController extends Controller */ public function accounts(AutocompleteApiRequest $request): JsonResponse { - $types = $request->attributes->get('types'); - $query = $request->attributes->get('query'); - $date = $request->attributes->get('date'); - $limit = $request->attributes->get('limit'); - $date = $date ?? today(config('app.timezone')); + [ + 'types' => $types, + 'query' => $query, + 'date' => $date, + 'limit' => $limit, + ] + = $request->attributes->all(); + + + $date = $date ?? today(config('app.timezone')); // set date to end-of-day for account balance. so it is at $date 23:59:59 $date->endOfDay(); diff --git a/app/Api/V1/Controllers/Models/Account/ListController.php b/app/Api/V1/Controllers/Models/Account/ListController.php index ef295776f6..ef660d2b41 100644 --- a/app/Api/V1/Controllers/Models/Account/ListController.php +++ b/app/Api/V1/Controllers/Models/Account/ListController.php @@ -70,7 +70,7 @@ class ListController extends Controller ); } - public function attachments(Account $account, PaginationRequest $request): JsonResponse + public function attachments(PaginationRequest $request, Account $account): JsonResponse { $manager = $this->getManager(); [ @@ -96,18 +96,21 @@ class ListController extends Controller return response()->json($manager->createData($resource)->toArray())->header('Content-Type', self::CONTENT_TYPE); } - public function piggyBanks(Account $account): JsonResponse + public function piggyBanks(PaginationRequest $request, Account $account): JsonResponse { // create some objects: $manager = $this->getManager(); - // types to get, page size: - $pageSize = $this->parameters->get('limit'); + [ + 'limit' => $limit, + 'offset' => $offset, + 'page' => $page, + ] = $request->attributes->all(); // get list of piggy banks. Count it and split it. $collection = $this->repository->getPiggyBanks($account); $count = $collection->count(); - $piggyBanks = $collection->slice(($this->parameters->get('page') - 1) * $pageSize, $pageSize); + $piggyBanks = $collection->slice(($page - 1) * $limit, $limit); // enrich /** @var User $admin */ @@ -117,12 +120,12 @@ class ListController extends Controller $piggyBanks = $enrichment->enrich($piggyBanks); // make paginator: - $paginator = new LengthAwarePaginator($piggyBanks, $count, $pageSize, $this->parameters->get('page')); + $paginator = new LengthAwarePaginator($piggyBanks, $count, $limit, $page); $paginator->setPath(route('api.v1.accounts.piggy-banks', [$account->id]).$this->buildParams()); /** @var PiggyBankTransformer $transformer */ $transformer = app(PiggyBankTransformer::class); - $transformer->setParameters($this->parameters); + //$transformer->setParameters($this->parameters); $resource = new FractalCollection($piggyBanks, $transformer, 'piggy-banks'); $resource->setPaginator(new IlluminatePaginatorAdapter($paginator));