Optimise code

This commit is contained in:
James Cole 2020-07-21 06:14:47 +02:00
parent debbe89187
commit 5ad7439241
No known key found for this signature in database
GPG Key ID: B5669F9493CDE38D
8 changed files with 16 additions and 41 deletions

View File

@ -44,9 +44,7 @@ class AccountController extends Controller
private AccountRepositoryInterface $repository;
/**
* TransactionController constructor.
*
* @codeCoverageIgnore
* AccountController constructor.
*/
public function __construct()
{
@ -65,6 +63,7 @@ class AccountController extends Controller
}
/**
* TODO add limit
* @param AutocompleteRequest $request
*
* @return JsonResponse

View File

@ -57,6 +57,7 @@ class BillController extends Controller
}
/**
* TODO add limit
* @param AutocompleteRequest $request
*
* @return JsonResponse

View File

@ -57,6 +57,7 @@ class BudgetController extends Controller
}
/**
* TODO add limit
* @param AutocompleteRequest $request
*
* @return JsonResponse

View File

@ -38,7 +38,7 @@ class CategoryController extends Controller
private CategoryRepositoryInterface $repository;
/**
* BudgetController constructor.
* CategoryController constructor.
*/
public function __construct()
{
@ -56,6 +56,7 @@ class CategoryController extends Controller
}
/**
* TODO add limit
* @param AutocompleteRequest $request
*
* @return JsonResponse

View File

@ -26,7 +26,6 @@ namespace FireflyIII\Api\V1\Controllers\Autocomplete;
use FireflyIII\Api\V1\Controllers\Controller;
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteRequest;
use FireflyIII\Models\TransactionCurrency;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\User;
use Illuminate\Http\JsonResponse;
@ -57,10 +56,11 @@ class CurrencyController extends Controller
}
/**
* TODO add limit
*
* @param AutocompleteRequest $request
*
* @return JsonResponse
* @codeCoverageIgnore
*/
public function currencyWithCode(AutocompleteRequest $request): JsonResponse
{

View File

@ -57,6 +57,7 @@ class ObjectGroupController extends Controller
}
/**
* TODO add limit
* @param AutocompleteRequest $request
*
* @return JsonResponse

View File

@ -55,11 +55,14 @@ class AutocompleteRequest extends FormRequest
if ('' !== $types) {
$array = explode(',', $types);
}
$limit = $this->integer('limit');
$limit = 0 === $limit ? 10 : $limit;
return [
'types' => $array,
'query' => $this->string('query'),
'date' => $this->date('date'),
'limit' => $limit,
];
}
@ -68,6 +71,8 @@ class AutocompleteRequest extends FormRequest
*/
public function rules(): array
{
return [];
return [
'limit' => 'min:0|max:25'
];
}
}

View File

@ -121,40 +121,7 @@ class AutoCompleteController extends Controller
return response()->json($array);
}
/**
* @return JsonResponse
* @codeCoverageIgnore
*/
public function piggyBanks(): JsonResponse
{
/** @var PiggyBankRepositoryInterface $repository */
$repository = app(PiggyBankRepositoryInterface::class);
/** @var AccountRepositoryInterface $accountRepos */
$accountRepos = app(AccountRepositoryInterface::class);
$piggies = $repository->getPiggyBanks();
$defaultCurrency = Amount::getDefaultCurrency();
$response = [];
/** @var PiggyBank $piggy */
foreach ($piggies as $piggy) {
$currency = $accountRepos->getAccountCurrency($piggy->account) ?? $defaultCurrency;
$currentAmount = $repository->getRepetition($piggy)->currentamount ?? '0';
$piggy->objectGroup = $piggy->objectGroups->first();
$piggy->name_with_amount = sprintf(
'%s (%s / %s)',
$piggy->name,
app('amount')->formatAnything($currency, $currentAmount, false),
app('amount')->formatAnything($currency, $piggy->targetamount, false),
);
$response[] = $piggy->toArray();
}
return response()->json($response);
}
/**
* @param Request $request
*