invoiceninja/app/Ninja/Reports/ActivityReport.php

45 lines
1.2 KiB
PHP
Raw Normal View History

2017-03-23 17:37:22 +02:00
<?php
namespace App\Ninja\Reports;
use App\Models\Activity;
use Auth;
class ActivityReport extends AbstractReport
{
2018-01-21 15:53:43 +02:00
public function getColumns()
{
return [
2018-01-23 20:32:11 +02:00
'date' => [],
'client' => [],
'user' => [],
'activity' => [],
2018-01-21 15:53:43 +02:00
];
}
2017-03-23 17:37:22 +02:00
public function run()
{
$account = Auth::user()->account;
2017-11-23 13:15:50 +02:00
$startDate = $this->startDate;;
$endDate = $this->endDate;
2017-03-23 17:37:22 +02:00
$activities = Activity::scope()
->with('client.contacts', 'user', 'invoice', 'payment', 'credit', 'task', 'expense', 'account')
2017-03-31 09:01:07 +03:00
->whereRaw("DATE(created_at) >= \"{$startDate}\" and DATE(created_at) <= \"$endDate\"")
->orderBy('id', 'desc');
2017-03-23 17:37:22 +02:00
foreach ($activities->get() as $activity) {
$client = $activity->client;
$this->data[] = [
$activity->present()->createdAt,
$client ? ($this->isExport ? $client->getDisplayName() : $client->present()->link) : '',
$activity->present()->user,
2017-11-23 13:15:50 +02:00
$this->isExport ? strip_tags($activity->getMessage()) : $activity->getMessage(),
2017-03-23 17:37:22 +02:00
];
}
}
}