Replace enum

This commit is contained in:
James Cole
2025-01-03 09:05:19 +01:00
parent 21165eb3e0
commit 44eafeeae5
55 changed files with 148 additions and 106 deletions

View File

@@ -1,6 +1,4 @@
parameters: parameters:
scanFiles:
- ../_ide_helper_models.php
universalObjectCratesClasses: universalObjectCratesClasses:
- Illuminate\Database\Eloquent\Model - Illuminate\Database\Eloquent\Model
# TODO: slowly remove these parameters and fix the issues found. # TODO: slowly remove these parameters and fix the issues found.
@@ -59,5 +57,5 @@ parameters:
# The level 8 is the highest level. original was 5 # The level 8 is the highest level. original was 5
# 7 is more than enough, higher just leaves NULL things. # 7 is more than enough, higher just leaves NULL things.
level: 7 level: 1

View File

@@ -26,6 +26,7 @@ namespace FireflyIII\Api\V1\Controllers\Insight\Transfer;
use FireflyIII\Api\V1\Controllers\Controller; use FireflyIII\Api\V1\Controllers\Controller;
use FireflyIII\Api\V1\Requests\Insight\GenericRequest; use FireflyIII\Api\V1\Requests\Insight\GenericRequest;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Tag\TagRepositoryInterface; use FireflyIII\Repositories\Tag\TagRepositoryInterface;
@@ -72,7 +73,7 @@ class TagController extends Controller
// collect all expenses in this period (regardless of type) by the given bills and accounts. // collect all expenses in this period (regardless of type) by the given bills and accounts.
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setTypes([TransactionType::TRANSFER])->setRange($start, $end)->setDestinationAccounts($accounts); $collector->setTypes([TransactionTypeEnum::TRANSFER->value])->setRange($start, $end)->setDestinationAccounts($accounts);
$collector->withoutTags(); $collector->withoutTags();
$genericSet = $collector->getExtractedJournals(); $genericSet = $collector->getExtractedJournals();
@@ -128,7 +129,7 @@ class TagController extends Controller
// collect all expenses in this period (regardless of type) by the given bills and accounts. // collect all expenses in this period (regardless of type) by the given bills and accounts.
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setTypes([TransactionType::TRANSFER])->setRange($start, $end)->setDestinationAccounts($accounts); $collector->setTypes([TransactionTypeEnum::TRANSFER->value])->setRange($start, $end)->setDestinationAccounts($accounts);
$collector->setTags($tags); $collector->setTags($tags);
$genericSet = $collector->getExtractedJournals(); $genericSet = $collector->getExtractedJournals();

View File

@@ -27,6 +27,7 @@ namespace FireflyIII\Api\V2\Controllers\Model\ExchangeRate;
use FireflyIII\Api\V2\Controllers\Controller; use FireflyIII\Api\V2\Controllers\Controller;
use FireflyIII\Repositories\UserGroups\ExchangeRate\ExchangeRateRepositoryInterface; use FireflyIII\Repositories\UserGroups\ExchangeRate\ExchangeRateRepositoryInterface;
use FireflyIII\Support\Http\Api\ValidatesUserGroupTrait; use FireflyIII\Support\Http\Api\ValidatesUserGroupTrait;
use FireflyIII\Transformers\V2\ExchangeRateTransformer;
use Illuminate\Http\JsonResponse; use Illuminate\Http\JsonResponse;
use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Pagination\LengthAwarePaginator;

View File

@@ -26,7 +26,6 @@ namespace FireflyIII\Api\V2\Request\Autocomplete;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Support\Http\Api\AccountFilter; use FireflyIII\Support\Http\Api\AccountFilter;
use FireflyIII\Support\Http\Api\ParsesQueryFilters;
use FireflyIII\Support\Request\ChecksLogin; use FireflyIII\Support\Request\ChecksLogin;
use FireflyIII\Support\Request\ConvertsDataTypes; use FireflyIII\Support\Request\ConvertsDataTypes;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;
@@ -39,7 +38,6 @@ class AutocompleteRequest extends FormRequest
use AccountFilter; use AccountFilter;
use ChecksLogin; use ChecksLogin;
use ConvertsDataTypes; use ConvertsDataTypes;
use ParsesQueryFilters;
/** /**
* Loops over all possible query parameters (these are shared over ALL auto complete requests) * Loops over all possible query parameters (these are shared over ALL auto complete requests)

View File

@@ -82,7 +82,7 @@ class ConvertsDatesToUTC extends Command
* @var string $model * @var string $model
* @var array $fields * @var array $fields
*/ */
foreach (AddTimezonesToDates::$models as $model => $fields) { foreach (CorrectsTimezoneInformation::$models as $model => $fields) {
$this->ConvertModeltoUTC($model, $fields); $this->ConvertModeltoUTC($model, $fields);
} }
// tell the system we are now in UTC mode. // tell the system we are now in UTC mode.

View File

