Replace enum

This commit is contained in:
James Cole 2025-01-03 09:11:20 +01:00
parent 36351a5dd9
commit 1787f4421b
No known key found for this signature in database
GPG Key ID: B49A324B7EAD6D80
18 changed files with 51 additions and 43 deletions

View File

@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Console\Commands\Correction;
use FireflyIII\Console\Commands\ShowsFriendlyMessages;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\Account;
use FireflyIII\Models\AccountType;
use FireflyIII\Models\Transaction;
@ -68,7 +69,7 @@ class CorrectsOpeningBalanceCurrencies extends Command
// @var Collection
return TransactionJournal::leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id')
->whereNull('transaction_journals.deleted_at')
->where('transaction_types.type', TransactionType::OPENING_BALANCE)->get(['transaction_journals.*'])
->where('transaction_types.type', TransactionTypeEnum::OPENING_BALANCE->value)->get(['transaction_journals.*'])
;
}

View File

@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Console\Commands\Upgrade;
use FireflyIII\Console\Commands\ShowsFriendlyMessages;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\Account;
use FireflyIII\Models\Transaction;
use FireflyIII\Models\TransactionJournal;
@ -118,8 +119,8 @@ class UpgradesLiabilitiesEight extends Command
private function hasBadOpening(Account $account): bool
{
$openingBalanceType = TransactionType::whereType(TransactionType::OPENING_BALANCE)->first();
$liabilityType = TransactionType::whereType(TransactionType::LIABILITY_CREDIT)->first();
$openingBalanceType = TransactionType::whereType(TransactionTypeEnum::OPENING_BALANCE->value)->first();
$liabilityType = TransactionType::whereType(TransactionTypeEnum::LIABILITY_CREDIT->value)->first();
$openingJournal = TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id)
->where('transaction_journals.transaction_type_id', $openingBalanceType->id)
@ -145,7 +146,7 @@ class UpgradesLiabilitiesEight extends Command
private function deleteCreditTransaction(Account $account): void
{
$liabilityType = TransactionType::whereType(TransactionType::LIABILITY_CREDIT)->first();
$liabilityType = TransactionType::whereType(TransactionTypeEnum::LIABILITY_CREDIT->value)->first();
$liabilityJournal = TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id)
->where('transaction_journals.transaction_type_id', $liabilityType->id)
@ -162,7 +163,7 @@ class UpgradesLiabilitiesEight extends Command
private function reverseOpeningBalance(Account $account): void
{
$openingBalanceType = TransactionType::whereType(TransactionType::OPENING_BALANCE)->first();
$openingBalanceType = TransactionType::whereType(TransactionTypeEnum::OPENING_BALANCE->value)->first();
/** @var TransactionJournal $openingJournal */
$openingJournal = TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')

View File

@ -104,7 +104,7 @@ class UpgradesVariousCurrencyInformation extends Command
private function updateOtherJournalsCurrencies(): void
{
$set = $this->cliRepos->getAllJournals(
[TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::DEPOSIT->value, TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION]
[TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::DEPOSIT->value, TransactionTypeEnum::OPENING_BALANCE->value, TransactionTypeEnum::RECONCILIATION->value]
);
/** @var TransactionJournal $journal */
@ -191,7 +191,7 @@ class UpgradesVariousCurrencyInformation extends Command
break;
case TransactionType::OPENING_BALANCE:
case TransactionTypeEnum::OPENING_BALANCE->value:
// whichever isn't an initial balance account:
$lead = $journal->transactions()->leftJoin('accounts', 'transactions.account_id', '=', 'accounts.id')->leftJoin(
'account_types',
@ -202,7 +202,7 @@ class UpgradesVariousCurrencyInformation extends Command
break;
case TransactionType::RECONCILIATION:
case TransactionTypeEnum::RECONCILIATION->value:
// whichever isn't the reconciliation account:
$lead = $journal->transactions()->leftJoin('accounts', 'transactions.account_id', '=', 'accounts.id')->leftJoin(
'account_types',

View File

@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Exceptions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\Account;
use FireflyIII\Models\Attachment;
use FireflyIII\Models\Bill;
@ -208,7 +209,7 @@ class GracefulNotFoundHandler extends ExceptionHandler
$type = $journal->transactionType->type;
$request->session()->reflash();
if (TransactionType::RECONCILIATION === $type) {
if (TransactionTypeEnum::RECONCILIATION->value === $type) {
return redirect(route('accounts.index', ['asset']));
}

View File

@ -27,6 +27,7 @@ namespace FireflyIII\Helpers\Collector;
use Carbon\Carbon;
use Carbon\Exceptions\InvalidFormatException;
use Exception;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\Extensions\AccountCollection;
use FireflyIII\Helpers\Collector\Extensions\AmountCollection;
@ -414,7 +415,7 @@ class GroupCollector implements GroupCollectorInterface
$this->query->whereNull('transaction_groups.deleted_at');
$this->query->whereNotIn(
'transaction_types.type',
[TransactionType::LIABILITY_CREDIT, TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION]
[TransactionTypeEnum::LIABILITY_CREDIT->value, TransactionTypeEnum::OPENING_BALANCE->value, TransactionTypeEnum::RECONCILIATION->value]
);
return $this;

View File

@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Account;
use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\DuplicateTransactionException;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Factory\TransactionGroupFactory;
@ -223,7 +224,7 @@ class ReconcileController extends Controller
'transactions' => [
[
'user' => auth()->user()->id,
'type' => strtolower(TransactionType::RECONCILIATION),
'type' => strtolower(TransactionTypeEnum::RECONCILIATION->value),
'date' => $end,
'order' => 0,
'currency_id' => $currency->id,

View File

@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers;
use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Middleware\IsDemoUser;
use FireflyIII\Models\AccountType;
@ -364,7 +365,7 @@ class DebugController extends Controller
}
// has stored reconciliations
$type = TransactionType::whereType(TransactionType::RECONCILIATION)->first();
$type = TransactionType::whereType(TransactionTypeEnum::RECONCILIATION->value)->first();
if ($user->transactionJournals()->where('transaction_type_id', $type->id)->count() > 0) {
$flags[] = '<span title="Has reconciled">:ledger:</span>';
}

View File

@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\Account;
use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Factory\AccountFactory;
use FireflyIII\Models\Account;
@ -247,7 +248,7 @@ class AccountRepository implements AccountRepositoryInterface
{
$journal = TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id)
->transactionTypes([TransactionType::LIABILITY_CREDIT])
->transactionTypes([TransactionTypeEnum::LIABILITY_CREDIT->value])
->first(['transaction_journals.*'])
;
@ -295,7 +296,7 @@ class AccountRepository implements AccountRepositoryInterface
{
$journal = TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id)
->transactionTypes([TransactionType::OPENING_BALANCE, TransactionType::LIABILITY_CREDIT])
->transactionTypes([TransactionTypeEnum::OPENING_BALANCE->value, TransactionTypeEnum::LIABILITY_CREDIT->value])
->first(['transaction_journals.*'])
;
if (null === $journal) {
@ -316,7 +317,7 @@ class AccountRepository implements AccountRepositoryInterface
{
return TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id)
->transactionTypes([TransactionType::OPENING_BALANCE, TransactionType::LIABILITY_CREDIT])
->transactionTypes([TransactionTypeEnum::OPENING_BALANCE->value, TransactionTypeEnum::LIABILITY_CREDIT->value])
->first(['transaction_journals.*'])?->date->format('Y-m-d H:i:s')
;
}
@ -332,7 +333,7 @@ class AccountRepository implements AccountRepositoryInterface
{
return TransactionJournal::leftJoin('transactions', 'transactions.transaction_journal_id', '=', 'transaction_journals.id')
->where('transactions.account_id', $account->id)
->transactionTypes([TransactionType::OPENING_BALANCE])
->transactionTypes([TransactionTypeEnum::OPENING_BALANCE->value])
->first(['transaction_journals.*'])
;
}

View File

@ -91,7 +91,7 @@ class AccountTasker implements AccountTaskerInterface
$entry['end_balance'] = $endSet[$account->id]['balance'] ?? '0';
// first journal exists, and is on start, then this is the actual opening balance:
if (null !== $first && $first->date->isSameDay($start) && TransactionType::OPENING_BALANCE === $first->transactionType->type) {
if (null !== $first && $first->date->isSameDay($start) && TransactionTypeEnum::OPENING_BALANCE->value === $first->transactionType->type) {
app('log')->debug(sprintf('Date of first journal for %s is %s', $account->name, $first->date->format('Y-m-d')));
$entry['start_balance'] = $first->transactions()->where('account_id', $account->id)->first()->amount;
app('log')->debug(sprintf('Account %s was opened on %s, so opening balance is %f', $account->name, $start->format('Y-m-d'), $entry['start_balance']));

View File

@ -269,8 +269,8 @@ class TagRepository implements TagRepositoryInterface
TransactionTypeEnum::WITHDRAWAL->value => '0',
TransactionTypeEnum::DEPOSIT->value => '0',
TransactionTypeEnum::TRANSFER->value => '0',
TransactionType::RECONCILIATION => '0',
TransactionType::OPENING_BALANCE => '0',
TransactionTypeEnum::RECONCILIATION->value => '0',
TransactionTypeEnum::OPENING_BALANCE->value => '0',
];
// add amount to correct type:
@ -291,8 +291,8 @@ class TagRepository implements TagRepositoryInterface
TransactionTypeEnum::WITHDRAWAL->value => '0',
TransactionTypeEnum::DEPOSIT->value => '0',
TransactionTypeEnum::TRANSFER->value => '0',
TransactionType::RECONCILIATION => '0',
TransactionType::OPENING_BALANCE => '0',
TransactionTypeEnum::RECONCILIATION->value => '0',
TransactionTypeEnum::OPENING_BALANCE->value => '0',
];
// add foreign amount to correct type:
$amount = app('steam')->positive((string) $journal['foreign_amount']);

View File

@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Services\Internal\Destroy;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\Account;
use FireflyIII\Models\PiggyBank;
use FireflyIII\Models\RecurrenceTransaction;
@ -68,7 +69,7 @@ class AccountDestroyService
$set = $account->transactions()
->leftJoin('transaction_journals', 'transaction_journals.id', '=', 'transactions.transaction_journal_id')
->leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id')
->where('transaction_types.type', TransactionType::OPENING_BALANCE)
->where('transaction_types.type', TransactionTypeEnum::OPENING_BALANCE->value)
->get(['transactions.transaction_journal_id'])
;
if ($set->count() > 0) {

View File

@ -45,7 +45,7 @@ class JournalList implements BinderInterface
// get the journals by using the collector.
/** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class);
$collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::DEPOSIT->value, TransactionTypeEnum::TRANSFER->value, TransactionType::RECONCILIATION]);
$collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::DEPOSIT->value, TransactionTypeEnum::TRANSFER->value, TransactionTypeEnum::RECONCILIATION->value]);
$collector->withCategoryInformation()->withBudgetInformation()->withTagInformation()->withAccountInformation();
$collector->setJournalIds($list);
$result = $collector->getExtractedJournals();

View File

@ -225,8 +225,8 @@ class AccountBalanceGrouped
|| (
(
TransactionTypeEnum::TRANSFER->value === $journal['transaction_type_type']
|| TransactionType::RECONCILIATION === $journal['transaction_type_type']
|| TransactionType::OPENING_BALANCE === $journal['transaction_type_type']
|| TransactionTypeEnum::RECONCILIATION->value === $journal['transaction_type_type']
|| TransactionTypeEnum::OPENING_BALANCE->value === $journal['transaction_type_type']
)
&& in_array($journal['destination_account_id'], $this->accountIds, true)
)

View File

@ -42,8 +42,8 @@ trait TransactionFilter
TransactionTypeEnum::WITHDRAWAL->value,
TransactionTypeEnum::DEPOSIT->value,
TransactionTypeEnum::TRANSFER->value,
TransactionType::OPENING_BALANCE,
TransactionType::RECONCILIATION,
TransactionTypeEnum::OPENING_BALANCE->value,
TransactionTypeEnum::RECONCILIATION->value,
],
'withdrawal' => [TransactionTypeEnum::WITHDRAWAL->value],
'withdrawals' => [TransactionTypeEnum::WITHDRAWAL->value],
@ -54,11 +54,11 @@ trait TransactionFilter
'deposits' => [TransactionTypeEnum::DEPOSIT->value],
'transfer' => [TransactionTypeEnum::TRANSFER->value],
'transfers' => [TransactionTypeEnum::TRANSFER->value],
'opening_balance' => [TransactionType::OPENING_BALANCE],
'reconciliation' => [TransactionType::RECONCILIATION],
'reconciliations' => [TransactionType::RECONCILIATION],
'special' => [TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION],
'specials' => [TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION],
'opening_balance' => [TransactionTypeEnum::OPENING_BALANCE->value],
'reconciliation' => [TransactionTypeEnum::RECONCILIATION->value],
'reconciliations' => [TransactionTypeEnum::RECONCILIATION->value],
'special' => [TransactionTypeEnum::OPENING_BALANCE->value, TransactionTypeEnum::RECONCILIATION->value],
'specials' => [TransactionTypeEnum::OPENING_BALANCE->value, TransactionTypeEnum::RECONCILIATION->value],
'default' => [TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::DEPOSIT->value, TransactionTypeEnum::TRANSFER->value],
];
$return = [];

View File

@ -75,7 +75,7 @@ trait UserNavigation
return false;
}
$type = $journal->transactionType->type;
$editable = [TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::TRANSFER->value, TransactionTypeEnum::DEPOSIT->value, TransactionType::RECONCILIATION];
$editable = [TransactionTypeEnum::WITHDRAWAL->value, TransactionTypeEnum::TRANSFER->value, TransactionTypeEnum::DEPOSIT->value, TransactionTypeEnum::RECONCILIATION->value];
return in_array($type, $editable, true);
}

View File

@ -103,12 +103,12 @@ class TransactionGroupTwig extends AbstractExtension
}
// opening balance and it comes from initial balance? its expense.
if (TransactionType::OPENING_BALANCE === $transactionType && AccountType::INITIAL_BALANCE !== $sourceType) {
if (TransactionTypeEnum::OPENING_BALANCE->value === $transactionType && AccountType::INITIAL_BALANCE !== $sourceType) {
$amount = bcmul($amount, '-1');
}
// reconciliation and it comes from reconciliation?
if (TransactionType::RECONCILIATION === $transactionType && AccountType::RECONCILIATION !== $sourceType) {
if (TransactionTypeEnum::RECONCILIATION->value === $transactionType && AccountType::RECONCILIATION !== $sourceType) {
$amount = bcmul($amount, '-1');
}

View File

@ -156,17 +156,17 @@ class AccountValidator
break;
case TransactionType::OPENING_BALANCE:
case TransactionTypeEnum::OPENING_BALANCE->value:
$result = $this->validateOBDestination($array);
break;
case TransactionType::LIABILITY_CREDIT:
case TransactionTypeEnum::LIABILITY_CREDIT->value:
$result = $this->validateLCDestination($array);
break;
case TransactionType::RECONCILIATION:
case TransactionTypeEnum::RECONCILIATION->value:
$result = $this->validateReconciliationDestination($array);
break;
@ -201,17 +201,17 @@ class AccountValidator
break;
case TransactionType::OPENING_BALANCE:
case TransactionTypeEnum::OPENING_BALANCE->value:
$result = $this->validateOBSource($array);
break;
case TransactionType::LIABILITY_CREDIT:
case TransactionTypeEnum::LIABILITY_CREDIT->value:
$result = $this->validateLCSource($array);
break;
case TransactionType::RECONCILIATION:
case TransactionTypeEnum::RECONCILIATION->value:
app('log')->debug('Calling validateReconciliationSource');
$result = $this->validateReconciliationSource($array);

View File

@ -159,7 +159,7 @@ trait TransactionValidation
protected function sanityCheckReconciliation(Validator $validator, string $transactionType, int $index, array $source, array $destination): void
{
app('log')->debug('Now in sanityCheckReconciliation');
if (TransactionType::RECONCILIATION === ucfirst($transactionType)
if (TransactionTypeEnum::RECONCILIATION->value === ucfirst($transactionType)
&& null === $source['id'] && null === $source['name'] && null === $destination['id'] && null === $destination['name']
) {
app('log')->debug('Both are NULL, error!');
@ -169,7 +169,7 @@ trait TransactionValidation
$validator->errors()->add(sprintf('transactions.%d.destination_name', $index), trans('validation.reconciliation_either_account'));
}
if (TransactionType::RECONCILIATION === $transactionType
if (TransactionTypeEnum::RECONCILIATION->value === $transactionType
&& (null !== $source['id'] || null !== $source['name'])
&& (null !== $destination['id'] || null !== $destination['name'])) {
app('log')->debug('Both are not NULL, error!');