Replace a few request class calls.

This commit is contained in:
James Cole
2025-10-26 17:15:54 +01:00
parent ecd7750030
commit e740fc57a6
2 changed files with 20 additions and 12 deletions

View File

@@ -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();

View File

@@ -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));