@@ -26,6 +26,7 @@ namespace FireflyIII\Console\Commands\Correction;
use FireflyIII\Console\Commands\ShowsFriendlyMessages; use FireflyIII\Console\Commands\ShowsFriendlyMessages;
use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Enums\AccountTypeEnum;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Factory\AccountFactory; use FireflyIII\Factory\AccountFactory;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
@@ -256,7 +257,7 @@ class CorrectsAccountTypes extends Command
private function makeTransfer(TransactionJournal $journal): void private function makeTransfer(TransactionJournal $journal): void
{ {
// from an asset to a liability should be a withdrawal: // from an asset to a liability should be a withdrawal:
$withdrawal = TransactionType::whereType(TransactionType::WITHDRAWAL)->first(); $withdrawal = TransactionType::whereType(TransactionTypeEnum::WITHDRAWAL->value)->first();
$journal->transactionType()->associate($withdrawal); $journal->transactionType()->associate($withdrawal);
$journal->save(); $journal->save();
$message = sprintf('Converted transaction #%d from a transfer to a withdrawal.', $journal->id); $message = sprintf('Converted transaction #%d from a transfer to a withdrawal.', $journal->id);
@@ -286,7 +287,7 @@ class CorrectsAccountTypes extends Command
private function shouldGoToExpenseAccount(string $transactionType, string $sourceType, string $destinationType): bool private function shouldGoToExpenseAccount(string $transactionType, string $sourceType, string $destinationType): bool
{ {
return TransactionType::WITHDRAWAL === $transactionType && AccountType::ASSET === $sourceType && AccountType::REVENUE === $destinationType; return TransactionTypeEnum::WITHDRAWAL->value === $transactionType && AccountType::ASSET === $sourceType && AccountType::REVENUE === $destinationType;
} }
private function makeExpenseDestination(TransactionJournal $journal, Transaction $destination): void private function makeExpenseDestination(TransactionJournal $journal, Transaction $destination): void

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Console\Commands\Correction; namespace FireflyIII\Console\Commands\Correction;
use FireflyIII\Console\Commands\ShowsFriendlyMessages; use FireflyIII\Console\Commands\ShowsFriendlyMessages;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\TransactionJournal; use FireflyIII\Models\TransactionJournal;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use Illuminate\Console\Command; use Illuminate\Console\Command;
@@ -44,7 +45,7 @@ class CorrectsTransferBudgets extends Command
$set = TransactionJournal::distinct() $set = TransactionJournal::distinct()
->leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id') ->leftJoin('transaction_types', 'transaction_types.id', '=', 'transaction_journals.transaction_type_id')
->leftJoin('budget_transaction_journal', 'transaction_journals.id', '=', 'budget_transaction_journal.transaction_journal_id') ->leftJoin('budget_transaction_journal', 'transaction_journals.id', '=', 'budget_transaction_journal.transaction_journal_id')
->whereNotIn('transaction_types.type', [TransactionType::WITHDRAWAL]) ->whereNotIn('transaction_types.type', [TransactionTypeEnum::WITHDRAWAL->value])
->whereNotNull('budget_transaction_journal.budget_id')->get(['transaction_journals.*']) ->whereNotNull('budget_transaction_journal.budget_id')->get(['transaction_journals.*'])
; ;
$count = 0; $count = 0;

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Console\Commands\Correction; namespace FireflyIII\Console\Commands\Correction;
use FireflyIII\Console\Commands\ShowsFriendlyMessages; use FireflyIII\Console\Commands\ShowsFriendlyMessages;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\TransactionJournal; use FireflyIII\Models\TransactionJournal;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use Illuminate\Console\Command; use Illuminate\Console\Command;
@@ -42,7 +43,7 @@ class RemovesBills extends Command
public function handle(): int public function handle(): int
{ {
/** @var null|TransactionType $withdrawal */ /** @var null|TransactionType $withdrawal */
$withdrawal = TransactionType::where('type', TransactionType::WITHDRAWAL)->first(); $withdrawal = TransactionType::where('type', TransactionTypeEnum::WITHDRAWAL->value)->first();
if (null === $withdrawal) { if (null === $withdrawal) {
return 0; return 0;
} }

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Console\Commands\Upgrade; namespace FireflyIII\Console\Commands\Upgrade;
use FireflyIII\Console\Commands\ShowsFriendlyMessages; use FireflyIII\Console\Commands\ShowsFriendlyMessages;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Models\Transaction; use FireflyIII\Models\Transaction;
@@ -103,7 +104,7 @@ class UpgradesVariousCurrencyInformation extends Command
private function updateOtherJournalsCurrencies(): void private function updateOtherJournalsCurrencies(): void
{ {
$set = $this->cliRepos->getAllJournals( $set = $this->cliRepos->getAllJournals(
[TransactionType::WITHDRAWAL, TransactionType::DEPOSIT, TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION] [TransactionTypeEnum::WITHDRAWAL->value, TransactionType::DEPOSIT, TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION]
); );
/** @var TransactionJournal $journal */ /** @var TransactionJournal $journal */
@@ -180,7 +181,7 @@ class UpgradesVariousCurrencyInformation extends Command
default: default:
break; break;
case TransactionType::WITHDRAWAL: case TransactionTypeEnum::WITHDRAWAL->value:
$lead = $journal->transactions()->where('amount', '<', 0)->first(); $lead = $journal->transactions()->where('amount', '<', 0)->first();
break; break;

View File

@@ -166,7 +166,7 @@ class TransactionJournalFactory
$currency = $this->currencyRepository->findCurrency((int) $row['currency_id'], $row['currency_code']); $currency = $this->currencyRepository->findCurrency((int) $row['currency_id'], $row['currency_code']);
$foreignCurrency = $this->currencyRepository->findCurrencyNull($row['foreign_currency_id'], $row['foreign_currency_code']); $foreignCurrency = $this->currencyRepository->findCurrencyNull($row['foreign_currency_id'], $row['foreign_currency_code']);
$bill = $this->billRepository->findBill((int) $row['bill_id'], $row['bill_name']); $bill = $this->billRepository->findBill((int) $row['bill_id'], $row['bill_name']);
$billId = TransactionType::WITHDRAWAL === $type->type && null !== $bill ? $bill->id : null; $billId = TransactionTypeEnum::WITHDRAWAL->value === $type->type && null !== $bill ? $bill->id : null;
$description = (string) $row['description']; $description = (string) $row['description'];
// Manipulate basic fields // Manipulate basic fields

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Generator\Report\Budget; namespace FireflyIII\Generator\Report\Budget;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Generator\Report\ReportGeneratorInterface; use FireflyIII\Generator\Report\ReportGeneratorInterface;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
@@ -139,7 +140,7 @@ class MonthReportGenerator implements ReportGeneratorInterface
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts($this->accounts)->setRange($this->start, $this->end) $collector->setAccounts($this->accounts)->setRange($this->start, $this->end)
->setTypes([TransactionType::WITHDRAWAL]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value])
->withAccountInformation() ->withAccountInformation()
->withBudgetInformation() ->withBudgetInformation()
->setBudgets($this->budgets) ->setBudgets($this->budgets)

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Generator\Report\Category; namespace FireflyIII\Generator\Report\Category;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Generator\Report\ReportGeneratorInterface; use FireflyIII\Generator\Report\ReportGeneratorInterface;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
@@ -138,7 +139,7 @@ class MonthReportGenerator implements ReportGeneratorInterface
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts($this->accounts)->setRange($this->start, $this->end) $collector->setAccounts($this->accounts)->setRange($this->start, $this->end)
->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER])
->setCategories($this->categories)->withAccountInformation() ->setCategories($this->categories)->withAccountInformation()
; ;

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\Handlers\Events; namespace FireflyIII\Handlers\Events;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Enums\WebhookTrigger; use FireflyIII\Enums\WebhookTrigger;
use FireflyIII\Events\RequestedSendWebhookMessages; use FireflyIII\Events\RequestedSendWebhookMessages;
use FireflyIII\Events\UpdatedTransactionGroup; use FireflyIII\Events\UpdatedTransactionGroup;
@@ -142,7 +143,7 @@ class UpdatedGroupEventHandler
$destAccount = $first->transactions()->where('amount', '>', '0')->first()->account; $destAccount = $first->transactions()->where('amount', '>', '0')->first()->account;
$type = $first->transactionType->type; $type = $first->transactionType->type;
if (TransactionType::TRANSFER === $type || TransactionType::WITHDRAWAL === $type) { if (TransactionType::TRANSFER === $type || TransactionTypeEnum::WITHDRAWAL->value === $type) {
// set all source transactions to source account: // set all source transactions to source account:
Transaction::whereIn('transaction_journal_id', $all) Transaction::whereIn('transaction_journal_id', $all)
->where('amount', '<', 0)->update(['account_id' => $sourceAccount->id]) ->where('amount', '<', 0)->update(['account_id' => $sourceAccount->id])

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\Helpers\Report; namespace FireflyIII\Helpers\Report;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
@@ -73,7 +74,7 @@ class PopupReport implements PopupReportInterface
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector $collector
->setAccounts(new Collection([$account])) ->setAccounts(new Collection([$account]))
->setTypes([TransactionType::WITHDRAWAL]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value])
->withAccountInformation() ->withAccountInformation()
->withCategoryInformation() ->withCategoryInformation()
->setRange($attributes['startDate'], $attributes['endDate']) ->setRange($attributes['startDate'], $attributes['endDate'])
@@ -115,7 +116,7 @@ class PopupReport implements PopupReportInterface
$collector->setCurrency($currency); $collector->setCurrency($currency);
} }
if (null === $budget->id || 0 === $budget->id) { if (null === $budget->id || 0 === $budget->id) {
$collector->setTypes([TransactionType::WITHDRAWAL])->withoutBudget(); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->withoutBudget();
} }
if (null !== $budget->id && 0 !== $budget->id) { if (null !== $budget->id && 0 !== $budget->id) {
$collector->setBudget($budget); $collector->setBudget($budget);
@@ -142,7 +143,7 @@ class PopupReport implements PopupReportInterface
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts($attributes['accounts']) $collector->setAccounts($attributes['accounts'])
->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER, TransactionType::DEPOSIT]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER, TransactionType::DEPOSIT])
->withAccountInformation() ->withAccountInformation()
->withBudgetInformation() ->withBudgetInformation()
->withCategoryInformation() ->withCategoryInformation()
@@ -196,7 +197,7 @@ class PopupReport implements PopupReportInterface
->withAccountInformation() ->withAccountInformation()
->withBudgetInformation() ->withBudgetInformation()
->withCategoryInformation() ->withCategoryInformation()
->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER])
; ;
if (null !== $currency) { if (null !== $currency) {

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Budget; namespace FireflyIII\Http\Controllers\Budget;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -96,7 +97,7 @@ class ShowController extends Controller
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL])->setLimit($pageSize)->setPage($page) $collector->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->setLimit($pageSize)->setPage($page)
->withoutBudget()->withAccountInformation()->withCategoryInformation() ->withoutBudget()->withAccountInformation()->withCategoryInformation()
; ;
$groups = $collector->getPaginatedGroups(); $groups = $collector->getPaginatedGroups();
@@ -121,7 +122,7 @@ class ShowController extends Controller
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL])->setLimit($pageSize)->setPage($page) $collector->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->setLimit($pageSize)->setPage($page)
->withoutBudget()->withAccountInformation()->withCategoryInformation() ->withoutBudget()->withAccountInformation()->withCategoryInformation()
; ;
$groups = $collector->getPaginatedGroups(); $groups = $collector->getPaginatedGroups();

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Category; namespace FireflyIII\Http\Controllers\Category;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -94,7 +95,7 @@ class NoCategoryController extends Controller
$collector->setRange($start, $end) $collector->setRange($start, $end)
->setLimit($pageSize)->setPage($page)->withoutCategory() ->setLimit($pageSize)->setPage($page)->withoutCategory()
->withAccountInformation()->withBudgetInformation() ->withAccountInformation()->withBudgetInformation()
->setTypes([TransactionType::WITHDRAWAL, TransactionType::DEPOSIT, TransactionType::TRANSFER]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::DEPOSIT, TransactionType::TRANSFER])
; ;
$groups = $collector->getPaginatedGroups(); $groups = $collector->getPaginatedGroups();
$groups->setPath(route('categories.no-category', [$start->format('Y-m-d'), $end->format('Y-m-d')])); $groups->setPath(route('categories.no-category', [$start->format('Y-m-d'), $end->format('Y-m-d')]));
@@ -127,7 +128,7 @@ class NoCategoryController extends Controller
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setRange($start, $end)->setLimit($pageSize)->setPage($page)->withoutCategory() $collector->setRange($start, $end)->setLimit($pageSize)->setPage($page)->withoutCategory()
->withAccountInformation()->withBudgetInformation() ->withAccountInformation()->withBudgetInformation()
->setTypes([TransactionType::WITHDRAWAL, TransactionType::DEPOSIT, TransactionType::TRANSFER]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::DEPOSIT, TransactionType::TRANSFER])
; ;
$groups = $collector->getPaginatedGroups(); $groups = $collector->getPaginatedGroups();
$groups->setPath(route('categories.no-category.all')); $groups->setPath(route('categories.no-category.all'));

