diff --git a/app/Helpers/Report/ReportQueryInterface.php b/app/Helpers/Report/ReportQueryInterface.php index bcf36e45da..7d9d2e33de 100644 --- a/app/Helpers/Report/ReportQueryInterface.php +++ b/app/Helpers/Report/ReportQueryInterface.php @@ -15,6 +15,32 @@ use Illuminate\Support\Collection; interface ReportQueryInterface { + /** + * This method returns all "expense" journals in a certain period, which are both transfers to a shared account + * and "ordinary" withdrawals. The query used is almost equal to ReportQueryInterface::journalsByRevenueAccount but it does + * not group and returns different fields. + * + * @param Carbon $start + * @param Carbon $end + * @param bool $includeShared + * + * @return Collection + * + */ + public function expenseInPeriod(Carbon $start, Carbon $end, $includeShared = false); + + /** + * See ReportQueryInterface::incomeInPeriodCorrected + * + * @param Carbon $start + * @param Carbon $end + * @param bool $includeShared + * + * @return Collection + * + */ + public function expenseInPeriodCorrected(Carbon $start, Carbon $end, $includeShared = false); + /** * Get a users accounts combined with various meta-data related to the start and end date. * @@ -26,7 +52,6 @@ interface ReportQueryInterface */ public function getAllAccounts(Carbon $start, Carbon $end, $includeShared = false); - /** * This method returns all "income" journals in a certain period, which are both transfers from a shared account * and "ordinary" deposits. The query used is almost equal to ReportQueryInterface::journalsByRevenueAccount but it does @@ -42,19 +67,17 @@ interface ReportQueryInterface public function incomeInPeriod(Carbon $start, Carbon $end, $includeShared = false); /** - * This method returns all "expense" journals in a certain period, which are both transfers to a shared account - * and "ordinary" withdrawals. The query used is almost equal to ReportQueryInterface::journalsByRevenueAccount but it does - * not group and returns different fields. + * This method works the same way as ReportQueryInterface::incomeInPeriod does, but instead of returning results + * will simply list the transaction journals only. This should allow any follow up counting to be accurate with + * regards to tags. * * @param Carbon $start * @param Carbon $end * @param bool $includeShared * * @return Collection - * */ - public function expenseInPeriod(Carbon $start, Carbon $end, $includeShared = false); - + public function incomeInPeriodCorrected(Carbon $start, Carbon $end, $includeShared = false); /** * @param Account $account