From df9c9ce0447b2dd736bb9d9d549d5b3026699a77 Mon Sep 17 00:00:00 2001 From: James Cole Date: Wed, 3 Mar 2021 07:02:57 +0100 Subject: [PATCH] Clean up some API endpoints. --- .../Controllers/Chart/AccountController.php | 4 +- .../Chart/AvailableBudgetController.php | 4 +- .../V1/Controllers/Chart/BudgetController.php | 16 +- .../Controllers/Chart/CategoryController.php | 8 +- .../BasicController.php} | 13 +- routes/api.php | 143 ++++++++---------- 6 files changed, 86 insertions(+), 102 deletions(-) rename app/Api/V1/Controllers/{SummaryController.php => Summary/BasicController.php} (98%) diff --git a/app/Api/V1/Controllers/Chart/AccountController.php b/app/Api/V1/Controllers/Chart/AccountController.php index f604fc7ee4..283c7d3785 100644 --- a/app/Api/V1/Controllers/Chart/AccountController.php +++ b/app/Api/V1/Controllers/Chart/AccountController.php @@ -73,7 +73,7 @@ class AccountController extends Controller /** * @param DateRequest $request - * + * @deprecated * @return JsonResponse */ public function expenseOverview(DateRequest $request): JsonResponse @@ -223,7 +223,7 @@ class AccountController extends Controller /** * @param DateRequest $request - * + * @deprecated * @return JsonResponse */ public function revenueOverview(DateRequest $request): JsonResponse diff --git a/app/Api/V1/Controllers/Chart/AvailableBudgetController.php b/app/Api/V1/Controllers/Chart/AvailableBudgetController.php index 0d9ba69a34..039ebffe49 100644 --- a/app/Api/V1/Controllers/Chart/AvailableBudgetController.php +++ b/app/Api/V1/Controllers/Chart/AvailableBudgetController.php @@ -42,7 +42,7 @@ class AvailableBudgetController extends Controller /** * AvailableBudgetController constructor. - * + * @deprecated * @codeCoverageIgnore */ public function __construct() @@ -64,7 +64,7 @@ class AvailableBudgetController extends Controller /** * @param AvailableBudget $availableBudget - * + * @deprecated * @return JsonResponse */ public function overview(AvailableBudget $availableBudget): JsonResponse diff --git a/app/Api/V1/Controllers/Chart/BudgetController.php b/app/Api/V1/Controllers/Chart/BudgetController.php index 4e153e0161..3a1ad355aa 100644 --- a/app/Api/V1/Controllers/Chart/BudgetController.php +++ b/app/Api/V1/Controllers/Chart/BudgetController.php @@ -49,7 +49,7 @@ class BudgetController extends Controller /** * BudgetController constructor. - * + * @deprecated * @codeCoverageIgnore */ public function __construct() @@ -80,7 +80,7 @@ class BudgetController extends Controller * ], * * @param DateRequest $request - * + * @deprecated * @return JsonResponse */ public function overview(DateRequest $request): JsonResponse @@ -113,7 +113,7 @@ class BudgetController extends Controller * @param Collection $limits * @param Carbon $start * @param Carbon $end - * + * @deprecated * @return array */ protected function getExpenses(Budget $budget, Carbon $start, Carbon $end): array @@ -135,7 +135,7 @@ class BudgetController extends Controller * @param Budget $budget * @param Carbon $start * @param Carbon $end - * + * @deprecated * @return array */ private function getExpenseInRange(Budget $budget, Carbon $start, Carbon $end): array @@ -171,7 +171,7 @@ class BudgetController extends Controller /** * @param BudgetLimit $limit - * + * @deprecated * @return array */ private function getExpensesForLimit(BudgetLimit $limit): array @@ -209,7 +209,7 @@ class BudgetController extends Controller /** * @param array $expenses - * + * @deprecated * @return array */ private function filterNulls(array $expenses): array @@ -228,7 +228,7 @@ class BudgetController extends Controller /** * @param array $budgetNames * @param array $currencyNames - * + * @deprecated * @return array */ private function createSets(array $budgetNames, array $currencyNames): array @@ -279,7 +279,7 @@ class BudgetController extends Controller /** * @param array $basic * @param array $sets - * + * @deprecated * @return array */ private function fillSets(array $basic, array $sets): array diff --git a/app/Api/V1/Controllers/Chart/CategoryController.php b/app/Api/V1/Controllers/Chart/CategoryController.php index ec4fa83ad4..04d525cd87 100644 --- a/app/Api/V1/Controllers/Chart/CategoryController.php +++ b/app/Api/V1/Controllers/Chart/CategoryController.php @@ -45,7 +45,7 @@ class CategoryController extends Controller /** * AccountController constructor. - * + * @deprecated * @codeCoverageIgnore */ public function __construct() @@ -71,7 +71,7 @@ class CategoryController extends Controller /** * @param DateRequest $request - * + * @deprecated * @return JsonResponse */ public function overview(DateRequest $request): JsonResponse @@ -100,7 +100,7 @@ class CategoryController extends Controller /** * @param array $tempData * @param array $set - * + * @deprecated * @return array */ private function processArray(array $tempData, array $set): array @@ -135,7 +135,7 @@ class CategoryController extends Controller /** * @param array $tempData - * + * @deprecated * @return array */ private function sortArray(array $tempData): array diff --git a/app/Api/V1/Controllers/SummaryController.php b/app/Api/V1/Controllers/Summary/BasicController.php similarity index 98% rename from app/Api/V1/Controllers/SummaryController.php rename to app/Api/V1/Controllers/Summary/BasicController.php index 6f25ea6554..adcfa04b32 100644 --- a/app/Api/V1/Controllers/SummaryController.php +++ b/app/Api/V1/Controllers/Summary/BasicController.php @@ -1,8 +1,8 @@ 'FireflyIII\Api\V1\Controllers\Autocomplete', 'prefix' => 'autocomplete', + 'as' => 'api.v1.autocomplete.',], + static function () { + // Auto complete routes + Route::get('accounts', ['uses' => 'AccountController@accounts', 'as' => 'accounts']); + Route::get('bills', ['uses' => 'BillController@bills', 'as' => 'bills']); + Route::get('budgets', ['uses' => 'BudgetController@budgets', 'as' => 'budgets']); + Route::get('categories', ['uses' => 'CategoryController@categories', 'as' => 'categories']); + Route::get('currencies', ['uses' => 'CurrencyController@currencies', 'as' => 'currencies']); + Route::get('currencies-with-code', ['uses' => 'CurrencyController@currenciesWithCode', 'as' => 'currencies-with-code']); + Route::get('object-groups', ['uses' => 'ObjectGroupController@objectGroups', 'as' => 'object-groups']); + Route::get('piggy-banks', ['uses' => 'PiggyBankController@piggyBanks', 'as' => 'piggy-banks']); + Route::get('piggy-banks-with-balance', ['uses' => 'PiggyBankController@piggyBanksWithBalance', 'as' => 'piggy-banks-with-balance']); + // TODO create me: + Route::get('rules', ['uses' => 'RuleController@rules', 'as' => 'rules']); + // TODO create me: + Route::get('rule-groups', ['uses' => 'RuleGroupController@rules', 'as' => 'rule-groups']); + Route::get('tags', ['uses' => 'TagController@tags', 'as' => 'tags']); + Route::get('transactions', ['uses' => 'TransactionController@transactions', 'as' => 'transactions']); + Route::get('transactions-with-id', ['uses' => 'TransactionController@transactionsWithID', 'as' => 'transactions-with-id']); + Route::get('transaction-types', ['uses' => 'TransactionTypeController@transactionTypes', 'as' => 'transaction-types']); + } +); + +/** + * CHART ROUTES. + */ +// Accounts +Route::group( + ['namespace' => 'FireflyIII\Api\V1\Controllers\Chart', 'prefix' => 'chart/account', + 'as' => 'api.v1.chart.account.',], + static function () { + Route::get('overview', ['uses' => 'AccountController@overview', 'as' => 'overview']); + } +); + +/** + * SUMMARY CONTROLLER + */ +// BASIC +Route::group( + ['namespace' => 'FireflyIII\Api\V1\Controllers\Summary', 'prefix' => 'summary', + 'as' => 'api.v1.summary.',], + static function () { + Route::get('basic', ['uses' => 'BasicController@basic', 'as' => 'basic']); + } +); + + + + + + + + + + + /** * System and configuration controllers */ @@ -93,27 +155,7 @@ Route::group( } ); -// TODO VERIFY API DOCS -Route::group( - ['namespace' => 'FireflyIII\Api\V1\Controllers\Autocomplete', 'prefix' => 'autocomplete', - 'as' => 'api.v1.autocomplete.',], - static function () { - // Auto complete routes - Route::get('accounts', ['uses' => 'AccountController@accounts', 'as' => 'accounts']); - Route::get('bills', ['uses' => 'BillController@bills', 'as' => 'bills']); - Route::get('budgets', ['uses' => 'BudgetController@budgets', 'as' => 'budgets']); - Route::get('categories', ['uses' => 'CategoryController@categories', 'as' => 'categories']); - Route::get('currencies', ['uses' => 'CurrencyController@currencies', 'as' => 'currencies']); - Route::get('currencies-with-code', ['uses' => 'CurrencyController@currenciesWithCode', 'as' => 'currencies-with-code']); - Route::get('object-groups', ['uses' => 'ObjectGroupController@objectGroups', 'as' => 'object-groups']); - Route::get('piggy-banks', ['uses' => 'PiggyBankController@piggyBanks', 'as' => 'piggy-banks']); - Route::get('piggy-banks-with-balance', ['uses' => 'PiggyBankController@piggyBanksWithBalance', 'as' => 'piggy-banks-with-balance']); - Route::get('tags', ['uses' => 'TagController@tags', 'as' => 'tags']); - Route::get('transactions', ['uses' => 'TransactionController@transactions', 'as' => 'transactions']); - Route::get('transactions-with-id', ['uses' => 'TransactionController@transactionsWithID', 'as' => 'transactions-with-id']); - Route::get('transaction-types', ['uses' => 'TransactionTypeController@transactionTypes', 'as' => 'transaction-types']); - } -); + // TODO VERIFY API DOCS Route::group( @@ -237,57 +279,7 @@ Route::group( } ); -/** - * CHART ROUTES. - */ -// Accounts -// TODO VERIFY API DOCS -Route::group( - ['namespace' => 'FireflyIII\Api\V1\Controllers\Chart', 'prefix' => 'chart/account', - 'as' => 'api.v1.chart.account.',], - static function () { - Route::get('overview', ['uses' => 'AccountController@overview', 'as' => 'overview']); - Route::get('expense', ['uses' => 'AccountController@expenseOverview', 'as' => 'expense']); - Route::get('revenue', ['uses' => 'AccountController@revenueOverview', 'as' => 'revenue']); - } -); - -// Available budgets -// TODO VERIFY API DOCS -Route::group( - ['namespace' => 'FireflyIII\Api\V1\Controllers\Chart', 'prefix' => 'chart/ab', - 'as' => 'api.v1.chart.ab.',], - static function () { - - // Overview API routes: - Route::get('overview/{availableBudget}', ['uses' => 'AvailableBudgetController@overview', 'as' => 'overview']); - } -); - -// Budgets -// TODO VERIFY API DOCS -Route::group( - ['namespace' => 'FireflyIII\Api\V1\Controllers\Chart', 'prefix' => 'chart/budget', - 'as' => 'api.v1.chart.budget.',], - static function () { - - // (frontpage) budget overview - Route::get('overview', ['uses' => 'BudgetController@overview', 'as' => 'overview']); - } -); - -// Categories -// TODO VERIFY API DOCS -Route::group( - ['namespace' => 'FireflyIII\Api\V1\Controllers\Chart', 'prefix' => 'chart/category', - 'as' => 'api.v1.chart.category.',], - static function () { - - // Overview API routes: - Route::get('overview', ['uses' => 'CategoryController@overview', 'as' => 'overview']); - } -); // TODO VERIFY API DOCS Route::group( @@ -450,16 +442,7 @@ Route::group( } ); -// TODO VERIFY API DOCS -Route::group( - ['namespace' => 'FireflyIII\Api\V1\Controllers', 'prefix' => 'summary', - 'as' => 'api.v1.summary.',], - static function () { - // Overview API routes: - Route::get('basic', ['uses' => 'SummaryController@basic', 'as' => 'basic']); - } -); // destroy data route. // TODO VERIFY API DOCS