This commit is contained in:
James Cole
2014-09-27 07:06:30 +02:00
parent 78e80530d3
commit 217483639d
5 changed files with 21 additions and 60 deletions

View File

@@ -388,31 +388,32 @@ class ChartController extends BaseController
] ]
]; ];
// Get all budgets.
/*
* Get all budgets.
*/
$budgets = \Auth::user()->budgets()->orderBy('name', 'ASC')->get(); $budgets = \Auth::user()->budgets()->orderBy('name', 'ASC')->get();
$budgetIds = []; $budgetIds = [];
/** @var \Budget $budget */ /** @var \Budget $budget */
foreach ($budgets as $budget) { foreach ($budgets as $budget) {
$budgetIds[] = $budget->id; $budgetIds[] = $budget->id;
/*
* Does the budget have a limit starting on $start? // Does the budget have a limit starting on $start?
*/
$rep = \LimitRepetition:: $rep = \LimitRepetition::
leftJoin('limits', 'limit_repetitions.limit_id', '=', 'limits.id')->leftJoin( leftJoin('limits', 'limit_repetitions.limit_id', '=', 'limits.id')->leftJoin(
'components', 'limits.component_id', '=', 'components.id' 'components', 'limits.component_id', '=', 'components.id'
)->where('limit_repetitions.startdate', $start->format('Y-m-d'))->where( )->where('limit_repetitions.startdate', $start->format('Y-m-d'))->where(
'components.id', $budget->id 'components.id', $budget->id
)->first(['limit_repetitions.*']); )->first(['limit_repetitions.*']);
$limit = is_null($rep) ? 0.0 : floatval($rep->amount);
$id = is_null($rep) ? null : $rep->id;
$parameter = is_null($rep) ? 'useSession=true' : '';
/* if (is_null($rep)) {
* Date range to check for expenses made? $limit = 0.0;
*/ $id = null;
$parameter = 'useSession=true';
} else {
$limit = floatval($rep->amount);
$id = $rep->id;
$parameter = '';
}
// Date range to check for expenses made?
if (is_null($rep)) { if (is_null($rep)) {
// use the session start and end for our search query // use the session start and end for our search query
$expenseStart = Session::get('start'); $expenseStart = Session::get('start');
@@ -423,17 +424,10 @@ class ChartController extends BaseController
$expenseStart = $rep->startdate; $expenseStart = $rep->startdate;
$expenseEnd = $rep->enddate; $expenseEnd = $rep->enddate;
} }
/* // How much have we spent on this budget?
* How much have we spent on this budget? $expenses = floatval($budget->transactionjournals()->before($expenseEnd)->after($expenseStart)->lessThan(0)->sum('amount')) * -1;
*/
$expenses = $budget->transactionjournals()->before($expenseEnd)->after($expenseStart)->lessThan(0)->sum(
'amount'
);
$expenses = floatval($expenses) * -1;
/* // Append to chart:
* Append to chart:
*/
if ($limit > 0 || $expenses > 0) { if ($limit > 0 || $expenses > 0) {
$data['labels'][] = $budget->name; $data['labels'][] = $budget->name;
$data['series'][0]['data'][] = [ $data['series'][0]['data'][] = [
@@ -446,9 +440,7 @@ class ChartController extends BaseController
]; ];
} }
} }
/* // Add expenses that have no budget:
* Add expenses that have no budget:
*/
$set = \Auth::user()->transactionjournals()->whereNotIn( $set = \Auth::user()->transactionjournals()->whereNotIn(
'transaction_journals.id', function ($query) use ($start, $end) { 'transaction_journals.id', function ($query) use ($start, $end) {
$query->select('transaction_journals.id')->from('transaction_journals') $query->select('transaction_journals.id')->from('transaction_journals')
@@ -462,11 +454,8 @@ class ChartController extends BaseController
->where('components.class', 'Budget'); ->where('components.class', 'Budget');
} }
)->before($end)->after($start)->lessThan(0)->transactionTypes(['Withdrawal'])->sum('amount'); )->before($end)->after($start)->lessThan(0)->transactionTypes(['Withdrawal'])->sum('amount');
/*
* This can be debugged by using get(['transaction_journals.*','transactions.amount']); // This can be debugged by using get(['transaction_journals.*','transactions.amount']);
*
*
*/
$data['labels'][] = 'No budget'; $data['labels'][] = 'No budget';
$data['series'][0]['data'][] = [ $data['series'][0]['data'][] = [
'y' => 0, 'y' => 0,

View File

@@ -1,11 +1,4 @@
<?php <?php
/**
* Created by PhpStorm.
* User: sander
* Date: 19/09/14
* Time: 21:42
*/
namespace Firefly\Exception; namespace Firefly\Exception;
/** /**

View File

@@ -1,11 +1,4 @@
<?php <?php
/**
* Created by PhpStorm.
* User: sander
* Date: 21/09/14
* Time: 20:58
*/
namespace Firefly\Helper\Controllers; namespace Firefly\Helper\Controllers;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;

View File

@@ -1,11 +1,4 @@
<?php <?php
/**
* Created by PhpStorm.
* User: sander
* Date: 21/09/14
* Time: 20:58
*/
namespace Firefly\Helper\Controllers; namespace Firefly\Helper\Controllers;
/** /**

View File

@@ -1,11 +1,4 @@
<?php <?php
/**
* Created by PhpStorm.
* User: sander
* Date: 23/08/14
* Time: 20:59
*/
namespace Firefly\Storage\Reminder; namespace Firefly\Storage\Reminder;