View File

@@ -25,6 +25,7 @@ namespace FireflyIII\Http\Controllers\Chart;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Enums\AccountTypeEnum;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Generator\Chart\Basic\GeneratorInterface; use FireflyIII\Generator\Chart\Basic\GeneratorInterface;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
@@ -225,7 +226,7 @@ class AccountController extends Controller
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts(new Collection([$account]))->setRange($start, $end)->withBudgetInformation()->setTypes([TransactionType::WITHDRAWAL]); $collector->setAccounts(new Collection([$account]))->setRange($start, $end)->withBudgetInformation()->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$journals = $collector->getExtractedJournals(); $journals = $collector->getExtractedJournals();
$chartData = []; $chartData = [];
$result = []; $result = [];
@@ -290,7 +291,7 @@ class AccountController extends Controller
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts(new Collection([$account]))->setRange($start, $end)->withCategoryInformation()->setTypes([TransactionType::WITHDRAWAL]); $collector->setAccounts(new Collection([$account]))->setRange($start, $end)->withCategoryInformation()->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$journals = $collector->getExtractedJournals(); $journals = $collector->getExtractedJournals();
$result = []; $result = [];
$chartData = []; $chartData = [];

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Chart; namespace FireflyIII\Http\Controllers\Chart;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Generator\Chart\Basic\GeneratorInterface; use FireflyIII\Generator\Chart\Basic\GeneratorInterface;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
@@ -388,7 +389,7 @@ class BudgetController extends Controller
return response()->json($cache->get()); return response()->json($cache->get());
} }
$collector->setRange($start, $end); $collector->setRange($start, $end);
$collector->setTypes([TransactionType::WITHDRAWAL])->setBudget($budget)->withAccountInformation(); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->setBudget($budget)->withAccountInformation();
$journals = $collector->getExtractedJournals(); $journals = $collector->getExtractedJournals();
$result = []; $result = [];
$chartData = []; $chartData = [];

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Chart; namespace FireflyIII\Http\Controllers\Chart;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Generator\Chart\Basic\GeneratorInterface; use FireflyIII\Generator\Chart\Basic\GeneratorInterface;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -66,7 +67,7 @@ class TransactionController extends Controller
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setRange($start, $end); $collector->setRange($start, $end);
$collector->withBudgetInformation(); $collector->withBudgetInformation();
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$result = $collector->getExtractedJournals(); $result = $collector->getExtractedJournals();
$data = []; $data = [];
@@ -109,7 +110,7 @@ class TransactionController extends Controller
$collector->withCategoryInformation(); $collector->withCategoryInformation();
if ('withdrawal' === $objectType) { if ('withdrawal' === $objectType) {
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
} }
if ('deposit' === $objectType) { if ('deposit' === $objectType) {
$collector->setTypes([TransactionType::DEPOSIT]); $collector->setTypes([TransactionType::DEPOSIT]);
@@ -159,7 +160,7 @@ class TransactionController extends Controller
$collector->withAccountInformation(); $collector->withAccountInformation();
if ('withdrawal' === $objectType) { if ('withdrawal' === $objectType) {
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
} }
if ('deposit' === $objectType) { if ('deposit' === $objectType) {
$collector->setTypes([TransactionType::DEPOSIT]); $collector->setTypes([TransactionType::DEPOSIT]);
@@ -209,7 +210,7 @@ class TransactionController extends Controller
$collector->withAccountInformation(); $collector->withAccountInformation();
if ('withdrawal' === $objectType) { if ('withdrawal' === $objectType) {
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
} }
if ('deposit' === $objectType) { if ('deposit' === $objectType) {
$collector->setTypes([TransactionType::DEPOSIT]); $collector->setTypes([TransactionType::DEPOSIT]);

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Report; namespace FireflyIII\Http\Controllers\Report;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -96,7 +97,7 @@ class BalanceController extends Controller
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$journals = $collector->setRange($start, $end)->setSourceAccounts($accounts)->setTypes([TransactionType::WITHDRAWAL])->setBudget($budget) $journals = $collector->setRange($start, $end)->setSourceAccounts($accounts)->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->setBudget($budget)
->getExtractedJournals() ->getExtractedJournals()
; ;

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Controllers\Transaction; namespace FireflyIII\Http\Controllers\Transaction;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\UpdatedTransactionGroup; use FireflyIII\Events\UpdatedTransactionGroup;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Http\Controllers\Controller; use FireflyIII\Http\Controllers\Controller;
@@ -127,7 +128,7 @@ class MassController extends Controller
$accountRepository = app(AccountRepositoryInterface::class); $accountRepository = app(AccountRepositoryInterface::class);
// valid withdrawal sources: // valid withdrawal sources:
$array = array_keys(config(sprintf('firefly.source_dests.%s', TransactionType::WITHDRAWAL))); $array = array_keys(config(sprintf('firefly.source_dests.%s', TransactionTypeEnum::WITHDRAWAL->value)));
$withdrawalSources = $accountRepository->getAccountsByType($array); $withdrawalSources = $accountRepository->getAccountsByType($array);
// valid deposit destinations: // valid deposit destinations:

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Http\Requests; namespace FireflyIII\Http\Requests;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Factory\CategoryFactory; use FireflyIII\Factory\CategoryFactory;
use FireflyIII\Models\Recurrence; use FireflyIII\Models\Recurrence;
@@ -243,7 +244,7 @@ class RecurrenceFormRequest extends FormRequest
// switch on type to expand rules for source and destination accounts: // switch on type to expand rules for source and destination accounts:
$type = strtolower($this->convertString('transaction_type')); $type = strtolower($this->convertString('transaction_type'));
if (strtolower(TransactionType::WITHDRAWAL) === $type) { if (strtolower(TransactionTypeEnum::WITHDRAWAL->value) === $type) {
$rules['source_id'] = 'required|exists:accounts,id|belongsToUser:accounts'; $rules['source_id'] = 'required|exists:accounts,id|belongsToUser:accounts';
$rules['destination_name'] = 'min:1|max:255|nullable'; $rules['destination_name'] = 'min:1|max:255|nullable';
} }

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\Account; namespace FireflyIII\Repositories\Account;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -121,7 +122,7 @@ class AccountTasker implements AccountTaskerInterface
$collector->setSourceAccounts($accounts)->setRange($start, $end); $collector->setSourceAccounts($accounts)->setRange($start, $end);
$collector->excludeDestinationAccounts($accounts); $collector->excludeDestinationAccounts($accounts);
$collector->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER])->withAccountInformation(); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER])->withAccountInformation();
$journals = $collector->getExtractedJournals(); $journals = $collector->getExtractedJournals();
$report = $this->groupExpenseByDestination($journals); $report = $this->groupExpenseByDestination($journals);

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\Budget; namespace FireflyIII\Repositories\Budget;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -617,7 +618,7 @@ class BudgetRepository implements BudgetRepositoryInterface
$collector->setUser($this->user) $collector->setUser($this->user)
->setRange($start, $end) ->setRange($start, $end)
->excludeDestinationAccounts($selection) ->excludeDestinationAccounts($selection)
->setTypes([TransactionType::WITHDRAWAL]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value])
->setBudgets($this->getActiveBudgets()) ->setBudgets($this->getActiveBudgets())
; ;
@@ -679,7 +680,7 @@ class BudgetRepository implements BudgetRepositoryInterface
$collector->setUser($this->user) $collector->setUser($this->user)
->setRange($start, $end) ->setRange($start, $end)
->excludeDestinationAccounts($selection) ->excludeDestinationAccounts($selection)
->setTypes([TransactionType::WITHDRAWAL]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value])
->setBudget($budget) ->setBudget($budget)
; ;

