Rebuild frontend, first working edit form (no feedback)

This commit is contained in:
James Cole
2021-03-21 18:48:47 +01:00
parent e0d0f49bfd
commit 1088a43866
16 changed files with 2243 additions and 851 deletions

View File

@@ -26,6 +26,7 @@ namespace FireflyIII\Api\V1\Controllers\Autocomplete;
use FireflyIII\Api\V1\Controllers\Controller;
use FireflyIII\Api\V1\Requests\Autocomplete\AutocompleteRequest;
use FireflyIII\Models\ObjectGroup;
use FireflyIII\Models\PiggyBank;
use FireflyIII\Repositories\Account\AccountRepositoryInterface;
use FireflyIII\Repositories\PiggyBank\PiggyBankRepositoryInterface;
@@ -37,7 +38,7 @@ use Illuminate\Http\JsonResponse;
*/
class PiggyBankController extends Controller
{
private AccountRepositoryInterface $accountRepository;
private AccountRepositoryInterface $accountRepository;
private PiggyBankRepositoryInterface $piggyRepository;
/**
@@ -75,9 +76,19 @@ class PiggyBankController extends Controller
/** @var PiggyBank $piggy */
foreach ($piggies as $piggy) {
$currency = $this->accountRepository->getAccountCurrency($piggy->account) ?? $defaultCurrency;
$groupTitle = null;
$groupId = null;
/** @var ObjectGroup $group */
$group = $piggy->objectGroups()->first();
if (null !== $group) {
$groupTitle = $group->title;
$groupId = (string)$group->id;
}
$response[] = [
'id' => (string)$piggy->id,
'name' => $piggy->name,
'object_group_id' => $groupId,
'object_group_title' => $groupTitle,
'currency_id' => $currency->id,
'currency_name' => $currency->name,
'currency_code' => $currency->code,
@@ -103,13 +114,23 @@ class PiggyBankController extends Controller
foreach ($piggies as $piggy) {
$currency = $this->accountRepository->getAccountCurrency($piggy->account) ?? $defaultCurrency;
$currentAmount = $this->piggyRepository->getRepetition($piggy)->currentamount ?? '0';
$response[] = [
$groupTitle = null;
$groupId = null;
/** @var ObjectGroup $group */
$group = $piggy->objectGroups()->first();
if (null !== $group) {
$groupTitle = $group->title;
$groupId = (string)$group->id;
}
$response[] = [
'id' => (string)$piggy->id,
'name' => $piggy->name,
'name_with_balance' => sprintf(
'%s (%s / %s)', $piggy->name, app('amount')->formatAnything($currency, $currentAmount, false),
app('amount')->formatAnything($currency, $piggy->targetamount, false),
),
'object_group_id' => $groupId,
'object_group_title' => $groupTitle,
'currency_id' => $currency->id,
'currency_name' => $currency->name,
'currency_code' => $currency->code,

View File

@@ -387,6 +387,7 @@ class PiggyBankRepository implements PiggyBankRepositoryInterface
/**
* @inheritDoc
* TODO need to sort by group order as well.
*/
public function searchPiggyBank(string $query, int $limit): Collection
{