Files
firefly-iii/app/Helpers/Report/ReportHelperInterface.php

126 lines
3.1 KiB
PHP
Raw Normal View History

2015-02-23 20:25:48 +01:00
<?php
namespace FireflyIII\Helpers\Report;
use Carbon\Carbon;
2015-05-26 12:08:46 +02:00
use FireflyIII\Helpers\Collection\Account as AccountCollection;
2015-05-16 14:51:23 +02:00
use FireflyIII\Helpers\Collection\Balance;
2015-06-03 21:25:11 +02:00
use FireflyIII\Helpers\Collection\Bill as BillCollection;
2015-05-16 13:53:08 +02:00
use FireflyIII\Helpers\Collection\Budget as BudgetCollection;
use FireflyIII\Helpers\Collection\Category as CategoryCollection;
2015-05-16 14:51:23 +02:00
use FireflyIII\Helpers\Collection\Expense;
use FireflyIII\Helpers\Collection\Income;
use Illuminate\Support\Collection;
2015-02-23 20:25:48 +01:00
/**
* Interface ReportHelperInterface
*
* @package FireflyIII\Helpers\Report
*/
interface ReportHelperInterface
{
/**
2015-05-16 13:06:38 +02:00
* This method generates a full report for the given period on all
* the users asset and cash accounts.
2015-03-10 19:57:20 +01:00
*
2015-05-16 13:06:38 +02:00
* @param Carbon $date
* @param Carbon $end
* @param boolean $shared
*
2015-05-26 12:08:46 +02:00
* @return AccountCollection
2015-05-16 13:06:38 +02:00
*/
public function getAccountReport(Carbon $date, Carbon $end, $shared);
/**
* This method generates a full report for the given period on all
* given accounts
*
* @param Carbon $start
* @param Carbon $end
* @param Collection $accounts
*
* @return AccountCollection
*/
2015-12-06 13:17:00 +01:00
public function getAccountReportForList(Carbon $start, Carbon $end, Collection $accounts);
/**
* This method generates a full report for the given period on all
* the users bills and their payments.
*
2015-07-07 19:09:45 +02:00
* @param Carbon $start
* @param Carbon $end
*
2015-05-26 12:08:46 +02:00
* @return BillCollection
*/
2015-07-06 22:23:34 +02:00
public function getBillReport(Carbon $start, Carbon $end);
2015-05-16 13:53:08 +02:00
/**
* @param Carbon $start
* @param Carbon $end
* @param boolean $shared
2015-05-16 14:51:23 +02:00
*
* @return Balance
*/
public function getBalanceReport(Carbon $start, Carbon $end, $shared);
/**
* @param Carbon $start
* @param Carbon $end
* @param boolean $shared
2015-05-16 13:53:08 +02:00
*
* @return BudgetCollection
*/
public function getBudgetReport(Carbon $start, Carbon $end, $shared);
/**
* @param Carbon $start
* @param Carbon $end
* @param boolean $shared
*
* @return CategoryCollection
*/
public function getCategoryReport(Carbon $start, Carbon $end, $shared);
2015-05-16 13:06:38 +02:00
/**
* Get a full report on the users expenses during the period.
*
* @param Carbon $start
* @param Carbon $end
* @param boolean $shared
*
* @return Expense
*/
public function getExpenseReport($start, $end, $shared);
/**
* Get a full report on the users incomes during the period.
*
* @param Carbon $start
* @param Carbon $end
* @param boolean $shared
2015-02-23 20:25:48 +01:00
*
2015-05-16 13:06:38 +02:00
* @return Income
2015-02-23 20:25:48 +01:00
*/
2015-05-16 13:06:38 +02:00
public function getIncomeReport($start, $end, $shared);
2015-02-23 20:25:48 +01:00
/**
* Get a full report on the users incomes during the period for the given accounts.
*
* @param Carbon $start
* @param Carbon $end
* @param Collection $accounts
*
* @return Income
*/
public function getIncomeReportForList($start, $end, Collection $accounts);
2015-02-23 21:19:16 +01:00
/**
* @param Carbon $date
*
* @return array
*/
2015-03-10 19:57:20 +01:00
public function listOfMonths(Carbon $date);
2015-02-23 20:25:48 +01:00
2015-03-29 08:14:32 +02:00
}