allow custom export repositories (#2182)

This commit is contained in:
Kevin Papst
2020-12-10 15:00:14 +01:00
committed by GitHub
parent c3fe8d1c39
commit 7a3388646b
18 changed files with 320 additions and 72 deletions

View File

@@ -36,16 +36,22 @@ final class TimesheetInvoiceItemRepository implements InvoiceItemRepositoryInter
}
/**
* @param Timesheet[] $invoiceItems
* @param InvoiceItemInterface[] $invoiceItems
*/
public function setExported(array $invoiceItems)
{
$timesheets = [];
foreach ($invoiceItems as $item) {
if (!$item instanceof Timesheet) {
throw new \InvalidArgumentException('TimesheetInvoiceItemRepository only supports Timesheet entities');
if ($item instanceof Timesheet) {
$timesheets[] = $item;
}
}
$this->repository->setExported($invoiceItems);
if (empty($timesheets)) {
return;
}
$this->repository->setExported($timesheets);
}
}