model->getEntries(); if (empty($entries)) { return []; } $invoiceItem = new InvoiceItem(); $keys = []; foreach ($entries as $entry) { $key = 'hourly_' . (string) $entry->getHourlyRate(); if (null !== $entry->getFixedRate()) { $key = 'fixed_' . (string) $entry->getFixedRate(); } if (!in_array($key, $keys)) { $keys[] = $key; } $this->mergeTimesheets($invoiceItem, $entry); } if (count($keys) > 1) { $invoiceItem->setAmount(1); $invoiceItem->setFixedRate($invoiceItem->getRate()); } $invoiceItem->setHourlyRate($invoiceItem->getRate()); return [$invoiceItem]; } /** * @return string */ public function getId(): string { return 'short'; } }