View File

@@ -92,7 +92,7 @@ class NoBudgetRepository implements NoBudgetRepositoryInterface
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL]); $collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
if (null !== $accounts && $accounts->count() > 0) { if (null !== $accounts && $accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);

View File

@@ -127,7 +127,7 @@ class OperationsRepository implements OperationsRepositoryInterface
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL]); $collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
if (null !== $accounts && $accounts->count() > 0) { if (null !== $accounts && $accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);
} }

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\Category; namespace FireflyIII\Repositories\Category;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Support\Report\Summarizer\TransactionSummarizer; use FireflyIII\Support\Report\Summarizer\TransactionSummarizer;
@@ -48,7 +49,7 @@ class NoCategoryRepository implements NoCategoryRepositoryInterface
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL])->withoutCategory(); $collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->withoutCategory();
if (null !== $accounts && $accounts->count() > 0) { if (null !== $accounts && $accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);
} }
@@ -145,7 +146,7 @@ class NoCategoryRepository implements NoCategoryRepositoryInterface
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL])->withoutCategory(); $collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->withoutCategory();
if (null !== $accounts && $accounts->count() > 0) { if (null !== $accounts && $accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);

View File

@@ -53,7 +53,7 @@ class OperationsRepository implements OperationsRepositoryInterface
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL]); $collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
if (null !== $accounts && $accounts->count() > 0) { if (null !== $accounts && $accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);
} }

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\Tag; namespace FireflyIII\Repositories\Tag;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
@@ -48,7 +49,7 @@ class OperationsRepository implements OperationsRepositoryInterface
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL]); $collector->setUser($this->user)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$tagIds = []; $tagIds = [];
if (null !== $accounts && $accounts->count() > 0) { if (null !== $accounts && $accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\Tag; namespace FireflyIII\Repositories\Tag;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Factory\TagFactory; use FireflyIII\Factory\TagFactory;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\Attachment; use FireflyIII\Models\Attachment;
@@ -86,7 +87,7 @@ class TagRepository implements TagRepositoryInterface
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUser($this->user); $collector->setUser($this->user);
$collector->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL])->setTag($tag); $collector->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->setTag($tag);
return $collector->getExtractedJournals(); return $collector->getExtractedJournals();
} }
@@ -265,7 +266,7 @@ class TagRepository implements TagRepositoryInterface
'currency_name' => $journal['currency_name'], 'currency_name' => $journal['currency_name'],
'currency_symbol' => $journal['currency_symbol'], 'currency_symbol' => $journal['currency_symbol'],
'currency_decimal_places' => $journal['currency_decimal_places'], 'currency_decimal_places' => $journal['currency_decimal_places'],
TransactionType::WITHDRAWAL => '0', TransactionTypeEnum::WITHDRAWAL->value => '0',
TransactionType::DEPOSIT => '0', TransactionType::DEPOSIT => '0',
TransactionType::TRANSFER => '0', TransactionType::TRANSFER => '0',
TransactionType::RECONCILIATION => '0', TransactionType::RECONCILIATION => '0',
@@ -275,7 +276,7 @@ class TagRepository implements TagRepositoryInterface
// add amount to correct type: // add amount to correct type:
$amount = app('steam')->positive((string) $journal['amount']); $amount = app('steam')->positive((string) $journal['amount']);
$type = $journal['transaction_type_type']; $type = $journal['transaction_type_type'];
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
$amount = bcmul($amount, '-1'); $amount = bcmul($amount, '-1');
} }
$sums[$currencyId][$type] = bcadd($sums[$currencyId][$type], $amount); $sums[$currencyId][$type] = bcadd($sums[$currencyId][$type], $amount);
@@ -287,7 +288,7 @@ class TagRepository implements TagRepositoryInterface
'currency_name' => $journal['foreign_currency_name'], 'currency_name' => $journal['foreign_currency_name'],
'currency_symbol' => $journal['foreign_currency_symbol'], 'currency_symbol' => $journal['foreign_currency_symbol'],
'currency_decimal_places' => $journal['foreign_currency_decimal_places'], 'currency_decimal_places' => $journal['foreign_currency_decimal_places'],
TransactionType::WITHDRAWAL => '0', TransactionTypeEnum::WITHDRAWAL->value => '0',
TransactionType::DEPOSIT => '0', TransactionType::DEPOSIT => '0',
TransactionType::TRANSFER => '0', TransactionType::TRANSFER => '0',
TransactionType::RECONCILIATION => '0', TransactionType::RECONCILIATION => '0',
@@ -295,7 +296,7 @@ class TagRepository implements TagRepositoryInterface
]; ];
// add foreign amount to correct type: // add foreign amount to correct type:
$amount = app('steam')->positive((string) $journal['foreign_amount']); $amount = app('steam')->positive((string) $journal['foreign_amount']);
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
$amount = bcmul($amount, '-1'); $amount = bcmul($amount, '-1');
} }
$sums[$foreignCurrencyId][$type] = bcadd($sums[$foreignCurrencyId][$type], $amount); $sums[$foreignCurrencyId][$type] = bcadd($sums[$foreignCurrencyId][$type], $amount);

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\TransactionGroup; namespace FireflyIII\Repositories\TransactionGroup;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\DuplicateTransactionException; use FireflyIII\Exceptions\DuplicateTransactionException;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Factory\TransactionGroupFactory; use FireflyIII\Factory\TransactionGroupFactory;
@@ -250,10 +251,10 @@ class TransactionGroupRepository implements TransactionGroupRepositoryInterface
$type = $journal->transactionType->type; $type = $journal->transactionType->type;
$amount = app('steam')->positive($transaction->amount); $amount = app('steam')->positive($transaction->amount);
$return = ''; $return = '';
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
$return = app('amount')->formatAnything($currency, app('steam')->negative($amount)); $return = app('amount')->formatAnything($currency, app('steam')->negative($amount));
} }
if (TransactionType::WITHDRAWAL !== $type) { if (TransactionTypeEnum::WITHDRAWAL->value !== $type) {
$return = app('amount')->formatAnything($currency, $amount); $return = app('amount')->formatAnything($currency, $amount);
} }
@@ -274,10 +275,10 @@ class TransactionGroupRepository implements TransactionGroupRepositoryInterface
$type = $journal->transactionType->type; $type = $journal->transactionType->type;
$amount = app('steam')->positive($transaction->foreign_amount); $amount = app('steam')->positive($transaction->foreign_amount);
$return = ''; $return = '';
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
$return = app('amount')->formatAnything($currency, app('steam')->negative($amount)); $return = app('amount')->formatAnything($currency, app('steam')->negative($amount));
} }
if (TransactionType::WITHDRAWAL !== $type) { if (TransactionTypeEnum::WITHDRAWAL->value !== $type) {
$return = app('amount')->formatAnything($currency, $amount); $return = app('amount')->formatAnything($currency, $amount);
} }

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\TransactionType; namespace FireflyIII\Repositories\TransactionType;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
@@ -40,10 +41,10 @@ class TransactionTypeRepository implements TransactionTypeRepositoryInterface
return $type; return $type;
} }
$typeString ??= TransactionType::WITHDRAWAL; $typeString ??= TransactionTypeEnum::WITHDRAWAL->value;
$search = $this->findByType($typeString); $search = $this->findByType($typeString);
if (null === $search) { if (null === $search) {
$search = $this->findByType(TransactionType::WITHDRAWAL); $search = $this->findByType(TransactionTypeEnum::WITHDRAWAL->value);
} }
app('log')->debug(sprintf('Tried to search for "%s", came up with "%s". Will return it.', $typeString, $search->type)); app('log')->debug(sprintf('Tried to search for "%s", came up with "%s". Will return it.', $typeString, $search->type));

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Repositories\UserGroups\Budget; namespace FireflyIII\Repositories\UserGroups\Budget;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
@@ -45,7 +46,7 @@ class OperationsRepository implements OperationsRepositoryInterface
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setUserGroup($this->userGroup)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL]); $collector->setUserGroup($this->userGroup)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
if (null !== $accounts && $accounts->count() > 0) { if (null !== $accounts && $accounts->count() > 0) {
$collector->setAccounts($accounts); $collector->setAccounts($accounts);
} }

