Replace a few request instances.

This commit is contained in:
James Cole
2025-10-26 16:04:03 +01:00
parent 19c4a82194
commit ecd7750030
6 changed files with 23 additions and 24 deletions

View File

@@ -90,10 +90,9 @@ class PiggyBankController extends Controller
return response()->api($response); return response()->api($response);
} }
public function piggyBanksWithBalance(AutocompleteRequest $request): JsonResponse public function piggyBanksWithBalance(AutocompleteApiRequest $request): JsonResponse
{ {
$data = $request->getData(); $piggies = $this->piggyRepository->searchPiggyBank($request->attributes->get('query'), $request->attributes->get('limit'));
$piggies = $this->piggyRepository->searchPiggyBank($data['query'], $this->parameters->get('limit'));
$response = []; $response = [];
/** @var PiggyBank $piggy */ /** @var PiggyBank $piggy */

View File

@@ -86,13 +86,12 @@ class TransactionController extends Controller
return response()->api($array); return response()->api($array);
} }
public function transactionsWithID(AutocompleteRequest $request): JsonResponse public function transactionsWithID(AutocompleteApiRequest $request): JsonResponse
{ {
$data = $request->getData();
$result = new Collection(); $result = new Collection();
if (is_numeric($data['query'])) { if (is_numeric($request->attributes->get('query'))) {
// search for group, not journal. // search for group, not journal.
$firstResult = $this->groupRepository->find((int) $data['query']); $firstResult = $this->groupRepository->find((int) $request->attributes->get('query'));
if ($firstResult instanceof TransactionGroup) { if ($firstResult instanceof TransactionGroup) {
// group may contain multiple journals, each a result: // group may contain multiple journals, each a result:
foreach ($firstResult->transactionJournals as $journal) { foreach ($firstResult->transactionJournals as $journal) {
@@ -100,8 +99,8 @@ class TransactionController extends Controller
} }
} }
} }
if (!is_numeric($data['query'])) { if (!is_numeric($request->attributes->get('query'))) {
$result = $this->repository->searchJournalDescriptions($data['query'], $this->parameters->get('limit')); $result = $this->repository->searchJournalDescriptions($request->attributes->get('query'), $request->attributes->get('limit'));
} }
// limit and unique // limit and unique

View File

@@ -27,6 +27,7 @@ namespace FireflyIII\Api\V1\Controllers\Chart;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Api\V1\Controllers\Controller; use FireflyIII\Api\V1\Controllers\Controller;
use FireflyIII\Api\V1\Requests\Data\SameDateRequest; use FireflyIII\Api\V1\Requests\Data\SameDateRequest;
use FireflyIII\Api\V1\Requests\DateRangeRequest;
use FireflyIII\Enums\UserRoleEnum; use FireflyIII\Enums\UserRoleEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
@@ -83,15 +84,13 @@ class BudgetController extends Controller
* *
* @throws FireflyException * @throws FireflyException
*/ */
public function overview(SameDateRequest $request): JsonResponse public function overview(DateRangeRequest $request): JsonResponse
{ {
$params = $request->getAll();
/** @var Carbon $start */ /** @var Carbon $start */
$start = $params['start']; $start = $request->attributes->get('start');
/** @var Carbon $end */ /** @var Carbon $end */
$end = $params['end']; $end = $request->attributes->get('end');
// code from FrontpageChartGenerator, but not in separate class // code from FrontpageChartGenerator, but not in separate class
$budgets = $this->repository->getActiveBudgets(); $budgets = $this->repository->getActiveBudgets();

View File

@@ -26,7 +26,7 @@ namespace FireflyIII\Api\V1\Controllers\Chart;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Api\V1\Controllers\Controller; use FireflyIII\Api\V1\Controllers\Controller;
use FireflyIII\Api\V1\Requests\Data\SameDateRequest; use FireflyIII\Api\V1\Requests\DateRangeRequest;
use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Enums\AccountTypeEnum;
use FireflyIII\Enums\TransactionTypeEnum; use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Enums\UserRoleEnum; use FireflyIII\Enums\UserRoleEnum;
@@ -80,13 +80,13 @@ class CategoryController extends Controller
* *
* @SuppressWarnings("PHPMD.UnusedFormalParameter") * @SuppressWarnings("PHPMD.UnusedFormalParameter")
*/ */
public function overview(SameDateRequest $request): JsonResponse public function overview(DateRangeRequest $request): JsonResponse
{ {
/** @var Carbon $start */ /** @var Carbon $start */
$start = $this->parameters->get('start'); $start = $request->attributes->get('start');
/** @var Carbon $end */ /** @var Carbon $end */
$end = $this->parameters->get('end'); $end = $request->attributes->get('end');
$accounts = $this->accountRepos->getAccountsByType([AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value, AccountTypeEnum::ASSET->value]); $accounts = $this->accountRepos->getAccountsByType([AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value, AccountTypeEnum::ASSET->value]);
$currencies = []; $currencies = [];
$return = []; $return = [];
@@ -94,11 +94,11 @@ class CategoryController extends Controller
// get journals for entire period: // get journals for entire period:
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setRange($start, $end)->withAccountInformation(); $collector->setRange($start, $end)->withAccountInformation();
$collector->setXorAccounts($accounts)->withCategoryInformation(); $collector->setXorAccounts($accounts)->withCategoryInformation();
$collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::DEPOSIT->value]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::DEPOSIT->value]);
$journals = $collector->getExtractedJournals(); $journals = $collector->getExtractedJournals();
/** @var array $journal */ /** @var array $journal */
foreach ($journals as $journal) { foreach ($journals as $journal) {
@@ -130,8 +130,8 @@ class CategoryController extends Controller
} }
$categoryName = $journal['category_name'] ?? (string)trans('firefly.no_category'); $categoryName = $journal['category_name'] ?? (string)trans('firefly.no_category');
$key = sprintf('%s-%s', $categoryName, $currencyCode); $key = sprintf('%s-%s', $categoryName, $currencyCode);
// create arrays // create arrays
$return[$key] ??= [ $return[$key] ??= [
'label' => $categoryName, 'label' => $categoryName,
@@ -178,10 +178,10 @@ class CategoryController extends Controller
} }
} }
} }
$return = array_values($return); $return = array_values($return);
// order by amount // order by amount
usort($return, static fn (array $a, array $b) => ((float)$a['entries']['spent'] + (float)$a['entries']['earned']) < ((float)$b['entries']['spent'] + (float)$b['entries']['earned']) ? 1 : -1); usort($return, static fn(array $a, array $b) => ((float)$a['entries']['spent'] + (float)$a['entries']['earned']) < ((float)$b['entries']['spent'] + (float)$b['entries']['earned']) ? 1 : -1);
return response()->json($this->clean($return)); return response()->json($this->clean($return));
} }

View File

@@ -31,6 +31,7 @@ use Illuminate\Foundation\Http\FormRequest;
/** /**
* Class AutocompleteRequest * Class AutocompleteRequest
* @deprecated
*/ */
class AutocompleteRequest extends FormRequest class AutocompleteRequest extends FormRequest
{ {

View File

@@ -32,6 +32,7 @@ use Illuminate\Foundation\Http\FormRequest;
* Request class for end points that require date parameters. * Request class for end points that require date parameters.
* *
* Class SameDateRequest * Class SameDateRequest
* @deprecated Replaced by DateRangeRequest
*/ */
class SameDateRequest extends FormRequest class SameDateRequest extends FormRequest
{ {