fixed null project for advanced invoice calculator (#462)

This commit is contained in:
Kevin Papst
2018-12-03 22:36:38 +01:00
committed by GitHub
parent 35305ad107
commit c58c12ea3d
5 changed files with 18 additions and 0 deletions

View File

@@ -44,6 +44,10 @@ abstract class AbstractMergedCalculator extends AbstractCalculator
$timesheet->setActivity($entry->getActivity()); $timesheet->setActivity($entry->getActivity());
} }
if (null === $timesheet->getProject()) {
$timesheet->setProject($entry->getProject());
}
if (empty($timesheet->getDescription())) { if (empty($timesheet->getDescription())) {
$timesheet->setDescription($entry->getActivity()->getName()); $timesheet->setDescription($entry->getActivity()->getName());
} }

View File

@@ -176,6 +176,7 @@ trait RendererTrait
'entry.date' => $this->getFormattedDateTime($begin), 'entry.date' => $this->getFormattedDateTime($begin),
'entry.user_id' => $user->getId(), 'entry.user_id' => $user->getId(),
'entry.user_name' => $user->getUsername(), 'entry.user_name' => $user->getUsername(),
'entry.user_title' => $user->getTitle(),
'entry.user_alias' => $user->getAlias(), 'entry.user_alias' => $user->getAlias(),
'entry.activity' => $activity->getName(), 'entry.activity' => $activity->getName(),
'entry.activity_id' => $activity->getId(), 'entry.activity_id' => $activity->getId(),

View File

@@ -12,6 +12,7 @@ namespace App\Tests\Invoice\Calculator;
use App\Entity\Activity; use App\Entity\Activity;
use App\Entity\Customer; use App\Entity\Customer;
use App\Entity\InvoiceTemplate; use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet; use App\Entity\Timesheet;
use App\Entity\User; use App\Entity\User;
use App\Invoice\Calculator\ActivityInvoiceCalculator; use App\Invoice\Calculator\ActivityInvoiceCalculator;
@@ -50,6 +51,7 @@ class ActivityInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(293.27) ->setRate(293.27)
->setUser($user) ->setUser($user)
->setActivity($activity1) ->setActivity($activity1)
->setProject((new Project())->setName('bar'));
; ;
$timesheet2 = new Timesheet(); $timesheet2 = new Timesheet();
@@ -58,6 +60,7 @@ class ActivityInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(84.75) ->setRate(84.75)
->setUser($user) ->setUser($user)
->setActivity($activity2) ->setActivity($activity2)
->setProject((new Project())->setName('bar'));
; ;
$timesheet3 = new Timesheet(); $timesheet3 = new Timesheet();
@@ -66,6 +69,7 @@ class ActivityInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(111.11) ->setRate(111.11)
->setUser($user) ->setUser($user)
->setActivity($activity1) ->setActivity($activity1)
->setProject((new Project())->setName('bar'));
; ;
$timesheet4 = new Timesheet(); $timesheet4 = new Timesheet();
@@ -74,6 +78,7 @@ class ActivityInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(1947.99) ->setRate(1947.99)
->setUser($user) ->setUser($user)
->setActivity($activity2) ->setActivity($activity2)
->setProject((new Project())->setName('bar'));
; ;
$timesheet5 = new Timesheet(); $timesheet5 = new Timesheet();
@@ -82,6 +87,7 @@ class ActivityInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(84) ->setRate(84)
->setUser(new User()) ->setUser(new User())
->setActivity(new Activity()) ->setActivity(new Activity())
->setProject((new Project())->setName('bar'));
; ;
$entries = [$timesheet, $timesheet2, $timesheet3, $timesheet4, $timesheet5]; $entries = [$timesheet, $timesheet2, $timesheet3, $timesheet4, $timesheet5];

View File

@@ -12,6 +12,7 @@ namespace App\Tests\Invoice\Calculator;
use App\Entity\Activity; use App\Entity\Activity;
use App\Entity\Customer; use App\Entity\Customer;
use App\Entity\InvoiceTemplate; use App\Entity\InvoiceTemplate;
use App\Entity\Project;
use App\Entity\Timesheet; use App\Entity\Timesheet;
use App\Entity\User; use App\Entity\User;
use App\Invoice\Calculator\UserInvoiceCalculator; use App\Invoice\Calculator\UserInvoiceCalculator;
@@ -50,6 +51,7 @@ class UserInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(293.27) ->setRate(293.27)
->setUser($user1) ->setUser($user1)
->setActivity($activity) ->setActivity($activity)
->setProject((new Project())->setName('bar'));
; ;
$timesheet2 = new Timesheet(); $timesheet2 = new Timesheet();
@@ -58,6 +60,7 @@ class UserInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(84.75) ->setRate(84.75)
->setUser($user2) ->setUser($user2)
->setActivity($activity) ->setActivity($activity)
->setProject((new Project())->setName('bar'));
; ;
$timesheet3 = new Timesheet(); $timesheet3 = new Timesheet();
@@ -66,6 +69,7 @@ class UserInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(111.11) ->setRate(111.11)
->setUser($user1) ->setUser($user1)
->setActivity($activity) ->setActivity($activity)
->setProject((new Project())->setName('bar'));
; ;
$timesheet4 = new Timesheet(); $timesheet4 = new Timesheet();
@@ -74,6 +78,7 @@ class UserInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(1947.99) ->setRate(1947.99)
->setUser($user2) ->setUser($user2)
->setActivity($activity) ->setActivity($activity)
->setProject((new Project())->setName('bar'));
; ;
$timesheet5 = new Timesheet(); $timesheet5 = new Timesheet();
@@ -82,6 +87,7 @@ class UserInvoiceCalculatorTest extends AbstractCalculatorTest
->setRate(84) ->setRate(84)
->setUser(new User()) ->setUser(new User())
->setActivity($activity) ->setActivity($activity)
->setProject((new Project())->setName('bar'));
; ;
$entries = [$timesheet, $timesheet2, $timesheet3, $timesheet4, $timesheet5]; $entries = [$timesheet, $timesheet2, $timesheet3, $timesheet4, $timesheet5];

View File

@@ -111,6 +111,7 @@ class DebugRendererTest extends AbstractRendererTest
'entry.user_id', 'entry.user_id',
'entry.user_name', 'entry.user_name',
'entry.user_alias', 'entry.user_alias',
'entry.user_title',
'entry.activity', 'entry.activity',
'entry.activity_id', 'entry.activity_id',
'entry.project', 'entry.project',