View File

@@ -343,7 +343,7 @@ class CreditRecalculateService
} }
// in any other case, remove amount from left of debt. // in any other case, remove amount from left of debt.
if (in_array($type, [TransactionType::WITHDRAWAL, TransactionType::DEPOSIT, TransactionType::TRANSFER], true)) { if (in_array($type, [TransactionTypeEnum::WITHDRAWAL->value, TransactionType::DEPOSIT, TransactionType::TRANSFER], true)) {
$usedAmount = app('steam')->negative($usedAmount); $usedAmount = app('steam')->negative($usedAmount);
return bcadd($leftOfDebt, $usedAmount); return bcadd($leftOfDebt, $usedAmount);
@@ -380,7 +380,7 @@ class CreditRecalculateService
*/ */
private function isWithdrawalIn(string $amount, string $transactionType): bool private function isWithdrawalIn(string $amount, string $transactionType): bool
{ {
return TransactionType::WITHDRAWAL === $transactionType && 1 === bccomp($amount, '0'); return TransactionTypeEnum::WITHDRAWAL->value === $transactionType && 1 === bccomp($amount, '0');
} }
/** /**
@@ -396,7 +396,7 @@ class CreditRecalculateService
*/ */
private function isWithdrawalOut(string $amount, string $transactionType): bool private function isWithdrawalOut(string $amount, string $transactionType): bool
{ {
return TransactionType::WITHDRAWAL === $transactionType && -1 === bccomp($amount, '0'); return TransactionTypeEnum::WITHDRAWAL->value === $transactionType && -1 === bccomp($amount, '0');
} }
/** /**

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Services\Internal\Support; namespace FireflyIII\Services\Internal\Support;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Factory\AccountMetaFactory; use FireflyIII\Factory\AccountMetaFactory;
use FireflyIII\Factory\TagFactory; use FireflyIII\Factory\TagFactory;
@@ -359,7 +360,7 @@ trait JournalServiceTrait
protected function storeBudget(TransactionJournal $journal, NullArrayObject $data): void protected function storeBudget(TransactionJournal $journal, NullArrayObject $data): void
{ {
if (TransactionType::WITHDRAWAL !== $journal->transactionType->type) { if (TransactionTypeEnum::WITHDRAWAL->value !== $journal->transactionType->type) {
$journal->budgets()->sync([]); $journal->budgets()->sync([]);
return; return;

View File

@@ -467,7 +467,7 @@ class JournalUpdateService
array_key_exists('bill_id', $this->data) array_key_exists('bill_id', $this->data)
|| array_key_exists('bill_name', $this->data) || array_key_exists('bill_name', $this->data)
) )
&& TransactionType::WITHDRAWAL === $type && TransactionTypeEnum::WITHDRAWAL->value === $type
) { ) {
$billId = (int) ($this->data['bill_id'] ?? 0); $billId = (int) ($this->data['bill_id'] ?? 0);
$billName = (string) ($this->data['bill_name'] ?? ''); $billName = (string) ($this->data['bill_name'] ?? '');

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\Support\Binder; namespace FireflyIII\Support\Binder;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use Illuminate\Routing\Route; use Illuminate\Routing\Route;
@@ -44,7 +45,7 @@ class JournalList implements BinderInterface
// get the journals by using the collector. // get the journals by using the collector.
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setTypes([TransactionType::WITHDRAWAL, TransactionType::DEPOSIT, TransactionType::TRANSFER, TransactionType::RECONCILIATION]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::DEPOSIT, TransactionType::TRANSFER, TransactionType::RECONCILIATION]);
$collector->withCategoryInformation()->withBudgetInformation()->withTagInformation()->withAccountInformation(); $collector->withCategoryInformation()->withBudgetInformation()->withTagInformation()->withAccountInformation();
$collector->setJournalIds($list); $collector->setJournalIds($list);
$result = $collector->getExtractedJournals(); $result = $collector->getExtractedJournals();

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Support\Http\Api; namespace FireflyIII\Support\Http\Api;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
/** /**
@@ -38,16 +39,16 @@ trait TransactionFilter
{ {
$types = [ $types = [
'all' => [ 'all' => [
TransactionType::WITHDRAWAL, TransactionTypeEnum::WITHDRAWAL->value,
TransactionType::DEPOSIT, TransactionType::DEPOSIT,
TransactionType::TRANSFER, TransactionType::TRANSFER,
TransactionType::OPENING_BALANCE, TransactionType::OPENING_BALANCE,
TransactionType::RECONCILIATION, TransactionType::RECONCILIATION,
], ],
'withdrawal' => [TransactionType::WITHDRAWAL], 'withdrawal' => [TransactionTypeEnum::WITHDRAWAL->value],
'withdrawals' => [TransactionType::WITHDRAWAL], 'withdrawals' => [TransactionTypeEnum::WITHDRAWAL->value],
'expense' => [TransactionType::WITHDRAWAL], 'expense' => [TransactionTypeEnum::WITHDRAWAL->value],
'expenses' => [TransactionType::WITHDRAWAL], 'expenses' => [TransactionTypeEnum::WITHDRAWAL->value],
'income' => [TransactionType::DEPOSIT], 'income' => [TransactionType::DEPOSIT],
'deposit' => [TransactionType::DEPOSIT], 'deposit' => [TransactionType::DEPOSIT],
'deposits' => [TransactionType::DEPOSIT], 'deposits' => [TransactionType::DEPOSIT],
@@ -58,7 +59,7 @@ trait TransactionFilter
'reconciliations' => [TransactionType::RECONCILIATION], 'reconciliations' => [TransactionType::RECONCILIATION],
'special' => [TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION], 'special' => [TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION],
'specials' => [TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION], 'specials' => [TransactionType::OPENING_BALANCE, TransactionType::RECONCILIATION],
'default' => [TransactionType::WITHDRAWAL, TransactionType::DEPOSIT, TransactionType::TRANSFER], 'default' => [TransactionTypeEnum::WITHDRAWAL->value, TransactionType::DEPOSIT, TransactionType::TRANSFER],
]; ];
$return = []; $return = [];
$parts = explode(',', $type); $parts = explode(',', $type);

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Support\Http\Controllers; namespace FireflyIII\Support\Http\Controllers;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
@@ -232,10 +233,10 @@ trait AugumentData
/** @var array $journal */ /** @var array $journal */
foreach ($array as $journal) { foreach ($array as $journal) {
$name = '(no name)'; $name = '(no name)';
if (TransactionType::WITHDRAWAL === $journal['transaction_type_type']) { if (TransactionTypeEnum::WITHDRAWAL->value === $journal['transaction_type_type']) {
$name = $journal['destination_account_name']; $name = $journal['destination_account_name'];
} }
if (TransactionType::WITHDRAWAL !== $journal['transaction_type_type']) { if (TransactionTypeEnum::WITHDRAWAL->value !== $journal['transaction_type_type']) {
$name = $journal['source_account_name']; $name = $journal['source_account_name'];
} }
@@ -255,7 +256,7 @@ trait AugumentData
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$total = $assets->merge($opposing); $total = $assets->merge($opposing);
$collector->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL])->setAccounts($total); $collector->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value])->setAccounts($total);
$journals = $collector->getExtractedJournals(); $journals = $collector->getExtractedJournals();
$sum = [ $sum = [
'grand_sum' => '0', 'grand_sum' => '0',

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Support\Http\Controllers; namespace FireflyIII\Support\Http\Controllers;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -105,7 +106,7 @@ trait PeriodOverview
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts(new Collection([$account])); $collector->setAccounts(new Collection([$account]));
$collector->setRange($start, $end); $collector->setRange($start, $end);
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$spentSet = $collector->getExtractedJournals(); $spentSet = $collector->getExtractedJournals();
// collect all transfers in this period: // collect all transfers in this period:
@@ -279,7 +280,7 @@ trait PeriodOverview
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setCategory($category); $collector->setCategory($category);
$collector->setRange($start, $end); $collector->setRange($start, $end);
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$spentSet = $collector->getExtractedJournals(); $spentSet = $collector->getExtractedJournals();
// collect all transfers in this period: // collect all transfers in this period:
@@ -343,7 +344,7 @@ trait PeriodOverview
// get all expenses without a budget. // get all expenses without a budget.
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setRange($start, $end)->withoutBudget()->withAccountInformation()->setTypes([TransactionType::WITHDRAWAL]); $collector->setRange($start, $end)->withoutBudget()->withAccountInformation()->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$journals = $collector->getExtractedJournals(); $journals = $collector->getExtractedJournals();
foreach ($dates as $currentDate) { foreach ($dates as $currentDate) {
@@ -401,7 +402,7 @@ trait PeriodOverview
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->withoutCategory(); $collector->withoutCategory();
$collector->setRange($start, $end); $collector->setRange($start, $end);
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$spentSet = $collector->getExtractedJournals(); $spentSet = $collector->getExtractedJournals();
// collect all transfers in this period: // collect all transfers in this period:
@@ -470,7 +471,7 @@ trait PeriodOverview
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setTag($tag); $collector->setTag($tag);
$collector->setRange($start, $end); $collector->setRange($start, $end);
$collector->setTypes([TransactionType::WITHDRAWAL]); $collector->setTypes([TransactionTypeEnum::WITHDRAWAL->value]);
$spentSet = $collector->getExtractedJournals(); $spentSet = $collector->getExtractedJournals();
// collect all transfers in this period: // collect all transfers in this period:

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Support\Http\Controllers; namespace FireflyIII\Support\Http\Controllers;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Helpers\Collector\GroupCollectorInterface; use FireflyIII\Helpers\Collector\GroupCollectorInterface;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
@@ -46,7 +47,7 @@ trait TransactionCalculation
$collector->setAccounts($total) $collector->setAccounts($total)
->setRange($start, $end) ->setRange($start, $end)
->withAccountInformation() ->withAccountInformation()
->setTypes([TransactionType::WITHDRAWAL]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value])
; ;
return $collector->getExtractedJournals(); return $collector->getExtractedJournals();
@@ -60,7 +61,7 @@ trait TransactionCalculation
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts($accounts)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]) $collector->setAccounts($accounts)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER])
->setTags($tags)->withAccountInformation() ->setTags($tags)->withAccountInformation()
; ;
@@ -74,7 +75,7 @@ trait TransactionCalculation
{ {
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts($accounts)->setRange($start, $end)->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]) $collector->setAccounts($accounts)->setRange($start, $end)->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER])
->setBudgets($budgets)->withAccountInformation() ->setBudgets($budgets)->withAccountInformation()
; ;
@@ -91,7 +92,7 @@ trait TransactionCalculation
$collector $collector
->setAccounts($accounts) ->setAccounts($accounts)
->setRange($start, $end) ->setRange($start, $end)
->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]) ->setTypes([TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER])
->setCategories($categories) ->setCategories($categories)
->withAccountInformation() ->withAccountInformation()
; ;

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Support\Http\Controllers; namespace FireflyIII\Support\Http\Controllers;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Models\Transaction; use FireflyIII\Models\Transaction;
@@ -74,7 +75,7 @@ trait UserNavigation
return false; return false;
} }
$type = $journal->transactionType->type; $type = $journal->transactionType->type;
$editable = [TransactionType::WITHDRAWAL, TransactionType::TRANSFER, TransactionType::DEPOSIT, TransactionType::RECONCILIATION]; $editable = [TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER, TransactionType::DEPOSIT, TransactionType::RECONCILIATION];
return in_array($type, $editable, true); return in_array($type, $editable, true);
} }

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Support\Twig; namespace FireflyIII\Support\Twig;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Models\Transaction; use FireflyIII\Models\Transaction;
use FireflyIII\Models\TransactionJournal; use FireflyIII\Models\TransactionJournal;
@@ -76,7 +77,7 @@ class TransactionGroupTwig extends AbstractExtension
*/ */
private function normalJournalArrayAmount(array $array): string private function normalJournalArrayAmount(array $array): string
{ {
$type = $array['transaction_type_type'] ?? TransactionType::WITHDRAWAL; $type = $array['transaction_type_type'] ?? TransactionTypeEnum::WITHDRAWAL->value;
$amount = $array['amount'] ?? '0'; $amount = $array['amount'] ?? '0';
$colored = true; $colored = true;
$sourceType = $array['source_account_type'] ?? 'invalid'; $sourceType = $array['source_account_type'] ?? 'invalid';
@@ -97,7 +98,7 @@ class TransactionGroupTwig extends AbstractExtension
private function signAmount(string $amount, string $transactionType, string $sourceType): string private function signAmount(string $amount, string $transactionType, string $sourceType): string
{ {
// withdrawals stay negative // withdrawals stay negative
if (TransactionType::WITHDRAWAL !== $transactionType) { if (TransactionTypeEnum::WITHDRAWAL->value !== $transactionType) {
$amount = bcmul($amount, '-1'); $amount = bcmul($amount, '-1');
} }
@@ -119,7 +120,7 @@ class TransactionGroupTwig extends AbstractExtension
*/ */
private function foreignJournalArrayAmount(array $array): string private function foreignJournalArrayAmount(array $array): string
{ {
$type = $array['transaction_type_type'] ?? TransactionType::WITHDRAWAL; $type = $array['transaction_type_type'] ?? TransactionTypeEnum::WITHDRAWAL->value;
$amount = $array['foreign_amount'] ?? '0'; $amount = $array['foreign_amount'] ?? '0';
$colored = true; $colored = true;

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
@@ -81,7 +82,7 @@ class ConvertToDeposit implements ActionInterface
return false; return false;
} }
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
app('log')->debug('Going to transform a withdrawal to a deposit.'); app('log')->debug('Going to transform a withdrawal to a deposit.');
try { try {
@@ -94,7 +95,7 @@ class ConvertToDeposit implements ActionInterface
return false; return false;
} }
event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionType::WITHDRAWAL, TransactionType::DEPOSIT)); event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionTypeEnum::WITHDRAWAL->value, TransactionType::DEPOSIT));
return $res; return $res;
} }

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnObject; use FireflyIII\Events\Model\Rule\RuleActionFailedOnObject;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
@@ -86,7 +87,7 @@ class ConvertToTransfer implements ActionInterface
return false; return false;
} }
if (TransactionType::DEPOSIT !== $type && TransactionType::WITHDRAWAL !== $type) { if (TransactionType::DEPOSIT !== $type && TransactionTypeEnum::WITHDRAWAL->value !== $type) {
event(new RuleActionFailedOnArray($this->action, $journal, trans('rules.unsupported_transaction_type_transfer', ['type' => $type]))); event(new RuleActionFailedOnArray($this->action, $journal, trans('rules.unsupported_transaction_type_transfer', ['type' => $type])));
return false; return false;
@@ -97,7 +98,7 @@ class ConvertToTransfer implements ActionInterface
$repository = app(AccountRepositoryInterface::class); $repository = app(AccountRepositoryInterface::class);
$repository->setUser($user); $repository->setUser($user);
$expectedType = null; $expectedType = null;
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
$expectedType = $this->getSourceType($journalId); $expectedType = $this->getSourceType($journalId);
// Withdrawal? Replace destination with account with same type as source. // Withdrawal? Replace destination with account with same type as source.
} }
@@ -122,7 +123,7 @@ class ConvertToTransfer implements ActionInterface
return false; return false;
} }
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
app('log')->debug('Going to transform a withdrawal to a transfer.'); app('log')->debug('Going to transform a withdrawal to a transfer.');
try { try {
@@ -135,7 +136,7 @@ class ConvertToTransfer implements ActionInterface
return false; return false;
} }
if (false !== $res) { if (false !== $res) {
event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionType::WITHDRAWAL, TransactionType::TRANSFER)); event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionTypeEnum::WITHDRAWAL->value, TransactionType::TRANSFER));
} }
return $res; return $res;

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
@@ -73,7 +74,7 @@ class ConvertToWithdrawal implements ActionInterface
} }
$type = $object->transactionType->type; $type = $object->transactionType->type;
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
app('log')->error(sprintf('Journal #%d is already a withdrawal (rule #%d).', $journal['transaction_journal_id'], $this->action->rule_id)); app('log')->error(sprintf('Journal #%d is already a withdrawal (rule #%d).', $journal['transaction_journal_id'], $this->action->rule_id));
event(new RuleActionFailedOnArray($this->action, $journal, trans('rules.is_already_withdrawal'))); event(new RuleActionFailedOnArray($this->action, $journal, trans('rules.is_already_withdrawal')));
@@ -96,7 +97,7 @@ class ConvertToWithdrawal implements ActionInterface
return false; return false;
} }
event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionType::DEPOSIT, TransactionType::WITHDRAWAL)); event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionType::DEPOSIT, TransactionTypeEnum::WITHDRAWAL->value));
return $res; return $res;
} }
@@ -112,7 +113,7 @@ class ConvertToWithdrawal implements ActionInterface
return false; return false;
} }
event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionType::TRANSFER, TransactionType::WITHDRAWAL)); event(new TriggeredAuditLog($this->action->rule, $object, 'update_transaction_type', TransactionType::TRANSFER, TransactionTypeEnum::WITHDRAWAL->value));
return $res; return $res;
} }
@@ -161,7 +162,7 @@ class ConvertToWithdrawal implements ActionInterface
; ;
// change transaction type of journal: // change transaction type of journal:
$newType = TransactionType::whereType(TransactionType::WITHDRAWAL)->first(); $newType = TransactionType::whereType(TransactionTypeEnum::WITHDRAWAL->value)->first();
\DB::table('transaction_journals') \DB::table('transaction_journals')
->where('id', '=', $journal->id) ->where('id', '=', $journal->id)
->update(['transaction_type_id' => $newType->id]) ->update(['transaction_type_id' => $newType->id])
@@ -240,7 +241,7 @@ class ConvertToWithdrawal implements ActionInterface
; ;
// change transaction type of journal: // change transaction type of journal:
$newType = TransactionType::whereType(TransactionType::WITHDRAWAL)->first(); $newType = TransactionType::whereType(TransactionTypeEnum::WITHDRAWAL->value)->first();
\DB::table('transaction_journals') \DB::table('transaction_journals')
->where('id', '=', $journal->id) ->where('id', '=', $journal->id)
->update(['transaction_type_id' => $newType->id]) ->update(['transaction_type_id' => $newType->id])

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Models\RuleAction; use FireflyIII\Models\RuleAction;
@@ -57,7 +58,7 @@ class LinkToBill implements ActionInterface
$billName = $this->action->getValue($journal); $billName = $this->action->getValue($journal);
$bill = $repository->findByName($billName); $bill = $repository->findByName($billName);
if (null !== $bill && TransactionType::WITHDRAWAL === $journal['transaction_type_type']) { if (null !== $bill && TransactionTypeEnum::WITHDRAWAL->value === $journal['transaction_type_type']) {
$count = \DB::table('transaction_journals')->where('id', '=', $journal['transaction_journal_id']) $count = \DB::table('transaction_journals')->where('id', '=', $journal['transaction_journal_id'])
->where('bill_id', $bill->id)->count() ->where('bill_id', $bill->id)->count()
; ;

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Models\RuleAction; use FireflyIII\Models\RuleAction;
@@ -65,7 +66,7 @@ class SetBudget implements ActionInterface
return false; return false;
} }
if (TransactionType::WITHDRAWAL !== $journal['transaction_type_type']) { if (TransactionTypeEnum::WITHDRAWAL->value !== $journal['transaction_type_type']) {
app('log')->debug( app('log')->debug(
sprintf( sprintf(
'RuleAction SetBudget could not set budget of journal #%d to "%s" because journal is a %s.', 'RuleAction SetBudget could not set budget of journal #%d to "%s" because journal is a %s.',

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -116,7 +117,7 @@ class SetDestinationAccount implements ActionInterface
// if this is a withdrawal, the new destination account must be a expense account and may be created: // if this is a withdrawal, the new destination account must be a expense account and may be created:
// or it is a liability, in which case it must be returned. // or it is a liability, in which case it must be returned.
if (TransactionType::WITHDRAWAL === $type) { if (TransactionTypeEnum::WITHDRAWAL->value === $type) {
$newAccount = $this->findWithdrawalDestinationAccount($accountName); $newAccount = $this->findWithdrawalDestinationAccount($accountName);
} }

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Models\RuleAction; use FireflyIII\Models\RuleAction;
@@ -64,7 +65,7 @@ class SetDestinationToCashAccount implements ActionInterface
return false; return false;
} }
$type = $object->transactionType->type; $type = $object->transactionType->type;
if (TransactionType::WITHDRAWAL !== $type) { if (TransactionTypeEnum::WITHDRAWAL->value !== $type) {
app('log')->error('Transaction must be withdrawal.'); app('log')->error('Transaction must be withdrawal.');
event(new RuleActionFailedOnArray($this->action, $journal, trans('rules.not_withdrawal'))); event(new RuleActionFailedOnArray($this->action, $journal, trans('rules.not_withdrawal')));

View File

@@ -23,6 +23,7 @@ declare(strict_types=1);
namespace FireflyIII\TransactionRules\Actions; namespace FireflyIII\TransactionRules\Actions;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray; use FireflyIII\Events\Model\Rule\RuleActionFailedOnArray;
use FireflyIII\Events\TriggeredAuditLog; use FireflyIII\Events\TriggeredAuditLog;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
@@ -70,7 +71,7 @@ class SetSourceAccount implements ActionInterface
// if this is a transfer or a withdrawal, the new source account must be an asset account or a default account, and it MUST exist: // if this is a transfer or a withdrawal, the new source account must be an asset account or a default account, and it MUST exist:
$newAccount = $this->findAssetAccount($type, $accountName); $newAccount = $this->findAssetAccount($type, $accountName);
if ((TransactionType::WITHDRAWAL === $type || TransactionType::TRANSFER === $type) && null === $newAccount) { if ((TransactionTypeEnum::WITHDRAWAL->value === $type || TransactionType::TRANSFER === $type) && null === $newAccount) {
app('log')->error( app('log')->error(
sprintf('Cant change source account of journal #%d because no asset account with name "%s" exists.', $object->id, $accountName) sprintf('Cant change source account of journal #%d because no asset account with name "%s" exists.', $object->id, $accountName)
); );

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Transformers; namespace FireflyIII\Transformers;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\Bill; use FireflyIII\Models\Bill;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
@@ -123,7 +124,7 @@ class TransactionGroupTransformer extends AbstractTransformer
$metaFieldData = $this->groupRepos->getMetaFields((int) $row['transaction_journal_id'], $this->metaFields); $metaFieldData = $this->groupRepos->getMetaFields((int) $row['transaction_journal_id'], $this->metaFields);
$metaDateData = $this->groupRepos->getMetaDateFields((int) $row['transaction_journal_id'], $this->metaDateFields); $metaDateData = $this->groupRepos->getMetaDateFields((int) $row['transaction_journal_id'], $this->metaDateFields);
$type = $this->stringFromArray($transaction, 'transaction_type_type', TransactionType::WITHDRAWAL); $type = $this->stringFromArray($transaction, 'transaction_type_type', TransactionTypeEnum::WITHDRAWAL->value);
$longitude = null; $longitude = null;
$latitude = null; $latitude = null;

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Transformers\V2; namespace FireflyIII\Transformers\V2;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
use FireflyIII\Models\Category; use FireflyIII\Models\Category;
@@ -315,7 +316,7 @@ class TransactionGroupTransformer extends AbstractTransformer
private function transformTransaction(array $transaction): array private function transformTransaction(array $transaction): array
{ {
$transaction = new NullArrayObject($transaction); $transaction = new NullArrayObject($transaction);
$type = $this->stringFromArray($transaction, 'transaction_type_type', TransactionType::WITHDRAWAL); $type = $this->stringFromArray($transaction, 'transaction_type_type', TransactionTypeEnum::WITHDRAWAL->value);
$journalId = (int) $transaction['transaction_journal_id']; $journalId = (int) $transaction['transaction_journal_id'];
$meta = new NullArrayObject($this->meta[$journalId] ?? []); $meta = new NullArrayObject($this->meta[$journalId] ?? []);

View File

@@ -25,6 +25,7 @@ declare(strict_types=1);
namespace FireflyIII\Validation; namespace FireflyIII\Validation;
use FireflyIII\Enums\AccountTypeEnum; use FireflyIII\Enums\AccountTypeEnum;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Models\UserGroup; use FireflyIII\Models\UserGroup;
@@ -140,7 +141,7 @@ class AccountValidator
break; break;
case TransactionType::WITHDRAWAL: case TransactionTypeEnum::WITHDRAWAL->value:
$result = $this->validateWithdrawalDestination($array); $result = $this->validateWithdrawalDestination($array);
break; break;
@@ -185,7 +186,7 @@ class AccountValidator
break; break;
case TransactionType::WITHDRAWAL: case TransactionTypeEnum::WITHDRAWAL->value:
$result = $this->validateWithdrawalSource($array); $result = $this->validateWithdrawalSource($array);
break; break;

View File

@@ -24,6 +24,7 @@ declare(strict_types=1);
namespace FireflyIII\Validation; namespace FireflyIII\Validation;
use FireflyIII\Enums\TransactionTypeEnum;
use FireflyIII\Exceptions\FireflyException; use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\Account; use FireflyIII\Models\Account;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
@@ -259,7 +260,7 @@ trait TransactionValidation
return; return;
} }
} }
if (TransactionType::TRANSFER === ucfirst($transactionType) || TransactionType::WITHDRAWAL === ucfirst($transactionType)) { if (TransactionType::TRANSFER === ucfirst($transactionType) || TransactionTypeEnum::WITHDRAWAL->value === ucfirst($transactionType)) {
app('log')->debug(sprintf('Processing as a "%s"', $transactionType)); app('log')->debug(sprintf('Processing as a "%s"', $transactionType));
// use case: withdrawal from asset account to a liability account. // use case: withdrawal from asset account to a liability account.
// the foreign amount must be in the currency of the destination // the foreign amount must be in the currency of the destination