Code for 4.8.0

This commit is contained in:
James Cole 2019-03-05 17:26:49 +01:00
parent 6e12f434ad
commit e4fb223f77
45 changed files with 1416 additions and 206 deletions

View File

@ -0,0 +1,267 @@
<?php
namespace FireflyIII\Console\Commands;
use DB;
use FireflyIII\Factory\TransactionJournalFactory;
use FireflyIII\Models\Category;
use FireflyIII\Models\Transaction;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use Illuminate\Console\Command;
use Illuminate\Support\Collection;
use Log;
/**
* Class MigrateToGroups
*/
class MigrateToGroups extends Command
{
/**
* The console command description.
*
* @var string
*/
protected $description = 'Migrates a pre-4.7.8 transaction structure to the 4.7.8+ transaction structure.';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'firefly:migrate-to-groups';
/** @var TransactionJournalFactory */
private $journalFactory;
/** @var JournalRepositoryInterface */
private $journalRepository;
/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
$this->journalFactory = app(TransactionJournalFactory::class);
$this->journalRepository = app(JournalRepositoryInterface::class);
}
/**
* Execute the console command.
*
* @return mixed
*/
public function handle()
{
if ($this->isMigrated()) {
$this->info('Database already seems to be migrated.');
}
Log::debug('---- start group migration ----');
$this->makeGroups();
Log::debug('---- end group migration ----');
return 0;
}
/**
* @return bool
*/
private function isMigrated(): bool
{
$configName = 'migrated_to_groups_478';
$configVar = app('fireflyconfig')->get($configName, false);
if (null !== $configVar) {
return (bool)$configVar->data;
}
return false;
}
/**
* @param TransactionJournal $journal
*
* @throws \FireflyIII\Exceptions\FireflyException
*/
private function makeGroup(TransactionJournal $journal): void
{
// double check transaction count.
if ($journal->transactions->count() <= 2) {
return;
}
$this->journalRepository->setUser($journal->user);
$this->journalFactory->setUser($journal->user);
$data = [
// mandatory fields.
'type' => strtolower($journal->transactionType->type),
'date' => $journal->date,
'user' => $journal->user_id,
// currency fields:
'currency' => null,
'currency_id' => null,
'currency_code' => null,
// all custom fields:
'internal_reference' => $this->journalRepository->getMetaField($journal, 'internal-reference'),
'sepa-cc' => $this->journalRepository->getMetaField($journal, 'sepa-cc'),
'sepa-ct-op' => $this->journalRepository->getMetaField($journal, 'sepa-ct-op'),
'sepa-ct-id' => $this->journalRepository->getMetaField($journal, 'sepa-ct-id'),
'sepa-db' => $this->journalRepository->getMetaField($journal, 'sepa-db'),
'sepa-country' => $this->journalRepository->getMetaField($journal, 'sepa-country'),
'sepa-ep' => $this->journalRepository->getMetaField($journal, 'sepa-ep'),
'sepa-ci' => $this->journalRepository->getMetaField($journal, 'sepa-ci'),
'sepa-batch-id' => $this->journalRepository->getMetaField($journal, 'sepa-batch-id'),
'interest_date' => $this->journalRepository->getMetaDateString($journal, 'interest_date'),
'book_date' => $this->journalRepository->getMetaDateString($journal, 'book_date'),
'process_date' => $this->journalRepository->getMetaDateString($journal, 'process_date'),
'due_date' => $this->journalRepository->getMetaDateString($journal, 'due_date'),
'payment_date' => $this->journalRepository->getMetaDateString($journal, 'payment_date'),
'invoice_date' => $this->journalRepository->getMetaDateString($journal, 'invoice_date'),
'external_id' => $this->journalRepository->getMetaField($journal, 'external-id'),
'original-source' => $this->journalRepository->getMetaField($journal, 'original-source'),
// journal data:
'description' => $journal->description,
'piggy_bank_id' => null,
'piggy_bank_name' => null,
'bill_id' => $journal->bill_id,
'bill_name' => null,
'tags' => null,
'notes' => null,
'transactions' => [],
];
// simply use the positive transactions as a base to create new transaction journals.
$transactions = $journal->transactions()->where('amount', '>', 0)->get();
/** @var Transaction $transaction */
foreach ($transactions as $transaction) {
$budgetId = 0;
$categoryId = 0;
if (null !== $transaction->budgets()->first()) {
$budgetId = $transaction->budgets()->first()->id;
}
if (null !== $transaction->categories()->first()) {
$categoryId = $transaction->categories()->first()->id;
}
// opposing for source:
/** @var Transaction $opposing */
$opposing = $journal->transactions()->where('amount', $transaction->amount * -1)
->where('identifier', $transaction->identifier)->first();
if (null === $opposing) {
$this->error(sprintf('Could not convert journal #%d', $journal->id));
return;
}
$tArray = [
'notes' => $this->journalRepository->getNoteText($journal),
'tags' => $journal->tags->pluck('tag')->toArray(),
'currency' => null,
'currency_id' => $transaction->transaction_currency_id,
'currency_code' => null,
'description' => $transaction->description,
'amount' => $transaction->amount,
'budget' => null,
'budget_id' => $budgetId,
'budget_name' => null,
'category' => null,
'category_id' => $categoryId,
'category_name' => null,
'source' => null,
'source_id' => $opposing->account_id,
'source_name' => null,
'destination' => null,
'destination_id' => $transaction->account_id,
'destination_name' => null,
'foreign_currency' => null,
'foreign_currency_id' => $transaction->foreign_currency_id,
'foreign_currency_code' => null,
'foreign_amount' => $transaction->foreign_amount,
'reconciled' => false,
];
$data['transactions'][] = $tArray;
}
$this->journalFactory->create($data);
// create a new transaction journal based on this particular transaction using the factory.
// delete the old transaction journal.
//$journal->delete();
}
/**
*
*/
private function makeGroups(): void
{
// grab all split transactions:
$all = Transaction::groupBy('transaction_journal_id')
->get(['transaction_journal_id', DB::raw('COUNT(transaction_journal_id) as result')]);
/** @var Collection $filtered */
$filtered = $all->filter(
function (Transaction $transaction) {
return $transaction->result > 2;
}
);
$journalIds = array_unique($filtered->pluck('transaction_journal_id')->toArray());
$splitJournals = TransactionJournal::whereIn('id', $journalIds)->get();
$this->info(sprintf('Going to un-split %d transactions. This could take some time.', $splitJournals->count()));
/** @var TransactionJournal $journal */
foreach ($splitJournals as $journal) {
$group = $this->makeGroup($journal);
}
return;
// first run, create new transaction journals and groups for splits
/** @var TransactionJournal $journal */
foreach ($journals as $journal) {
Log::debug(sprintf('Now going to migrate journal #%d', $journal->id));
//$this->migrateCategory($journal);
//$this->migrateBudget($journal);
}
}
/**
* Migrate the category. This is basically a back-and-forth between the journal
* and underlying categories.
*
* @param TransactionJournal $journal
*/
private function migrateCategory(TransactionJournal $journal): void
{
/** @var Category $category */
$category = $journal->categories()->first();
$transactions = $journal->transactions;
$tCategory = null;
Log::debug(sprintf('Journal #%d has %d transactions', $journal->id, $transactions->count()));
/** @var Transaction $transaction */
foreach ($transactions as $transaction) {
$tCategory = $tCategory ?? $transaction->categories()->first();
// category and tCategory are null.
if (null === $category && null === $tCategory) {
Log::debug(sprintf('Transaction #%d and journal #%d both have no category set. Continue.', $transaction->id, $journal->id));
continue;
}
// category is null, tCategory is not.
if (null === $category && null !== $tCategory) {
Log::debug(sprintf('Transaction #%d has a category but journal #%d does not. Will update journal.', $transaction->id, $journal->id));
$journal->categories()->save($tCategory);
$category = $tCategory;
continue;
}
// tCategory is null, category is not.
// tCategory and category are equal
// tCategory and category are not equal
}
}
}

