mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-10-12 15:35:15 +00:00
This commit is contained in:
@@ -217,26 +217,17 @@ class TagController extends Controller
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Tag $tag
|
||||
* @param Tag $tag
|
||||
* @param TagRepositoryInterface $repository
|
||||
*
|
||||
* @return View
|
||||
*/
|
||||
public function show(Tag $tag)
|
||||
public function show(Tag $tag, TagRepositoryInterface $repository)
|
||||
{
|
||||
$subTitle = $tag->tag;
|
||||
$subTitleIcon = 'fa-tag';
|
||||
|
||||
|
||||
|
||||
/** @var Collection $journals */
|
||||
$journals = $tag
|
||||
->transactionJournals()
|
||||
->sortCorrectly()
|
||||
->expanded()
|
||||
->groupBy(['tag_transaction_journal.tag_id'])
|
||||
->get(TransactionJournal::queryFields());
|
||||
|
||||
$sum = $journals->sum(
|
||||
$journals = $repository->getJournals($tag);
|
||||
$sum = $journals->sum(
|
||||
function (TransactionJournal $journal) {
|
||||
return TransactionJournal::amount($journal);
|
||||
}
|
||||
|
@@ -131,6 +131,24 @@ class TagRepository implements TagRepositoryInterface
|
||||
return $tags;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Tag $tag
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
public function getJournals(Tag $tag) : Collection
|
||||
{
|
||||
/** @var Collection $journals */
|
||||
$journals = $tag
|
||||
->transactionJournals()
|
||||
->sortCorrectly()
|
||||
->expanded()
|
||||
->groupBy(['tag_transaction_journal.tag_id'])
|
||||
->get(TransactionJournal::queryFields());
|
||||
|
||||
return $journals;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $data
|
||||
*
|
||||
|
@@ -33,6 +33,13 @@ interface TagRepositoryInterface
|
||||
*/
|
||||
public function connect(TransactionJournal $journal, Tag $tag): bool;
|
||||
|
||||
/**
|
||||
* @param Tag $tag
|
||||
*
|
||||
* @return Collection
|
||||
*/
|
||||
public function getJournals(Tag $tag) : Collection;
|
||||
|
||||
/**
|
||||
* This method destroys a tag.
|
||||
*
|
||||
|
Reference in New Issue
Block a user