From 954f606a1d64e7654a9ee4aacd672ed9df45054f Mon Sep 17 00:00:00 2001 From: Hillel Coren Date: Tue, 27 Feb 2018 09:14:39 +0200 Subject: [PATCH] Adding charts to reports --- app/Ninja/Reports/AbstractReport.php | 4 ++++ app/Ninja/Reports/ClientReport.php | 2 ++ app/Ninja/Reports/CreditReport.php | 2 ++ .../views/reports/chart_builder.blade.php | 19 +++++++------------ 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/app/Ninja/Reports/AbstractReport.php b/app/Ninja/Reports/AbstractReport.php index a7f903da8d3a..59a306e09c19 100644 --- a/app/Ninja/Reports/AbstractReport.php +++ b/app/Ninja/Reports/AbstractReport.php @@ -174,6 +174,10 @@ class AbstractReport protected function formatDate($date) { + if (! $date instanceof \DateTime) { + $date = new \DateTime($date); + } + $groupBy = $this->chartGroupBy(); $dateFormat = $groupBy == 'DAY' ? 'z' : ($groupBy == 'MONTH' ? 'm' : ''); diff --git a/app/Ninja/Reports/ClientReport.php b/app/Ninja/Reports/ClientReport.php index a51e0c6c2d3c..97d5030c9e9b 100644 --- a/app/Ninja/Reports/ClientReport.php +++ b/app/Ninja/Reports/ClientReport.php @@ -55,6 +55,8 @@ class ClientReport extends AbstractReport foreach ($client->invoices as $invoice) { $amount += $invoice->amount; $paid += $invoice->getAmountPaid(); + + $this->addChartData(ENTITY_INVOICE, $invoice->invoice_date, $invoice->amount); } $row = [ diff --git a/app/Ninja/Reports/CreditReport.php b/app/Ninja/Reports/CreditReport.php index 6ba311c3897f..eb6b2678247c 100644 --- a/app/Ninja/Reports/CreditReport.php +++ b/app/Ninja/Reports/CreditReport.php @@ -39,6 +39,8 @@ class CreditReport extends AbstractReport foreach ($client->credits as $credit) { $amount += $credit->amount; $balance += $credit->balance; + + $this->addChartData(ENTITY_CREDIT, $credit->credit_date, $credit->amount); } if (! $amount && ! $balance) { diff --git a/resources/views/reports/chart_builder.blade.php b/resources/views/reports/chart_builder.blade.php index 9eab77745e0e..4d0c0c34a8ca 100644 --- a/resources/views/reports/chart_builder.blade.php +++ b/resources/views/reports/chart_builder.blade.php @@ -25,19 +25,14 @@ function loadChart(data) { return moment(item[0].xLabel).format("{{ $account->getMomentDateFormat() }}"); }, label: function(item, data) { + //return label + formatMoney(item.yLabel, chartCurrencyId, account.country_id); + /* - if (item.datasetIndex == 0) { - var label = " {!! trans('texts.invoices') !!}: "; - } else if (item.datasetIndex == 1) { - var label = " {!! trans('texts.payments') !!}: "; - } else if (item.datasetIndex == 2) { - var label = " {!! trans('texts.expenses') !!}: "; - } - - return label + formatMoney(item.yLabel, chartCurrencyId, account.country_id); + console.log('tooltip:'); + console.log(item); + console.log(data); */ - - return 'test'; + return item.yLabel; } } }, @@ -76,7 +71,7 @@ var chartGroupBy = "{{ $report->chartGroupBy() }}"; $(function() { var chartData = {!! json_encode($report->getChartData()) !!}; - console.log(chartData); + //console.log(chartData); loadChart(chartData); });