View File

@ -59,22 +59,9 @@ class TransactionFactory
* @param array $data
*
* @return Transaction
* @throws FireflyException
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
*/
public function create(array $data): ?Transaction
{
Log::debug('Start of TransactionFactory::create()');
$currencyId = $data['currency_id'] ?? null;
$currencyId = isset($data['currency']) ? $data['currency']->id : $currencyId;
if ('' === $data['amount']) {
Log::error('Empty string in data.', $data);
throw new FireflyException('Amount is an empty string, which Firefly III cannot handle. Apologies.');
}
if (null === $currencyId) {
$currency = app('amount')->getDefaultCurrencyByUser($data['account']->user);
$currencyId = $currency->id;
}
$data['foreign_amount'] = '' === (string)$data['foreign_amount'] ? null : $data['foreign_amount'];
Log::debug(sprintf('Create transaction for account #%d ("%s") with amount %s', $data['account']->id, $data['account']->name, $data['amount']));
@ -84,11 +71,11 @@ class TransactionFactory
'account_id' => $data['account']->id,
'transaction_journal_id' => $data['transaction_journal']->id,
'description' => $data['description'],
'transaction_currency_id' => $currencyId,
'transaction_currency_id' => $data['currency']->id,
'amount' => $data['amount'],
'foreign_amount' => $data['foreign_amount'],
'foreign_currency_id' => null,
'identifier' => $data['identifier'],
'foreign_currency_id' => $data['foreign_currency'] ? $data['foreign_currency']->id : null,
'identifier' => 0,
]
);
}
@ -107,24 +94,13 @@ class TransactionFactory
*/
public function createPair(TransactionJournal $journal, array $data): Collection
{
Log::debug('Start of TransactionFactory::createPair()', $data);
// all this data is the same for both transactions:
Log::debug('Searching for currency info.');
$defaultCurrency = app('amount')->getDefaultCurrencyByUser($this->user);
$currency = $this->findCurrency($data['currency_id'], $data['currency_code']);
$currency = $currency ?? $defaultCurrency;
// enable currency:
if (false === $currency->enabled) {
$currency->enabled = true;
$currency->save();
}
Log::debug('Start of TransactionFactory::createPair()' );
// type of source account and destination account depends on journal type:
$sourceType = $this->accountType($journal, 'source');
$destinationType = $this->accountType($journal, 'destination');
Log::debug(sprintf('Journal is a %s.', $journal->transactionType->type));
Log::debug(sprintf('Expect source account to be of type "%s"', $sourceType));
Log::debug(sprintf('Expect source destination to be of type "%s"', $destinationType));
@ -149,11 +125,11 @@ class TransactionFactory
'description' => $data['description'],
'amount' => app('steam')->negative((string)$data['amount']),
'foreign_amount' => null,
'currency' => $currency,
'currency' => $data['currency'],
'foreign_currency' => $data['foreign_currency'],
'account' => $sourceAccount,
'transaction_journal' => $journal,
'reconciled' => $data['reconciled'],
'identifier' => $data['identifier'],
]
);
$dest = $this->create(
@ -161,44 +137,23 @@ class TransactionFactory
'description' => $data['description'],
'amount' => app('steam')->positive((string)$data['amount']),
'foreign_amount' => null,
'currency' => $currency,
'currency' => $data['currency'],
'foreign_currency' => $data['foreign_currency'],
'account' => $destinationAccount,
'transaction_journal' => $journal,
'reconciled' => $data['reconciled'],
'identifier' => $data['identifier'],
]
);
if (null === $source || null === $dest) {
throw new FireflyException('Could not create transactions.'); // @codeCoverageIgnore
}
// set foreign currency
Log::debug('Trying to find foreign currency information.');
$foreign = $this->findCurrency($data['foreign_currency_id'], $data['foreign_currency_code']);
$this->setForeignCurrency($source, $foreign);
$this->setForeignCurrency($dest, $foreign);
// set foreign amount:
if (null !== $data['foreign_amount']) {
$this->setForeignAmount($source, app('steam')->negative((string)$data['foreign_amount']));
$this->setForeignAmount($dest, app('steam')->positive((string)$data['foreign_amount']));
}
// set budget:
if ($journal->transactionType->type !== TransactionType::WITHDRAWAL) {
$data['budget_id'] = null;
$data['budget_name'] = null;
}
$budget = $this->findBudget($data['budget_id'], $data['budget_name']);
$this->setBudget($source, $budget);
$this->setBudget($dest, $budget);
// set category
$category = $this->findCategory($data['category_id'], $data['category_name']);
$this->setCategory($source, $category);
$this->setCategory($dest, $category);
return new Collection([$source, $dest]);
}
@ -231,8 +186,6 @@ class TransactionFactory
&& !\in_array($destinationType, $list, true)) {
throw new FireflyException(sprintf('At least one of the accounts must be an asset account (%s, %s).', $sourceType, $destinationType));
}
// either of these must be asset or default account.
}

