Improvements for #616 and others.

This commit is contained in:
James Cole
2017-08-23 21:21:42 +02:00
parent 1a89e379a4
commit 394e92d538
19 changed files with 383 additions and 55 deletions

View File

@@ -54,6 +54,18 @@ class LinkTypeRepository implements LinkTypeRepositoryInterface
return true;
}
/**
* @param TransactionJournalLink $link
*
* @return bool
*/
public function destroyLink(TransactionJournalLink $link): bool
{
$link->delete();
return true;
}
/**
* @param int $id
*
@@ -135,6 +147,21 @@ class LinkTypeRepository implements LinkTypeRepositoryInterface
return $linkType;
}
/**
* @param TransactionJournalLink $link
*
* @return bool
*/
public function switchLink(TransactionJournalLink $link): bool
{
$source = $link->source_id;
$link->source_id = $link->destination_id;
$link->destination_id = $source;
$link->save();
return true;
}
/**
* @param LinkType $linkType
* @param array $data

View File

@@ -14,6 +14,7 @@ namespace FireflyIII\Repositories\LinkType;
use FireflyIII\Models\LinkType;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\Models\TransactionJournalLink;
use Illuminate\Support\Collection;
/**
@@ -45,6 +46,20 @@ interface LinkTypeRepositoryInterface
*/
public function find(int $id): LinkType;
/**
* @param TransactionJournalLink $link
*
* @return bool
*/
public function destroyLink(TransactionJournalLink $link):bool;
/**
* @param TransactionJournalLink $link
*
* @return bool
*/
public function switchLink(TransactionJournalLink $link): bool;
/**
* Check if link exists between journals.
*