firefly-iii/app/Helpers/Collection/BalanceLine.php

103 lines
1.8 KiB
PHP
Raw Normal View History

2015-05-16 07:51:23 -05:00
<?php
namespace FireflyIII\Helpers\Collection;
use FireflyIII\Models\Budget as BudgetModel;
use Illuminate\Support\Collection;
/**
* Class BalanceLine
*
* @package FireflyIII\Helpers\Collection
*/
class BalanceLine
{
/** @var Collection */
protected $balanceEntries;
2015-05-16 08:43:58 -05:00
2015-05-16 07:51:23 -05:00
/** @var BudgetModel */
protected $budget;
2015-05-16 08:43:58 -05:00
/** @var float */
protected $budgetAmount = 0.0;
2015-05-16 07:51:23 -05:00
/**
*
*/
public function __construct()
{
$this->balanceEntries = new Collection;
}
2015-05-16 08:43:58 -05:00
/**
* @param BalanceEntry $balanceEntry
*/
2015-05-16 07:51:23 -05:00
public function addBalanceEntry(BalanceEntry $balanceEntry)
{
$this->balanceEntries->push($balanceEntry);
}
/**
* @return Collection
*/
public function getBalanceEntries()
{
return $this->balanceEntries;
}
/**
* @param Collection $balanceEntries
*/
public function setBalanceEntries($balanceEntries)
{
$this->balanceEntries = $balanceEntries;
}
/**
* @return BudgetModel
*/
public function getBudget()
{
return $this->budget;
}
/**
* @param BudgetModel $budget
*/
public function setBudget($budget)
{
$this->budget = $budget;
}
2015-05-16 08:43:58 -05:00
/**
* @return float
*/
public function getBudgetAmount()
{
return $this->budgetAmount;
}
/**
* @param float $budgetAmount
*/
public function setBudgetAmount($budgetAmount)
{
$this->budgetAmount = $budgetAmount;
}
/**
* @return float
*/
public function left() {
$start = $this->getBudgetAmount();
/** @var BalanceEntry $balanceEntry */
foreach($this->getBalanceEntries() as $balanceEntry) {
$start += $balanceEntry->getSpent();
}
return $start;
}
2015-05-16 07:51:23 -05:00
}