mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-03 11:08:28 +00:00
Replace constants with enums.
This commit is contained in:
@@ -44,7 +44,7 @@ class AccountType extends Model
|
|||||||
#[\Deprecated]
|
#[\Deprecated]
|
||||||
public const string CASH = 'Cash account';
|
public const string CASH = 'Cash account';
|
||||||
|
|
||||||
#[\Deprecated]
|
#[\Deprecated] /** @deprecated */
|
||||||
public const string CREDITCARD = 'Credit card';
|
public const string CREDITCARD = 'Credit card';
|
||||||
|
|
||||||
#[\Deprecated]
|
#[\Deprecated]
|
||||||
|
@@ -22,9 +22,9 @@
|
|||||||
|
|
||||||
declare(strict_types=1);
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
use FireflyIII\Enums\AccountTypeEnum;
|
||||||
use FireflyIII\Enums\TransactionTypeEnum;
|
use FireflyIII\Enums\TransactionTypeEnum;
|
||||||
use FireflyIII\Models\Account;
|
use FireflyIII\Models\Account;
|
||||||
use FireflyIII\Models\AccountType;
|
|
||||||
use FireflyIII\Models\Attachment;
|
use FireflyIII\Models\Attachment;
|
||||||
use FireflyIII\Models\AvailableBudget;
|
use FireflyIII\Models\AvailableBudget;
|
||||||
use FireflyIII\Models\Bill;
|
use FireflyIII\Models\Bill;
|
||||||
@@ -226,14 +226,14 @@ return [
|
|||||||
|
|
||||||
// account types that may have or set a currency
|
// account types that may have or set a currency
|
||||||
'valid_currency_account_types' => [
|
'valid_currency_account_types' => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::CASH,
|
AccountTypeEnum::CASH->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LIABILITY_CREDIT,
|
AccountTypeEnum::LIABILITY_CREDIT->value,
|
||||||
AccountType::RECONCILIATION,
|
AccountTypeEnum::RECONCILIATION->value,
|
||||||
],
|
],
|
||||||
|
|
||||||
// "value must be in this list" values
|
// "value must be in this list" values
|
||||||
@@ -324,7 +324,7 @@ return [
|
|||||||
'application/json',
|
'application/json',
|
||||||
],
|
],
|
||||||
'accountRoles' => ['defaultAsset', 'sharedAsset', 'savingAsset', 'ccAsset', 'cashWalletAsset'],
|
'accountRoles' => ['defaultAsset', 'sharedAsset', 'savingAsset', 'ccAsset', 'cashWalletAsset'],
|
||||||
'valid_liabilities' => [AccountType::DEBT, AccountType::LOAN, AccountType::MORTGAGE],
|
'valid_liabilities' => [AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
'ccTypes' => ['monthlyFull' => 'Full payment every month'],
|
'ccTypes' => ['monthlyFull' => 'Full payment every month'],
|
||||||
'credit_card_types' => ['monthlyFull'],
|
'credit_card_types' => ['monthlyFull'],
|
||||||
|
|
||||||
@@ -351,60 +351,60 @@ return [
|
|||||||
'liability' => 'Liabilities',
|
'liability' => 'Liabilities',
|
||||||
],
|
],
|
||||||
'subIconsByIdentifier' => [
|
'subIconsByIdentifier' => [
|
||||||
'asset' => 'fa-money',
|
'asset' => 'fa-money',
|
||||||
AccountType::ASSET => 'fa-money',
|
AccountTypeEnum::ASSET->value => 'fa-money',
|
||||||
AccountType::DEFAULT => 'fa-money',
|
AccountTypeEnum::DEFAULT->value => 'fa-money',
|
||||||
AccountType::CASH => 'fa-money',
|
AccountTypeEnum::CASH->value => 'fa-money',
|
||||||
'expense' => 'fa-shopping-cart',
|
'expense' => 'fa-shopping-cart',
|
||||||
AccountType::EXPENSE => 'fa-shopping-cart',
|
AccountTypeEnum::EXPENSE->value => 'fa-shopping-cart',
|
||||||
AccountType::BENEFICIARY => 'fa-shopping-cart',
|
AccountTypeEnum::BENEFICIARY->value => 'fa-shopping-cart',
|
||||||
'revenue' => 'fa-download',
|
'revenue' => 'fa-download',
|
||||||
AccountType::REVENUE => 'fa-download',
|
AccountTypeEnum::REVENUE->value => 'fa-download',
|
||||||
'import' => 'fa-download',
|
'import' => 'fa-download',
|
||||||
AccountType::IMPORT => 'fa-download',
|
AccountTypeEnum::IMPORT->value => 'fa-download',
|
||||||
'liabilities' => 'fa-ticket',
|
'liabilities' => 'fa-ticket',
|
||||||
],
|
],
|
||||||
'accountTypesByIdentifier' => [
|
'accountTypesByIdentifier' => [
|
||||||
'asset' => [AccountType::DEFAULT, AccountType::ASSET],
|
'asset' => [AccountTypeEnum::DEFAULT->value, AccountTypeEnum::ASSET->value],
|
||||||
'expense' => [AccountType::EXPENSE, AccountType::BENEFICIARY],
|
'expense' => [AccountTypeEnum::EXPENSE->value, AccountTypeEnum::BENEFICIARY->value],
|
||||||
'revenue' => [AccountType::REVENUE],
|
'revenue' => [AccountTypeEnum::REVENUE->value],
|
||||||
'import' => [AccountType::IMPORT],
|
'import' => [AccountTypeEnum::IMPORT->value],
|
||||||
'liabilities' => [AccountType::LOAN, AccountType::DEBT, AccountType::CREDITCARD, AccountType::MORTGAGE],
|
'liabilities' => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::CREDITCARD->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
],
|
],
|
||||||
'accountTypeByIdentifier' => [
|
'accountTypeByIdentifier' => [
|
||||||
'asset' => [AccountType::ASSET],
|
'asset' => [AccountTypeEnum::ASSET->value],
|
||||||
'expense' => [AccountType::EXPENSE],
|
'expense' => [AccountTypeEnum::EXPENSE->value],
|
||||||
'revenue' => [AccountType::REVENUE],
|
'revenue' => [AccountTypeEnum::REVENUE->value],
|
||||||
'opening' => [AccountType::INITIAL_BALANCE],
|
'opening' => [AccountTypeEnum::INITIAL_BALANCE->value],
|
||||||
'initial' => [AccountType::INITIAL_BALANCE],
|
'initial' => [AccountTypeEnum::INITIAL_BALANCE->value],
|
||||||
'import' => [AccountType::IMPORT],
|
'import' => [AccountTypeEnum::IMPORT->value],
|
||||||
'reconcile' => [AccountType::RECONCILIATION],
|
'reconcile' => [AccountTypeEnum::RECONCILIATION->value],
|
||||||
'loan' => [AccountType::LOAN],
|
'loan' => [AccountTypeEnum::LOAN->value],
|
||||||
'debt' => [AccountType::DEBT],
|
'debt' => [AccountTypeEnum::DEBT->value],
|
||||||
'mortgage' => [AccountType::MORTGAGE],
|
'mortgage' => [AccountTypeEnum::MORTGAGE->value],
|
||||||
'liabilities' => [AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE, AccountType::CREDITCARD],
|
'liabilities' => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value, AccountTypeEnum::CREDITCARD->value],
|
||||||
'liability' => [AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE, AccountType::CREDITCARD],
|
'liability' => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value, AccountTypeEnum::CREDITCARD->value],
|
||||||
],
|
],
|
||||||
'shortNamesByFullName' => [
|
'shortNamesByFullName' => [
|
||||||
AccountType::DEFAULT => 'asset',
|
AccountTypeEnum::DEFAULT->value => 'asset',
|
||||||
AccountType::ASSET => 'asset',
|
AccountTypeEnum::ASSET->value => 'asset',
|
||||||
AccountType::IMPORT => 'import',
|
AccountTypeEnum::IMPORT->value => 'import',
|
||||||
AccountType::EXPENSE => 'expense',
|
AccountTypeEnum::EXPENSE->value => 'expense',
|
||||||
AccountType::BENEFICIARY => 'expense',
|
AccountTypeEnum::BENEFICIARY->value => 'expense',
|
||||||
AccountType::REVENUE => 'revenue',
|
AccountTypeEnum::REVENUE->value => 'revenue',
|
||||||
AccountType::CASH => 'cash',
|
AccountTypeEnum::CASH->value => 'cash',
|
||||||
AccountType::INITIAL_BALANCE => 'initial-balance',
|
AccountTypeEnum::INITIAL_BALANCE->value => 'initial-balance',
|
||||||
AccountType::RECONCILIATION => 'reconciliation',
|
AccountTypeEnum::RECONCILIATION->value => 'reconciliation',
|
||||||
AccountType::CREDITCARD => 'liabilities',
|
AccountTypeEnum::CREDITCARD->value => 'liabilities',
|
||||||
AccountType::LOAN => 'liabilities',
|
AccountTypeEnum::LOAN->value => 'liabilities',
|
||||||
AccountType::DEBT => 'liabilities',
|
AccountTypeEnum::DEBT->value => 'liabilities',
|
||||||
AccountType::MORTGAGE => 'liabilities',
|
AccountTypeEnum::MORTGAGE->value => 'liabilities',
|
||||||
],
|
],
|
||||||
'shortLiabilityNameByFullName' => [
|
'shortLiabilityNameByFullName' => [
|
||||||
AccountType::CREDITCARD => 'creditcard',
|
AccountTypeEnum::CREDITCARD->value => 'creditcard',
|
||||||
AccountType::LOAN => AccountType::LOAN,
|
AccountTypeEnum::LOAN->value => AccountTypeEnum::LOAN->value,
|
||||||
AccountType::DEBT => AccountType::DEBT,
|
AccountTypeEnum::DEBT->value => AccountTypeEnum::DEBT->value,
|
||||||
AccountType::MORTGAGE => AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value => AccountTypeEnum::MORTGAGE->value,
|
||||||
],
|
],
|
||||||
'transactionTypesByType' => [
|
'transactionTypesByType' => [
|
||||||
'expenses' => ['Withdrawal'],
|
'expenses' => ['Withdrawal'],
|
||||||
@@ -430,7 +430,7 @@ return [
|
|||||||
'transfers' => 'fa-exchange',
|
'transfers' => 'fa-exchange',
|
||||||
],
|
],
|
||||||
|
|
||||||
'bindables' => [
|
'bindables' => [
|
||||||
// models
|
// models
|
||||||
'account' => Account::class,
|
'account' => Account::class,
|
||||||
'attachment' => Attachment::class,
|
'attachment' => Attachment::class,
|
||||||
@@ -488,7 +488,7 @@ return [
|
|||||||
'userGroupBill' => UserGroupBill::class,
|
'userGroupBill' => UserGroupBill::class,
|
||||||
'userGroup' => UserGroup::class,
|
'userGroup' => UserGroup::class,
|
||||||
],
|
],
|
||||||
'rule-actions' => [
|
'rule-actions' => [
|
||||||
'set_category' => SetCategory::class,
|
'set_category' => SetCategory::class,
|
||||||
'clear_category' => ClearCategory::class,
|
'clear_category' => ClearCategory::class,
|
||||||
'set_budget' => SetBudget::class,
|
'set_budget' => SetBudget::class,
|
||||||
@@ -522,7 +522,7 @@ return [
|
|||||||
// 'set_foreign_amount' => SetForeignAmount::class,
|
// 'set_foreign_amount' => SetForeignAmount::class,
|
||||||
// 'set_foreign_currency' => SetForeignCurrency::class,
|
// 'set_foreign_currency' => SetForeignCurrency::class,
|
||||||
],
|
],
|
||||||
'context-rule-actions' => [
|
'context-rule-actions' => [
|
||||||
'set_category',
|
'set_category',
|
||||||
'set_budget',
|
'set_budget',
|
||||||
'add_tag',
|
'add_tag',
|
||||||
@@ -541,321 +541,321 @@ return [
|
|||||||
'convert_transfer',
|
'convert_transfer',
|
||||||
],
|
],
|
||||||
|
|
||||||
'test-triggers' => [
|
'test-triggers' => [
|
||||||
'limit' => 10,
|
'limit' => 10,
|
||||||
'range' => 200,
|
'range' => 200,
|
||||||
],
|
],
|
||||||
|
|
||||||
// expected source types for each transaction type, in order of preference.
|
// expected source types for each transaction type, in order of preference.
|
||||||
'expected_source_types' => [
|
'expected_source_types' => [
|
||||||
'source' => [
|
'source' => [
|
||||||
TransactionTypeModel::WITHDRAWAL => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
TransactionTypeEnum::WITHDRAWAL->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
TransactionTypeEnum::DEPOSIT->value => [AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE, AccountType::REVENUE, AccountType::CASH],
|
TransactionTypeEnum::DEPOSIT->value => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value, AccountTypeEnum::REVENUE->value, AccountTypeEnum::CASH->value],
|
||||||
TransactionTypeModel::TRANSFER => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
TransactionTypeEnum::TRANSFER->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
TransactionTypeModel::OPENING_BALANCE => [
|
TransactionTypeEnum::OPENING_BALANCE->value => [
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
],
|
],
|
||||||
TransactionTypeModel::RECONCILIATION => [AccountType::RECONCILIATION, AccountType::ASSET],
|
TransactionTypeEnum::RECONCILIATION->value => [AccountTypeEnum::RECONCILIATION->value, AccountTypeEnum::ASSET->value],
|
||||||
TransactionTypeModel::LIABILITY_CREDIT => [AccountType::LIABILITY_CREDIT, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
TransactionTypeEnum::LIABILITY_CREDIT->value => [AccountTypeEnum::LIABILITY_CREDIT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
// in case no transaction type is known yet, it could be anything.
|
// in case no transaction type is known yet, it could be anything.
|
||||||
'none' => [
|
'none' => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::EXPENSE,
|
AccountTypeEnum::EXPENSE->value,
|
||||||
AccountType::REVENUE,
|
AccountTypeEnum::REVENUE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
'destination' => [
|
'destination' => [
|
||||||
TransactionTypeModel::WITHDRAWAL => [
|
TransactionTypeEnum::WITHDRAWAL->value => [
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::EXPENSE,
|
AccountTypeEnum::EXPENSE->value,
|
||||||
AccountType::CASH,
|
AccountTypeEnum::CASH->value,
|
||||||
],
|
],
|
||||||
TransactionTypeEnum::DEPOSIT->value => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
TransactionTypeEnum::DEPOSIT->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
TransactionTypeModel::TRANSFER => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
TransactionTypeEnum::TRANSFER->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
TransactionTypeModel::OPENING_BALANCE => [
|
TransactionTypeEnum::OPENING_BALANCE->value => [
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
],
|
],
|
||||||
TransactionTypeModel::RECONCILIATION => [AccountType::RECONCILIATION, AccountType::ASSET],
|
TransactionTypeEnum::RECONCILIATION->value => [AccountTypeEnum::RECONCILIATION->value, AccountTypeEnum::ASSET->value],
|
||||||
TransactionTypeModel::LIABILITY_CREDIT => [AccountType::LIABILITY_CREDIT, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
TransactionTypeEnum::LIABILITY_CREDIT->value => [AccountTypeEnum::LIABILITY_CREDIT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
'allowed_opposing_types' => [
|
'allowed_opposing_types' => [
|
||||||
'source' => [
|
'source' => [
|
||||||
AccountType::ASSET => [
|
AccountTypeEnum::ASSET->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::CASH,
|
AccountTypeEnum::CASH->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::EXPENSE,
|
AccountTypeEnum::EXPENSE->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::RECONCILIATION,
|
AccountTypeEnum::RECONCILIATION->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
],
|
],
|
||||||
AccountType::CASH => [AccountType::ASSET],
|
AccountTypeEnum::CASH->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::DEBT => [
|
AccountTypeEnum::DEBT->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::EXPENSE,
|
AccountTypeEnum::EXPENSE->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::LIABILITY_CREDIT,
|
AccountTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
AccountType::EXPENSE => [], // is not allowed as a source.
|
AccountTypeEnum::EXPENSE->value => [], // is not allowed as a source.
|
||||||
AccountType::INITIAL_BALANCE => [AccountType::ASSET, AccountType::DEBT, AccountType::LOAN, AccountType::MORTGAGE],
|
AccountTypeEnum::INITIAL_BALANCE->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::LOAN => [
|
AccountTypeEnum::LOAN->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::EXPENSE,
|
AccountTypeEnum::EXPENSE->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::LIABILITY_CREDIT,
|
AccountTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
AccountType::MORTGAGE => [
|
AccountTypeEnum::MORTGAGE->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::EXPENSE,
|
AccountTypeEnum::EXPENSE->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::LIABILITY_CREDIT,
|
AccountTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
AccountType::RECONCILIATION => [AccountType::ASSET],
|
AccountTypeEnum::RECONCILIATION->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::REVENUE => [AccountType::ASSET, AccountType::DEBT, AccountType::LOAN, AccountType::MORTGAGE],
|
AccountTypeEnum::REVENUE->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::LIABILITY_CREDIT => [AccountType::DEBT, AccountType::LOAN, AccountType::MORTGAGE],
|
AccountTypeEnum::LIABILITY_CREDIT->value => [AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
],
|
],
|
||||||
'destination' => [
|
'destination' => [
|
||||||
AccountType::ASSET => [
|
AccountTypeEnum::ASSET->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::CASH,
|
AccountTypeEnum::CASH->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::RECONCILIATION,
|
AccountTypeEnum::RECONCILIATION->value,
|
||||||
AccountType::REVENUE,
|
AccountTypeEnum::REVENUE->value,
|
||||||
],
|
],
|
||||||
AccountType::CASH => [AccountType::ASSET],
|
AccountTypeEnum::CASH->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::DEBT => [
|
AccountTypeEnum::DEBT->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::REVENUE,
|
AccountTypeEnum::REVENUE->value,
|
||||||
],
|
],
|
||||||
AccountType::EXPENSE => [AccountType::ASSET, AccountType::DEBT, AccountType::LOAN, AccountType::MORTGAGE],
|
AccountTypeEnum::EXPENSE->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::INITIAL_BALANCE => [AccountType::ASSET, AccountType::DEBT, AccountType::LOAN, AccountType::MORTGAGE],
|
AccountTypeEnum::INITIAL_BALANCE->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::LOAN => [
|
AccountTypeEnum::LOAN->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::REVENUE,
|
AccountTypeEnum::REVENUE->value,
|
||||||
],
|
],
|
||||||
AccountType::MORTGAGE => [
|
AccountTypeEnum::MORTGAGE->value => [
|
||||||
AccountType::ASSET,
|
AccountTypeEnum::ASSET->value,
|
||||||
AccountType::DEBT,
|
AccountTypeEnum::DEBT->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::LOAN,
|
AccountTypeEnum::LOAN->value,
|
||||||
AccountType::MORTGAGE,
|
AccountTypeEnum::MORTGAGE->value,
|
||||||
AccountType::REVENUE,
|
AccountTypeEnum::REVENUE->value,
|
||||||
],
|
],
|
||||||
AccountType::RECONCILIATION => [AccountType::ASSET],
|
AccountTypeEnum::RECONCILIATION->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::REVENUE => [], // is not allowed as a destination
|
AccountTypeEnum::REVENUE->value => [], // is not allowed as a destination
|
||||||
AccountType::LIABILITY_CREDIT => [], // is not allowed as a destination
|
AccountTypeEnum::LIABILITY_CREDIT->value => [], // is not allowed as a destination
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
// depending on the account type, return the allowed transaction types:
|
// depending on the account type, return the allowed transaction types:
|
||||||
'allowed_transaction_types' => [
|
'allowed_transaction_types' => [
|
||||||
'source' => [
|
'source' => [
|
||||||
AccountType::ASSET => [
|
AccountTypeEnum::ASSET->value => [
|
||||||
TransactionTypeModel::WITHDRAWAL,
|
TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
TransactionTypeModel::RECONCILIATION,
|
TransactionTypeEnum::RECONCILIATION->value,
|
||||||
],
|
],
|
||||||
AccountType::EXPENSE => [], // is not allowed as a source.
|
AccountTypeEnum::EXPENSE->value => [], // is not allowed as a source.
|
||||||
AccountType::REVENUE => [TransactionTypeEnum::DEPOSIT->value],
|
AccountTypeEnum::REVENUE->value => [TransactionTypeEnum::DEPOSIT->value],
|
||||||
AccountType::LOAN => [
|
AccountTypeEnum::LOAN->value => [
|
||||||
TransactionTypeModel::WITHDRAWAL,
|
TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
TransactionTypeEnum::DEPOSIT->value,
|
TransactionTypeEnum::DEPOSIT->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
TransactionTypeModel::LIABILITY_CREDIT,
|
TransactionTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
AccountType::DEBT => [
|
AccountTypeEnum::DEBT->value => [
|
||||||
TransactionTypeModel::WITHDRAWAL,
|
TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
TransactionTypeEnum::DEPOSIT->value,
|
TransactionTypeEnum::DEPOSIT->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
TransactionTypeModel::LIABILITY_CREDIT,
|
TransactionTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
AccountType::MORTGAGE => [
|
AccountTypeEnum::MORTGAGE->value => [
|
||||||
TransactionTypeModel::WITHDRAWAL,
|
TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
TransactionTypeEnum::DEPOSIT->value,
|
TransactionTypeEnum::DEPOSIT->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
TransactionTypeModel::LIABILITY_CREDIT,
|
TransactionTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
AccountType::INITIAL_BALANCE => [TransactionTypeModel::OPENING_BALANCE],
|
AccountTypeEnum::INITIAL_BALANCE->value => [TransactionTypeEnum::OPENING_BALANCE->value],
|
||||||
AccountType::RECONCILIATION => [TransactionTypeModel::RECONCILIATION],
|
AccountTypeEnum::RECONCILIATION->value => [TransactionTypeEnum::RECONCILIATION->value],
|
||||||
AccountType::LIABILITY_CREDIT => [TransactionTypeModel::LIABILITY_CREDIT],
|
AccountTypeEnum::LIABILITY_CREDIT->value => [TransactionTypeEnum::LIABILITY_CREDIT->value],
|
||||||
],
|
],
|
||||||
'destination' => [
|
'destination' => [
|
||||||
AccountType::ASSET => [
|
AccountTypeEnum::ASSET->value => [
|
||||||
TransactionTypeEnum::DEPOSIT->value,
|
TransactionTypeEnum::DEPOSIT->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
TransactionTypeModel::RECONCILIATION,
|
TransactionTypeEnum::RECONCILIATION->value,
|
||||||
],
|
],
|
||||||
AccountType::EXPENSE => [TransactionTypeModel::WITHDRAWAL],
|
AccountTypeEnum::EXPENSE->value => [TransactionTypeEnum::WITHDRAWAL->value],
|
||||||
AccountType::REVENUE => [], // is not allowed as destination.
|
AccountTypeEnum::REVENUE->value => [], // is not allowed as destination.
|
||||||
AccountType::LOAN => [
|
AccountTypeEnum::LOAN->value => [
|
||||||
TransactionTypeModel::WITHDRAWAL,
|
TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
TransactionTypeEnum::DEPOSIT->value,
|
TransactionTypeEnum::DEPOSIT->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
],
|
],
|
||||||
AccountType::DEBT => [
|
AccountTypeEnum::DEBT->value => [
|
||||||
TransactionTypeModel::WITHDRAWAL,
|
TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
TransactionTypeEnum::DEPOSIT->value,
|
TransactionTypeEnum::DEPOSIT->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
],
|
],
|
||||||
AccountType::MORTGAGE => [
|
AccountTypeEnum::MORTGAGE->value => [
|
||||||
TransactionTypeModel::WITHDRAWAL,
|
TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
TransactionTypeEnum::DEPOSIT->value,
|
TransactionTypeEnum::DEPOSIT->value,
|
||||||
TransactionTypeModel::TRANSFER,
|
TransactionTypeEnum::TRANSFER->value,
|
||||||
TransactionTypeModel::OPENING_BALANCE,
|
TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
],
|
],
|
||||||
AccountType::INITIAL_BALANCE => [TransactionTypeModel::OPENING_BALANCE],
|
AccountTypeEnum::INITIAL_BALANCE->value => [TransactionTypeEnum::OPENING_BALANCE->value],
|
||||||
AccountType::RECONCILIATION => [TransactionTypeModel::RECONCILIATION],
|
AccountTypeEnum::RECONCILIATION->value => [TransactionTypeEnum::RECONCILIATION->value],
|
||||||
AccountType::LIABILITY_CREDIT => [], // is not allowed as a destination
|
AccountTypeEnum::LIABILITY_CREDIT->value => [], // is not allowed as a destination
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
|
||||||
// having the source + dest will tell you the transaction type.
|
// having the source + dest will tell you the transaction type.
|
||||||
'account_to_transaction' => [
|
'account_to_transaction' => [
|
||||||
AccountType::ASSET => [
|
AccountTypeEnum::ASSET->value => [
|
||||||
AccountType::ASSET => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
AccountType::CASH => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::CASH->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::DEBT => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::EXPENSE => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::EXPENSE->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::INITIAL_BALANCE => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
AccountType::LOAN => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::RECONCILIATION => TransactionTypeModel::RECONCILIATION,
|
AccountTypeEnum::RECONCILIATION->value => TransactionTypeEnum::RECONCILIATION->value,
|
||||||
],
|
],
|
||||||
AccountType::CASH => [
|
AccountTypeEnum::CASH->value => [
|
||||||
AccountType::ASSET => TransactionTypeModel::DEPOSIT,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::LOAN => TransactionTypeModel::DEPOSIT,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::DEBT => TransactionTypeModel::DEPOSIT,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeModel::DEPOSIT,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
],
|
],
|
||||||
AccountType::DEBT => [
|
AccountTypeEnum::DEBT->value => [
|
||||||
AccountType::ASSET => TransactionTypeEnum::DEPOSIT->value,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::DEBT => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
AccountType::EXPENSE => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::EXPENSE->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::INITIAL_BALANCE => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
AccountType::LOAN => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
],
|
],
|
||||||
AccountType::INITIAL_BALANCE => [
|
AccountTypeEnum::INITIAL_BALANCE->value => [
|
||||||
AccountType::ASSET => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
AccountType::DEBT => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
AccountType::LOAN => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
],
|
],
|
||||||
AccountType::LOAN => [
|
AccountTypeEnum::LOAN->value => [
|
||||||
AccountType::ASSET => TransactionTypeEnum::DEPOSIT->value,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::DEBT => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
AccountType::EXPENSE => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::EXPENSE->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::INITIAL_BALANCE => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
AccountType::LOAN => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
],
|
],
|
||||||
AccountType::MORTGAGE => [
|
AccountTypeEnum::MORTGAGE->value => [
|
||||||
AccountType::ASSET => TransactionTypeEnum::DEPOSIT->value,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::DEBT => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
AccountType::EXPENSE => TransactionTypeModel::WITHDRAWAL,
|
AccountTypeEnum::EXPENSE->value => TransactionTypeEnum::WITHDRAWAL->value,
|
||||||
AccountType::INITIAL_BALANCE => TransactionTypeModel::OPENING_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value => TransactionTypeEnum::OPENING_BALANCE->value,
|
||||||
AccountType::LOAN => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeModel::TRANSFER,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::TRANSFER->value,
|
||||||
],
|
],
|
||||||
AccountType::RECONCILIATION => [
|
AccountTypeEnum::RECONCILIATION->value => [
|
||||||
AccountType::ASSET => TransactionTypeModel::RECONCILIATION,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::RECONCILIATION->value,
|
||||||
],
|
],
|
||||||
AccountType::REVENUE => [
|
AccountTypeEnum::REVENUE->value => [
|
||||||
AccountType::ASSET => TransactionTypeEnum::DEPOSIT->value,
|
AccountTypeEnum::ASSET->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::DEBT => TransactionTypeEnum::DEPOSIT->value,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::LOAN => TransactionTypeEnum::DEPOSIT->value,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeEnum::DEPOSIT->value,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::DEPOSIT->value,
|
||||||
],
|
],
|
||||||
AccountType::LIABILITY_CREDIT => [
|
AccountTypeEnum::LIABILITY_CREDIT->value => [
|
||||||
AccountType::DEBT => TransactionTypeModel::LIABILITY_CREDIT,
|
AccountTypeEnum::DEBT->value => TransactionTypeEnum::LIABILITY_CREDIT->value,
|
||||||
AccountType::LOAN => TransactionTypeModel::LIABILITY_CREDIT,
|
AccountTypeEnum::LOAN->value => TransactionTypeEnum::LIABILITY_CREDIT->value,
|
||||||
AccountType::MORTGAGE => TransactionTypeModel::LIABILITY_CREDIT,
|
AccountTypeEnum::MORTGAGE->value => TransactionTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
// AccountType::EXPENSE unlisted because it cant be a source
|
// AccountTypeEnum::EXPENSE->value unlisted because it cant be a source
|
||||||
],
|
],
|
||||||
|
|
||||||
// allowed source -> destination accounts.
|
// allowed source -> destination accounts.
|
||||||
'source_dests' => [
|
'source_dests' => [
|
||||||
TransactionTypeModel::WITHDRAWAL => [
|
TransactionTypeEnum::WITHDRAWAL->value => [
|
||||||
AccountType::ASSET => [AccountType::EXPENSE, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE, AccountType::CASH],
|
AccountTypeEnum::ASSET->value => [AccountTypeEnum::EXPENSE->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value, AccountTypeEnum::CASH->value],
|
||||||
AccountType::LOAN => [AccountType::EXPENSE, AccountType::CASH],
|
AccountTypeEnum::LOAN->value => [AccountTypeEnum::EXPENSE->value, AccountTypeEnum::CASH->value],
|
||||||
AccountType::DEBT => [AccountType::EXPENSE, AccountType::CASH],
|
AccountTypeEnum::DEBT->value => [AccountTypeEnum::EXPENSE->value, AccountTypeEnum::CASH->value],
|
||||||
AccountType::MORTGAGE => [AccountType::EXPENSE, AccountType::CASH],
|
AccountTypeEnum::MORTGAGE->value => [AccountTypeEnum::EXPENSE->value, AccountTypeEnum::CASH->value],
|
||||||
],
|
],
|
||||||
TransactionTypeEnum::DEPOSIT->value => [
|
TransactionTypeEnum::DEPOSIT->value => [
|
||||||
AccountType::REVENUE => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
AccountTypeEnum::REVENUE->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::CASH => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
AccountTypeEnum::CASH->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::LOAN => [AccountType::ASSET],
|
AccountTypeEnum::LOAN->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::DEBT => [AccountType::ASSET],
|
AccountTypeEnum::DEBT->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::MORTGAGE => [AccountType::ASSET],
|
AccountTypeEnum::MORTGAGE->value => [AccountTypeEnum::ASSET->value],
|
||||||
],
|
],
|
||||||
TransactionTypeModel::TRANSFER => [
|
TransactionTypeEnum::TRANSFER->value => [
|
||||||
AccountType::ASSET => [AccountType::ASSET],
|
AccountTypeEnum::ASSET->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::LOAN => [AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
AccountTypeEnum::LOAN->value => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::DEBT => [AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
AccountTypeEnum::DEBT->value => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
AccountType::MORTGAGE => [AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
AccountTypeEnum::MORTGAGE->value => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
],
|
],
|
||||||
TransactionTypeModel::OPENING_BALANCE => [
|
TransactionTypeEnum::OPENING_BALANCE->value => [
|
||||||
AccountType::ASSET => [AccountType::INITIAL_BALANCE],
|
AccountTypeEnum::ASSET->value => [AccountTypeEnum::INITIAL_BALANCE->value],
|
||||||
AccountType::LOAN => [AccountType::INITIAL_BALANCE],
|
AccountTypeEnum::LOAN->value => [AccountTypeEnum::INITIAL_BALANCE->value],
|
||||||
AccountType::DEBT => [AccountType::INITIAL_BALANCE],
|
AccountTypeEnum::DEBT->value => [AccountTypeEnum::INITIAL_BALANCE->value],
|
||||||
AccountType::MORTGAGE => [AccountType::INITIAL_BALANCE],
|
AccountTypeEnum::MORTGAGE->value => [AccountTypeEnum::INITIAL_BALANCE->value],
|
||||||
AccountType::INITIAL_BALANCE => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
AccountTypeEnum::INITIAL_BALANCE->value => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
],
|
],
|
||||||
TransactionTypeModel::RECONCILIATION => [
|
TransactionTypeEnum::RECONCILIATION->value => [
|
||||||
AccountType::RECONCILIATION => [AccountType::ASSET],
|
AccountTypeEnum::RECONCILIATION->value => [AccountTypeEnum::ASSET->value],
|
||||||
AccountType::ASSET => [AccountType::RECONCILIATION],
|
AccountTypeEnum::ASSET->value => [AccountTypeEnum::RECONCILIATION->value],
|
||||||
],
|
],
|
||||||
TransactionTypeModel::LIABILITY_CREDIT => [
|
TransactionTypeEnum::LIABILITY_CREDIT->value => [
|
||||||
AccountType::LOAN => [AccountType::LIABILITY_CREDIT],
|
AccountTypeEnum::LOAN->value => [AccountTypeEnum::LIABILITY_CREDIT->value],
|
||||||
AccountType::DEBT => [AccountType::LIABILITY_CREDIT],
|
AccountTypeEnum::DEBT->value => [AccountTypeEnum::LIABILITY_CREDIT->value],
|
||||||
AccountType::MORTGAGE => [AccountType::LIABILITY_CREDIT],
|
AccountTypeEnum::MORTGAGE->value => [AccountTypeEnum::LIABILITY_CREDIT->value],
|
||||||
AccountType::LIABILITY_CREDIT => [AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
AccountTypeEnum::LIABILITY_CREDIT->value => [AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
// if you add fields to this array, don't forget to update the export routine (ExportDataGenerator).
|
// if you add fields to this array, don't forget to update the export routine (ExportDataGenerator).
|
||||||
'journal_meta_fields' => [
|
'journal_meta_fields' => [
|
||||||
// sepa
|
// sepa
|
||||||
'sepa_cc',
|
'sepa_cc',
|
||||||
'sepa_ct_op',
|
'sepa_ct_op',
|
||||||
@@ -889,28 +889,28 @@ return [
|
|||||||
'recurrence_count',
|
'recurrence_count',
|
||||||
'recurrence_date',
|
'recurrence_date',
|
||||||
],
|
],
|
||||||
'webhooks' => [
|
'webhooks' => [
|
||||||
'max_attempts' => env('WEBHOOK_MAX_ATTEMPTS', 3),
|
'max_attempts' => env('WEBHOOK_MAX_ATTEMPTS', 3),
|
||||||
],
|
],
|
||||||
'can_have_virtual_amounts' => [AccountType::ASSET],
|
'can_have_virtual_amounts' => [AccountTypeEnum::ASSET->value],
|
||||||
'can_have_opening_balance' => [AccountType::ASSET, AccountType::LOAN, AccountType::DEBT, AccountType::MORTGAGE],
|
'can_have_opening_balance' => [AccountTypeEnum::ASSET->value, AccountTypeEnum::LOAN->value, AccountTypeEnum::DEBT->value, AccountTypeEnum::MORTGAGE->value],
|
||||||
'dynamic_creation_allowed' => [
|
'dynamic_creation_allowed' => [
|
||||||
AccountType::EXPENSE,
|
AccountTypeEnum::EXPENSE->value,
|
||||||
AccountType::REVENUE,
|
AccountTypeEnum::REVENUE->value,
|
||||||
AccountType::INITIAL_BALANCE,
|
AccountTypeEnum::INITIAL_BALANCE->value,
|
||||||
AccountType::RECONCILIATION,
|
AccountTypeEnum::RECONCILIATION->value,
|
||||||
AccountType::LIABILITY_CREDIT,
|
AccountTypeEnum::LIABILITY_CREDIT->value,
|
||||||
],
|
],
|
||||||
'valid_asset_fields' => ['account_role', 'account_number', 'currency_id', 'BIC', 'include_net_worth'],
|
'valid_asset_fields' => ['account_role', 'account_number', 'currency_id', 'BIC', 'include_net_worth'],
|
||||||
'valid_cc_fields' => ['account_role', 'cc_monthly_payment_date', 'cc_type', 'account_number', 'currency_id', 'BIC', 'include_net_worth'],
|
'valid_cc_fields' => ['account_role', 'cc_monthly_payment_date', 'cc_type', 'account_number', 'currency_id', 'BIC', 'include_net_worth'],
|
||||||
'valid_account_fields' => ['account_number', 'currency_id', 'BIC', 'interest', 'interest_period', 'include_net_worth', 'liability_direction'],
|
'valid_account_fields' => ['account_number', 'currency_id', 'BIC', 'interest', 'interest_period', 'include_net_worth', 'liability_direction'],
|
||||||
|
|
||||||
// dynamic date ranges are as follows:
|
// dynamic date ranges are as follows:
|
||||||
'dynamic_date_ranges' => ['last7', 'last30', 'last90', 'last365', 'MTD', 'QTD', 'YTD'],
|
'dynamic_date_ranges' => ['last7', 'last30', 'last90', 'last365', 'MTD', 'QTD', 'YTD'],
|
||||||
|
|
||||||
// only used in v1
|
// only used in v1
|
||||||
'allowed_sort_parameters' => ['order', 'name', 'iban'],
|
'allowed_sort_parameters' => ['order', 'name', 'iban'],
|
||||||
|
|
||||||
// preselected account lists possibilities:
|
// preselected account lists possibilities:
|
||||||
'preselected_accounts' => ['all', 'assets', 'liabilities'],
|
'preselected_accounts' => ['all', 'assets', 'liabilities'],
|
||||||
];
|
];
|
||||||
|
Reference in New Issue
Block a user