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