View File

@ -24,12 +24,14 @@ declare(strict_types=1);
namespace FireflyIII\Factory;
use Carbon\Carbon;
use FireflyIII\Exceptions\FireflyException;
use FireflyIII\Models\TransactionCurrency;
use FireflyIII\Models\TransactionGroup;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\Services\Internal\Support\JournalServiceTrait;
use FireflyIII\Services\Internal\Support\TransactionTypeTrait;
use FireflyIII\User;
use Illuminate\Support\Collection;
use Log;
/**
@ -37,6 +39,7 @@ use Log;
*/
class TransactionJournalFactory
{
private $fields;
/** @var User The user */
private $user;
@ -47,6 +50,9 @@ class TransactionJournalFactory
*/
public function __construct()
{
$this->fields = ['sepa-cc', 'sepa-ct-op', 'sepa-ct-id', 'sepa-db', 'sepa-country', 'sepa-ep', 'sepa-ci', 'interest_date', 'book_date', 'process_date',
'due_date', 'recurrence_id', 'payment_date', 'invoice_date', 'internal_reference', 'bunq_payment_id', 'importHash', 'importHashV2',
'external_id', 'sepa-batch-id', 'original-source'];
if ('testing' === config('app.env')) {
Log::warning(sprintf('%s should not be instantiated in the TEST environment!', \get_class($this)));
}
@ -57,85 +63,116 @@ class TransactionJournalFactory
*
* @param array $data
*
* @return TransactionJournal
* @return Collection
* @throws FireflyException
* @SuppressWarnings(PHPMD.CyclomaticComplexity)
* @SuppressWarnings(PHPMD.ExcessiveMethodLength)
*/
public function create(array $data): TransactionJournal
public function create(array $data): Collection
{
Log::debug('Start of TransactionJournalFactory::create()');
// store basic journal first.
$type = $this->findTransactionType($data['type']);
$defaultCurrency = app('amount')->getDefaultCurrencyByUser($this->user);
Log::debug(sprintf('Going to store a %s', $type->type));
$factory = app(TransactionFactory::class);
$journals = new Collection;
$carbon = $data['date'];
$type = $this->findTransactionType($data['type']);
$description = app('steam')->cleanString($data['description']);
$description = str_replace(["\n", "\t", "\r"], "\x20", $description);
/** @var Carbon $carbon */
$carbon = $data['date'];
$carbon->setTimezone(config('app.timezone'));
$journal = TransactionJournal::create(
[
'user_id' => $data['user'],
'transaction_type_id' => $type->id,
'bill_id' => null,
'transaction_currency_id' => $defaultCurrency->id,
'description' => $description,
'date' => $carbon->format('Y-m-d H:i:s'),
'order' => 0,
'tag_count' => 0,
'completed' => 0,
]
);
if (isset($data['transactions'][0]['amount']) && '' === $data['transactions'][0]['amount']) {
Log::error('Empty amount in data', $data);
}
// store basic transactions:
/** @var TransactionFactory $factory */
$factory = app(TransactionFactory::class);
$factory->setUser($this->user);
$totalAmount = '0';
Log::debug(sprintf('Found %d transactions in array.', \count($data['transactions'])));
/** @var array $trData */
foreach ($data['transactions'] as $index => $trData) {
Log::debug(sprintf('Now storing transaction %d of %d', $index + 1, \count($data['transactions'])));
$factory->createPair($journal, $trData);
$totalAmount = bcadd($totalAmount, (string)($trData['amount'] ?? '0'));
Log::debug(sprintf('New journal(group): %s with description "%s"', $type->type, $description));
// loop each transaction.
/**
* @var int $index
* @var array $transactionData
*/
foreach ($data['transactions'] as $index => $transactionData) {
Log::debug(sprintf('Now at journal #%d from %d', $index + 1, count($data['transactions'])));
// catch to stop empty amounts:
if ('' === (string)$transactionData['amount'] || 0.0 === (float)$transactionData['amount']) {
continue;
}
// currency & foreign currency
$transactionData['currency'] = $this->getCurrency($data, $index);
$transactionData['foreign_currency'] = $this->getForeignCurrency($data, $index);
// store basic journal first.
$journal = TransactionJournal::create(
[
'user_id' => $data['user'],
'transaction_type_id' => $type->id,
'bill_id' => null,
'transaction_currency_id' => $transactionData['currency']->id,
'description' => $description,
'date' => $carbon->format('Y-m-d H:i:s'),
'order' => 0,
'tag_count' => 0,
'completed' => 0,
]
);
Log::debug(sprintf('Stored journal under ID #%d', $journal->id));
// store transactions for this journal:
$factory->createPair($journal, $transactionData);
// save journal:
$journal->completed = true;
$journal->save();
// // link bill TODO
// $this->connectBill($journal, $data);
//
// // link piggy bank (if transfer) TODO
// $this->connectPiggyBank($journal, $data);
//
// // link tags: TODO
// $this->connectTags($journal, $transactionData);
//
// // store note: TODO
// $this->storeNote($journal, $transactionData['notes']);
//
// if ($journal->transactionType->type !== TransactionType::WITHDRAWAL) {
// $transactionData['budget_id'] = null;
// $transactionData['budget_name'] = null;
// }
// // save budget TODO
// $budget = $this->findBudget($data['budget_id'], $data['budget_name']);
// $this->setBudget($journal, $budget);
//
// // set category TODO
// $category = $this->findCategory($data['category_id'], $data['category_name']);
// $this->setCategory($journal, $category);
//
// // store meta data TODO
// foreach ($this->fields as $field) {
// $this->storeMeta($journal, $data, $field);
// }
// add to array
$journals->push($journal);
}
$journal->completed = true;
$journal->save();
// link bill:
$this->connectBill($journal, $data);
// create group if necessary
if ($journals->count() > 1) {
$group = new TransactionGroup;
$group->user()->associate($this->user);
$group->title = $description;
$group->save();
$group->transactionJournals()->saveMany($journals);
// link piggy bank (if transfer)
$this->connectPiggyBank($journal, $data);
// link tags:
$this->connectTags($journal, $data);
// store note:
$this->storeNote($journal, (string)$data['notes']);
// store date meta fields (if present):
$fields = ['sepa-cc', 'sepa-ct-op', 'sepa-ct-id', 'sepa-db', 'sepa-country', 'sepa-ep', 'sepa-ci', 'interest_date', 'book_date', 'process_date',
'due_date', 'recurrence_id', 'payment_date', 'invoice_date', 'internal_reference', 'bunq_payment_id', 'importHash', 'importHashV2',
'external_id', 'sepa-batch-id', 'original-source'];
foreach ($fields as $field) {
$this->storeMeta($journal, $data, $field);
Log::debug(sprintf('More than one journal, created group #%d.', $group->id));
}
Log::debug('End of TransactionJournalFactory::create()');
// invalidate cache.
app('preferences')->mark();
return $journal;
return $journals;
}
/**
* Set the user.
*
@ -166,4 +203,126 @@ class TransactionJournalFactory
}
}
/**
* @param array $data
* @param int $index
*
* @return TransactionCurrency
*/
private function getCurrency(array $data, int $index): TransactionCurrency
{
// first check the transaction row itself.
$row = $data['transactions'][$index];
$currency = null;
// check currency object:
if (null === $currency && isset($row['currency']) && $row['currency'] instanceof TransactionCurrency) {
$currency = $row['currency'];
}
// check currency ID:
if (null === $currency && isset($row['currency_id']) && (int)$row['currency_id'] > 0) {
$currencyId = (int)$row['currency_id'];
$currency = TransactionCurrency::find($currencyId);
}
// check currency code
if (null === $currency && isset($row['currency_code']) && 3 === \strlen($row['currency_code'])) {
$currency = TransactionCurrency::whereCode($row['currency_code'])->first();
}
// continue with journal itself.
// check currency object:
if (null === $currency && isset($data['currency']) && $data['currency'] instanceof TransactionCurrency) {
$currency = $data['currency'];
}
// check currency ID:
if (null === $currency && isset($data['currency_id']) && (int)$data['currency_id'] > 0) {
$currencyId = (int)$data['currency_id'];
$currency = TransactionCurrency::find($currencyId);
}
// check currency code
if (null === $currency && isset($data['currency_code']) && 3 === \strlen($data['currency_code'])) {
$currency = TransactionCurrency::whereCode($data['currency_code'])->first();
}
if (null === $currency) {
// return user's default currency:
$currency = app('amount')->getDefaultCurrencyByUser($this->user);
}
// enable currency:
if (false === $currency->enabled) {
$currency->enabled = true;
$currency->save();
}
Log::debug(sprintf('Journal currency will be #%d (%s)', $currency->id, $currency->code));
return $currency;
}
/**
* @param array $data
* @param int $index
*
* @return TransactionCurrency|null
*/
private function getForeignCurrency(array $data, int $index): ?TransactionCurrency
{
// first check the transaction row itself.
$row = $data['transactions'][$index];
$currency = null;
// check currency object:
if (null === $currency && isset($row['foreign_currency']) && $row['foreign_currency'] instanceof TransactionCurrency) {
$currency = $row['foreign_currency'];
}
// check currency ID:
if (null === $currency && isset($row['foreign_currency_id']) && (int)$row['foreign_currency_id'] > 0) {
$currencyId = (int)$row['foreign_currency_id'];
$currency = TransactionCurrency::find($currencyId);
}
// check currency code
if (null === $currency && isset($row['foreign_currency_code']) && 3 === \strlen($row['foreign_currency_code'])) {
$currency = TransactionCurrency::whereCode($row['foreign_currency_code'])->first();
}
// continue with journal itself.
// check currency object:
if (null === $currency && isset($data['foreign_currency']) && $data['foreign_currency'] instanceof TransactionCurrency) {
$currency = $data['foreign_currency'];
}
// check currency ID:
if (null === $currency && isset($data['foreign_currency_id']) && (int)$data['foreign_currency_id'] > 0) {
$currencyId = (int)$data['foreign_currency_id'];
$currency = TransactionCurrency::find($currencyId);
}
// check currency code
if (null === $currency && isset($data['foreign_currency_code']) && 3 === \strlen($data['foreign_currency_code'])) {
$currency = TransactionCurrency::whereCode($data['foreign_currency_code'])->first();
}
// enable currency:
if (null !== $currency && false === $currency->enabled) {
$currency->enabled = true;
$currency->save();
}
if (null !== $currency) {
Log::debug(sprintf('Journal foreign currency will be #%d (%s)', $currency->id, $currency->code));
}
if (null === $currency) {
Log::debug('Journal foreign currency will be NULL');
}
return $currency;
}
}

View File

@ -56,8 +56,39 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property string accountTypeString
* @property Carbon created_at
* @property Carbon updated_at
*
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
* @SuppressWarnings (PHPMD.CouplingBetweenObjects)
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @property int $account_type_id
* @property bool $encrypted
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\AccountMeta[] $accountMeta
* @property-read string $edit_name
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Note[] $notes
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\PiggyBank[] $piggyBanks
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Transaction[] $transactions
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account accountTypeIn($types)
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Account onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereAccountTypeId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereIban($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereUserId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Account whereVirtualBalance($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Account withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Account withoutTrashed()
* @mixin \Eloquent
*/
class Account extends Model
{

View File

@ -31,6 +31,20 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
* @property string $data
* @property string $name
* @property int $account_id
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property-read \FireflyIII\Models\Account $account
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta whereAccountId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta whereData($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountMeta whereUpdatedAt($value)
* @mixin \Eloquent
*/
class AccountMeta extends Model
{

View File

@ -31,7 +31,16 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
* @property string $type
* @method whereType(string $type)
* @property int $id
*
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Account[] $accounts
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountType newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountType newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountType query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountType whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountType whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AccountType whereUpdatedAt($value)
* @mixin \Eloquent
*/
class AccountType extends Model
{

View File

@ -48,6 +48,33 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property User $user
* @property bool $uploaded
* @property bool file_exists
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @property int $attachable_id
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Attachment[] $attachable
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Attachment onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereAttachableId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereAttachableType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereFilename($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereMd5($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereMime($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereSize($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereTitle($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereUploaded($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Attachment whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Attachment withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Attachment withoutTrashed()
* @mixin \Eloquent
*/
class Attachment extends Model
{

View File

@ -41,6 +41,26 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Carbon $start_date
* @property Carbon $end_date
* @property string $amount
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\AvailableBudget onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereAmount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereEndDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereStartDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereTransactionCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\AvailableBudget whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\AvailableBudget withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\AvailableBudget withoutTrashed()
* @mixin \Eloquent
*/
class AvailableBudget extends Model
{

View File

@ -53,8 +53,39 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property string $match
* @property bool match_encrypted
* @property bool name_encrypted
*
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
* @SuppressWarnings (PHPMD.CouplingBetweenObjects)
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @property bool $name_encrypted
* @property bool $match_encrypted
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Attachment[] $attachments
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournal[] $transactionJournals
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Bill onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereAmountMax($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereAmountMin($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereAutomatch($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereMatch($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereMatchEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereNameEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereRepeatFreq($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereSkip($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereTransactionCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Bill whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Bill withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Bill withoutTrashed()
* @mixin \Eloquent
*/
class Bill extends Model
{

View File

@ -46,6 +46,31 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Carbon created_at
* @property Carbon updated_at
* @property User $user
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property bool $encrypted
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\BudgetLimit[] $budgetlimits
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournal[] $transactionJournals
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Transaction[] $transactions
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Budget onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Budget whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Budget withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Budget withoutTrashed()
* @mixin \Eloquent
*/
class Budget extends Model
{

View File

@ -41,6 +41,18 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property string spent
* @property int $transaction_currency_id
* @property TransactionCurrency $transactionCurrency
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereAmount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereBudgetId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereEndDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereStartDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereTransactionCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\BudgetLimit whereUpdatedAt($value)
* @mixin \Eloquent
*/
class BudgetLimit extends Model
{

View File

@ -42,6 +42,27 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property User $user
* @property Carbon $created_at
* @property Carbon $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @property bool $encrypted
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournal[] $transactionJournals
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Transaction[] $transactions
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Category onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category whereEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Category whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Category withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Category withoutTrashed()
* @mixin \Eloquent
*/
class Category extends Model
{

View File

@ -30,6 +30,25 @@ use Illuminate\Database\Eloquent\SoftDeletes;
*
* @property string $data
* @property string $name
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Configuration onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration whereData($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Configuration whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Configuration withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Configuration withoutTrashed()
* @mixin \Eloquent
*/
class Configuration extends Model
{

View File

@ -39,7 +39,24 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
* @property Carbon $date
* @property int $from_currency_id
* @property int $to_currency_id
*
* @property string|null $deleted_at
* @property int $user_id
* @property float|null $user_rate
* @property-read \FireflyIII\User $user
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereFromCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereRate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereToCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereUserId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\CurrencyExchangeRate whereUserRate($value)
* @mixin \Eloquent
*/
class CurrencyExchangeRate extends Model
{

View File

@ -35,6 +35,20 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property int $user_id
* @property string status
* @property int id
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property string $status
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob whereKey($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob whereStatus($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ExportJob whereUserId($value)
* @mixin \Eloquent
*/
class ExportJob extends Model
{

View File

@ -48,6 +48,27 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property int id
* @property Carbon $created_at
* @property Carbon $updated_at
* @property int $id
* @property array|null $extended_status
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Attachment[] $attachments
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereConfiguration($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereErrors($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereExtendedStatus($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereFileType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereKey($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereProvider($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereStage($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereStatus($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereTagId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereTransactions($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\ImportJob whereUserId($value)
* @mixin \Eloquent
*/
class ImportJob extends Model
{

View File

@ -29,6 +29,8 @@ use Illuminate\Database\Eloquent\SoftDeletes;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
/**
* FireflyIII\Models\LinkType
*
* @property int $journalCount
* @property string $inward
* @property string $outward
@ -38,7 +40,25 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Carbon $updated_at
* @property int $id
* Class LinkType
*
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournalLink[] $transactionJournalLinks
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\LinkType onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereEditable($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereInward($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereOutward($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\LinkType whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\LinkType withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\LinkType withoutTrashed()
* @mixin \Eloquent
*/
class LinkType extends Model
{

View File

@ -36,6 +36,26 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property string $text
* @property string $title
* @property int $noteable_id
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property string $noteable_type
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Note[] $noteable
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Note onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereNoteableId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereNoteableType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereText($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereTitle($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Note whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Note withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Note withoutTrashed()
* @mixin \Eloquent
*/
class Note extends Model
{

View File

@ -45,7 +45,32 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property bool $active
* @property int $account_id
* @property bool encrypted
*
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property bool $encrypted
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Note[] $notes
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\PiggyBankEvent[] $piggyBankEvents
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\PiggyBankRepetition[] $piggyBankRepetitions
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\PiggyBank onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereAccountId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereStartdate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereTargetamount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereTargetdate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBank whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\PiggyBank withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\PiggyBank withoutTrashed()
* @mixin \Eloquent
*/
class PiggyBank extends Model
{

View File

@ -38,7 +38,21 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
* @property string $amount
* @property Carbon created_at
* @property Carbon updated_at
*
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon $date
* @property-read \FireflyIII\Models\TransactionJournal|null $transactionJournal
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent whereAmount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent whereDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent wherePiggyBankId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent whereTransactionJournalId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankEvent whereUpdatedAt($value)
* @mixin \Eloquent
*/
class PiggyBankEvent extends Model
{

View File

@ -33,6 +33,24 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
* @property string $currentamount
* @property Carbon $startdate
* @property Carbon $targetdate
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property int $piggy_bank_id
* @property-read \FireflyIII\Models\PiggyBank $piggyBank
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition onDates(\Carbon\Carbon $start, \Carbon\Carbon $target)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition relevantOnDate(\Carbon\Carbon $date)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition whereCurrentamount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition wherePiggyBankId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition whereStartdate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition whereTargetdate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\PiggyBankRepetition whereUpdatedAt($value)
* @mixin \Eloquent
*/
class PiggyBankRepetition extends Model
{

View File

@ -37,6 +37,18 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Carbon $created_at
* @property int $id
* @property User user
* @property int $user_id
* @property-read \FireflyIII\User $user
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference whereData($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Preference whereUserId($value)
* @mixin \Eloquent
*/
class Preference extends Model
{

View File

@ -57,7 +57,32 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property \Illuminate\Support\Collection $recurrenceMeta
* @property \Illuminate\Support\Collection $recurrenceTransactions
* @property \FireflyIII\Models\TransactionType $transactionType
*
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Note[] $notes
* @property-read \FireflyIII\Models\TransactionCurrency $transactionCurrency
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Recurrence onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereApplyRules($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereFirstDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereLatestDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereRepeatUntil($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereRepetitions($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereTitle($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereTransactionTypeId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Recurrence whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Recurrence withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Recurrence withoutTrashed()
* @mixin \Eloquent
*/
class Recurrence extends Model
{

View File

@ -33,6 +33,28 @@ use Illuminate\Database\Eloquent\SoftDeletes;
*
* @property string $name
* @property string $value
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $recurrence_id
* @property-read \FireflyIII\Models\Recurrence $recurrence
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceMeta onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta whereRecurrenceId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceMeta whereValue($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceMeta withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceMeta withoutTrashed()
* @mixin \Eloquent
*/
class RecurrenceMeta extends Model
{

View File

@ -39,6 +39,26 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property \Carbon\Carbon $deleted_at
* @property \Carbon\Carbon $updated_at
* @property int $id
* @property int $recurrence_id
* @property-read \FireflyIII\Models\Recurrence $recurrence
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceRepetition onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereRecurrenceId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereRepetitionMoment($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereRepetitionSkip($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereRepetitionType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceRepetition whereWeekend($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceRepetition withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceRepetition withoutTrashed()
* @mixin \Eloquent
*/
class RecurrenceRepetition extends Model
{

View File

@ -30,7 +30,6 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\SoftDeletes;
/**
*
* Class RecurrenceTransaction
*
* @property int $transaction_currency_id,
@ -47,6 +46,32 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property \Illuminate\Support\Collection $recurrenceTransactionMeta
* @property int $id
* @property Recurrence $recurrence
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $recurrence_id
* @property int $transaction_currency_id
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceTransaction onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereAmount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereDestinationId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereForeignAmount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereForeignCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereRecurrenceId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereSourceId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereTransactionCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransaction whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceTransaction withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceTransaction withoutTrashed()
* @mixin \Eloquent
*/
class RecurrenceTransaction extends Model
{

View File

@ -33,6 +33,28 @@ use Illuminate\Database\Eloquent\SoftDeletes;
*
* @property string $name
* @property string $value
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $rt_id
* @property-read \FireflyIII\Models\RecurrenceTransaction $recurrenceTransaction
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceTransactionMeta onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta whereRtId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RecurrenceTransactionMeta whereValue($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceTransactionMeta withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RecurrenceTransactionMeta withoutTrashed()
* @mixin \Eloquent
*/
class RecurrenceTransactionMeta extends Model
{

View File

@ -31,6 +31,21 @@ use Illuminate\Database\Eloquent\Relations\BelongsToMany;
*
* @property int $id
* @property string $name
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property string|null $display_name
* @property string|null $description
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\User[] $users
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role whereDisplayName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Role whereUpdatedAt($value)
* @mixin \Eloquent
*/
class Role extends Model
{

View File

@ -48,6 +48,29 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property RuleGroup $ruleGroup
* @property int $rule_group_id
* @property string $description
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Rule onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereRuleGroupId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereStopProcessing($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereStrict($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereTitle($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Rule whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Rule withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Rule withoutTrashed()
* @mixin \Eloquent
*/
class Rule extends Model
{

View File

@ -38,6 +38,20 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
* @property bool $active
* @property bool $stop_processing
* @property Rule $rule
* @property int $rule_id
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereActionType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereActionValue($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereRuleId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereStopProcessing($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleAction whereUpdatedAt($value)
* @mixin \Eloquent
*/
class RuleAction extends Model
{

View File

@ -44,6 +44,27 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property int $order
* @property Collection $rules
* @property string description
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @property string|null $description
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RuleGroup onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereTitle($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleGroup whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RuleGroup withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\RuleGroup withoutTrashed()
* @mixin \Eloquent
*/
class RuleGroup extends Model
{

View File

@ -37,6 +37,21 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
* @property int $order
* @property bool $active
* @property bool $stop_processing
* @property int $rule_id
* @property-read \FireflyIII\Models\Rule $rule
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereActive($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereRuleId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereStopProcessing($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereTriggerType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereTriggerValue($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\RuleTrigger whereUpdatedAt($value)
* @mixin \Eloquent
*/
class RuleTrigger extends Model
{

View File

@ -46,6 +46,30 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property string tagMode
* @property Carbon created_at
* @property Carbon updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @property-read \FireflyIII\User $user
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Tag onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereLatitude($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereLongitude($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereTag($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereTagMode($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereUserId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Tag whereZoomLevel($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Tag withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Tag withoutTrashed()
* @mixin \Eloquent
*/
class Tag extends Model
{

View File

@ -101,7 +101,38 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Carbon created_at
* @property Carbon updated_at
* @property string foreign_currency_code
* @SuppressWarnings(PHPMD.TooManyPublicMethods)
* @SuppressWarnings (PHPMD.TooManyPublicMethods)
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property bool $reconciled
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Budget[] $budgets
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Category[] $categories
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction after(\Carbon\Carbon $date)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction before(\Carbon\Carbon $date)
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Transaction onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction transactionTypes($types)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereAccountId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereAmount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereForeignAmount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereForeignCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereIdentifier($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereReconciled($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereTransactionCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereTransactionJournalId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\Transaction whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Transaction withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\Transaction withoutTrashed()
* @mixin \Eloquent
*/
class Transaction extends Model
{

View File

@ -39,7 +39,29 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property bool $enabled
* @property Carbon $created_at
* @property Carbon $updated_at
*
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property string $name
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\BudgetLimit[] $budgetLimits
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournal[] $transactionJournals
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Transaction[] $transactions
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionCurrency onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereCode($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereDecimalPlaces($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereEnabled($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereSymbol($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionCurrency whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionCurrency withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionCurrency withoutTrashed()
* @mixin \Eloquent
*/
class TransactionCurrency extends Model
{

View File

@ -32,6 +32,30 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
/**
* Class TransactionGroup.
*
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $user_id
* @property string|null $title
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournal[] $transactionJournals
* @property-read \FireflyIII\User $user
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionGroup onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup whereTitle($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionGroup whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionGroup withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionGroup withoutTrashed()
* @mixin \Eloquent
*/
class TransactionGroup extends Model
{
@ -51,8 +75,7 @@ class TransactionGroup extends Model
];
/** @var array Fields that can be filled */
protected $fillable
= ['user_id', 'title'];
protected $fillable = ['user_id', 'title'];
/**
* Route binder. Converts the key in the URL to the specified object (or throw 404).
@ -69,8 +92,7 @@ class TransactionGroup extends Model
/** @var User $user */
$user = auth()->user();
/** @var TransactionGroup $group */
$group = $user->transactionGroups()->where('transaction_groups.id', $groupId)
->first(['transaction_groups.*']);
$group = $user->transactionGroups()->where('transaction_groups.id', $groupId)->first(['transaction_groups.*']);
if (null !== $group) {
return $group;
}
@ -85,7 +107,7 @@ class TransactionGroup extends Model
*/
public function transactionJournals(): BelongsToMany
{
return $this->belongsToMany(TransactionJournal::class);
return $this->belongsToMany(TransactionJournal::class,'group_journals');
}
/**

View File

@ -65,9 +65,46 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Collection budgets
* @property Bill $bill
* @property Collection transactionJournalMeta
*
* @SuppressWarnings(PHPMD.TooManyPublicMethods)
* @SuppressWarnings(PHPMD.CouplingBetweenObjects)
* @SuppressWarnings (PHPMD.TooManyPublicMethods)
* @SuppressWarnings (PHPMD.CouplingBetweenObjects)
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property int $tag_count
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Attachment[] $attachments
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Note[] $notes
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\PiggyBankEvent[] $piggyBankEvents
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournalLink[] $sourceJournalLinks
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Category[] $transactionGroups
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal after(\Carbon\Carbon $date)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal before(\Carbon\Carbon $date)
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionJournal onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal transactionTypes($types)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereBillId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereBookDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereCompleted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereEncrypted($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereInterestDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereOrder($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereProcessDate($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereTagCount($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereTransactionCurrencyId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereTransactionTypeId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereUpdatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournal whereUserId($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionJournal withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionJournal withoutTrashed()
* @mixin \Eloquent
*/
class TransactionJournal extends Model
{
@ -329,7 +366,7 @@ class TransactionJournal extends Model
*/
public function transactionGroups(): BelongsToMany
{
return $this->belongsToMany(Category::class);
return $this->belongsToMany(TransactionGroup::class,'group_journals');
}
/**

View File

@ -41,6 +41,18 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property int $link_type_id
* @property int $source_id
* @property int $destination_id
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Note[] $notes
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink whereComment($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink whereDestinationId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink whereLinkTypeId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink whereSourceId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalLink whereUpdatedAt($value)
* @mixin \Eloquent
*/
class TransactionJournalLink extends Model
{

View File

@ -34,6 +34,27 @@ use Illuminate\Database\Eloquent\SoftDeletes;
* @property TransactionJournal $transactionJournal
* @property string $data
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property string $hash
* @property \Illuminate\Support\Carbon|null $deleted_at
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionJournalMeta onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereData($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereHash($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereTransactionJournalId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionJournalMeta whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionJournalMeta withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionJournalMeta withoutTrashed()
* @mixin \Eloquent
*/
class TransactionJournalMeta extends Model
{

View File

@ -32,6 +32,24 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
*
* @property string $type
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property \Illuminate\Support\Carbon|null $deleted_at
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournal[] $transactionJournals
* @method static bool|null forceDelete()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType newQuery()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionType onlyTrashed()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType query()
* @method static bool|null restore()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType whereDeletedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType whereType($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\Models\TransactionType whereUpdatedAt($value)
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionType withTrashed()
* @method static \Illuminate\Database\Query\Builder|\FireflyIII\Models\TransactionType withoutTrashed()
* @mixin \Eloquent
*/
class TransactionType extends Model
{

View File

@ -25,8 +25,12 @@ namespace FireflyIII\Services\Internal\Support;
use Exception;
use FireflyIII\Factory\BillFactory;
use FireflyIII\Factory\BudgetFactory;
use FireflyIII\Factory\CategoryFactory;
use FireflyIII\Factory\TagFactory;
use FireflyIII\Factory\TransactionJournalMetaFactory;
use FireflyIII\Models\Budget;
use FireflyIII\Models\Category;
use FireflyIII\Models\Note;
use FireflyIII\Models\TransactionJournal;
use Log;
@ -89,6 +93,70 @@ trait JournalServiceTrait
}
/**
* @param int|null $budgetId
* @param null|string $budgetName
*
* @return Budget|null
*/
protected function findBudget(?int $budgetId, ?string $budgetName): ?Budget
{
/** @var BudgetFactory $factory */
$factory = app(BudgetFactory::class);
$factory->setUser($this->user);
return $factory->find($budgetId, $budgetName);
}
/**
* @param int|null $categoryId
* @param null|string $categoryName
*
* @return Category|null
*/
protected function findCategory(?int $categoryId, ?string $categoryName): ?Category
{
Log::debug(sprintf('Going to find or create category #%d, with name "%s"', $categoryId, $categoryName));
/** @var CategoryFactory $factory */
$factory = app(CategoryFactory::class);
$factory->setUser($this->user);
return $factory->findOrCreate($categoryId, $categoryName);
}
/**
* @param TransactionJournal $journal
* @param Budget|null $budget
*/
protected function setBudget(TransactionJournal $journal, ?Budget $budget): void
{
if (null === $budget) {
$journal->budgets()->sync([]);
return;
}
$journal->budgets()->sync([$budget->id]);
}
/**
* @param TransactionJournal $journal
* @param Category|null $category
*/
protected function setCategory(TransactionJournal $journal, ?Category $category): void
{
if (null === $category) {
$journal->categories()->sync([]);
return;
}
$journal->categories()->sync([$category->id]);
}
/**
* @param TransactionJournal $journal
* @param array $data

View File

@ -93,8 +93,6 @@ trait TransactionServiceTrait
$repository = app(AccountRepositoryInterface::class);
$repository->setUser($this->user);
Log::debug(sprintf('Going to find account #%d ("%s")', $accountId, $accountName));
if (null === $expectedType) {
return $repository->findNull($accountId);
}
@ -118,37 +116,6 @@ trait TransactionServiceTrait
return $repository->getCashAccount();
}
/**
* @param int|null $budgetId
* @param null|string $budgetName
*
* @return Budget|null
*/
protected function findBudget(?int $budgetId, ?string $budgetName): ?Budget
{
/** @var BudgetFactory $factory */
$factory = app(BudgetFactory::class);
$factory->setUser($this->user);
return $factory->find($budgetId, $budgetName);
}
/**
* @param int|null $categoryId
* @param null|string $categoryName
*
* @return Category|null
*/
protected function findCategory(?int $categoryId, ?string $categoryName): ?Category
{
Log::debug(sprintf('Going to find or create category #%d, with name "%s"', $categoryId, $categoryName));
/** @var CategoryFactory $factory */
$factory = app(CategoryFactory::class);
$factory->setUser($this->user);
return $factory->findOrCreate($categoryId, $categoryName);
}
/**
* @param int|null $currencyId
* @param null|string $currencyCode
@ -162,38 +129,6 @@ trait TransactionServiceTrait
return $factory->find($currencyId, $currencyCode);
}
/**
* @param Transaction $transaction
* @param Budget|null $budget
*/
protected function setBudget(Transaction $transaction, ?Budget $budget): void
{
if (null === $budget) {
$transaction->budgets()->sync([]);
return;
}
$transaction->budgets()->sync([$budget->id]);
}
/**
* @param Transaction $transaction
* @param Category|null $category
*/
protected function setCategory(Transaction $transaction, ?Category $category): void
{
if (null === $category) {
$transaction->categories()->sync([]);
return;
}
$transaction->categories()->sync([$category->id]);
}
/**
* @param Transaction $transaction
* @param string|null $amount

View File

@ -371,6 +371,7 @@ class Steam
];
$replace = "\x20"; // plain old normal space
$string = str_replace($search, $replace, $string);
$string = str_replace(["\n", "\t", "\r"], "\x20", $string);
return trim($string);
}

View File

@ -66,6 +66,48 @@ use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
* @property Collection roles
* @property string blocked_code
* @property bool blocked
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property string $password
* @property string|null $remember_token
* @property string|null $reset
* @property bool $blocked
* @property string|null $blocked_code
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Account[] $accounts
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Attachment[] $attachments
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\AvailableBudget[] $availableBudgets
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Bill[] $bills
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Budget[] $budgets
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Category[] $categories
* @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Client[] $clients
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\CurrencyExchangeRate[] $currencyExchangeRates
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\ExportJob[] $exportJobs
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\ImportJob[] $importJobs
* @property-read \Illuminate\Notifications\DatabaseNotificationCollection|\Illuminate\Notifications\DatabaseNotification[] $notifications
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\PiggyBank[] $piggyBanks
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Preference[] $preferences
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Recurrence[] $recurrences
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Role[] $roles
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\RuleGroup[] $ruleGroups
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Rule[] $rules
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Tag[] $tags
* @property-read \Illuminate\Database\Eloquent\Collection|\Laravel\Passport\Token[] $tokens
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionGroup[] $transactionGroups
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\TransactionJournal[] $transactionJournals
* @property-read \Illuminate\Database\Eloquent\Collection|\FireflyIII\Models\Transaction[] $transactions
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User query()
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereBlocked($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereBlockedCode($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereEmail($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User wherePassword($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereRememberToken($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereReset($value)
* @method static \Illuminate\Database\Eloquent\Builder|\FireflyIII\User whereUpdatedAt($value)
* @mixin \Eloquent
*/
class User extends Authenticatable
{

View File

@ -0,0 +1,26 @@
<?php
use Illuminate\Database\Migrations\Migration;
class ChangesForV480 extends Migration
{
/**
* Reverse the migrations.
*
* @return void
*/
public function down(): void
{
//
}
/**
* Run the migrations.
*
* @return void
*/
public function up(): void
{
}
}