mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2026-05-03 20:56:21 +00:00
Fix some tests for account API
This commit is contained in:
@@ -586,16 +586,25 @@ class AccountRepository implements AccountRepositoryInterface
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function resetAccountOrder(array $types): void
|
||||
public function resetAccountOrder(): void
|
||||
{
|
||||
$list = $this->getAccountsByType($types);
|
||||
/**
|
||||
* @var int $index
|
||||
* @var Account $account
|
||||
*/
|
||||
foreach ($list as $index => $account) {
|
||||
$account->order = $index + 1;
|
||||
$account->save();
|
||||
$sets = [
|
||||
[AccountType::DEFAULT, AccountType::ASSET],
|
||||
[AccountType::EXPENSE, AccountType::BENEFICIARY],
|
||||
[AccountType::REVENUE],
|
||||
[AccountType::LOAN, AccountType::DEBT, AccountType::CREDITCARD, AccountType::MORTGAGE],
|
||||
[AccountType::CASH, AccountType::INITIAL_BALANCE, AccountType::IMPORT, AccountType::RECONCILIATION],
|
||||
];
|
||||
foreach ($sets as $set) {
|
||||
$list = $this->getAccountsByType($set);
|
||||
$index = 1;
|
||||
foreach ($list as $account) {
|
||||
if ($index !== $account->order) {
|
||||
$account->order = $index;
|
||||
$account->save();
|
||||
}
|
||||
$index++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -753,4 +762,12 @@ class AccountRepository implements AccountRepositoryInterface
|
||||
|
||||
return $service->update($account, $data);
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function maxOrder(array $types): int
|
||||
{
|
||||
return (int)$this->getAccountsByType($types)->max('order');
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,6 +47,13 @@ interface AccountRepositoryInterface
|
||||
*/
|
||||
public function count(array $types): int;
|
||||
|
||||
/**
|
||||
* @param array $types
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function maxOrder(array $types): int;
|
||||
|
||||
/**
|
||||
* Moved here from account CRUD.
|
||||
*
|
||||
@@ -256,10 +263,8 @@ interface AccountRepositoryInterface
|
||||
|
||||
/**
|
||||
* Reset order types of the mentioned accounts.
|
||||
*
|
||||
* @param array $types
|
||||
*/
|
||||
public function resetAccountOrder(array $types): void;
|
||||
public function resetAccountOrder(): void;
|
||||
|
||||
/**
|
||||
* @param string $query
|
||||
|
||||
@@ -461,7 +461,8 @@ trait ModifiesPiggyBanks
|
||||
$user = $this->user;
|
||||
$user->piggyBanks()->where('piggy_banks.order', '<=', $newOrder)->where('piggy_banks.order', '>', $oldOrder)
|
||||
->where('piggy_banks.id', '!=', $piggyBank->id)
|
||||
->update(['piggy_banks.order' => DB::raw('piggy_banks.order-1')]);
|
||||
->decrement('piggybanks.order',1);
|
||||
|
||||
$piggyBank->order = $newOrder;
|
||||
$piggyBank->save();
|
||||
}
|
||||
@@ -474,7 +475,8 @@ trait ModifiesPiggyBanks
|
||||
$user = $this->user;
|
||||
$user->piggyBanks()->where('piggy_banks.order', '>=', $newOrder)->where('piggy_banks.order', '<', $oldOrder)
|
||||
->where('piggy_banks.id', '!=', $piggyBank->id)
|
||||
->update(['piggy_banks.order' => DB::raw('piggy_banks.order+1')]);
|
||||
->increment('piggybanks.order',1);
|
||||
|
||||
$piggyBank->order = $newOrder;
|
||||
$piggyBank->save();
|
||||
}
|
||||
|
||||
@@ -22,7 +22,6 @@ declare(strict_types=1);
|
||||
|
||||
namespace FireflyIII\Repositories\RuleGroup;
|
||||
|
||||
use DB;
|
||||
use Exception;
|
||||
use FireflyIII\Models\Rule;
|
||||
use FireflyIII\Models\RuleGroup;
|
||||
@@ -458,14 +457,14 @@ class RuleGroupRepository implements RuleGroupRepositoryInterface
|
||||
if ($newOrder > $oldOrder) {
|
||||
$this->user->ruleGroups()->where('order', '<=', $newOrder)->where('order', '>', $oldOrder)
|
||||
->where('rule_groups.id', '!=', $ruleGroup->id)
|
||||
->update(['order' => DB::raw('rule_groups.order-1')]);
|
||||
->decrement('rule_groups.order', 1);
|
||||
$ruleGroup->order = $newOrder;
|
||||
$ruleGroup->save();
|
||||
}
|
||||
if ($newOrder < $oldOrder) {
|
||||
$this->user->ruleGroups()->where('order', '>=', $newOrder)->where('order', '<', $oldOrder)
|
||||
->where('rule_groups.id', '!=', $ruleGroup->id)
|
||||
->update(['order' => DB::raw('rule_groups.order+1')]);
|
||||
->increment('rule_groups.order', 1);
|
||||
$ruleGroup->order = $newOrder;
|
||||
$ruleGroup->save();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user