/** * @param \Generated\Shared\Transfer\InvoiceTransfer $invoiceTransfer * * @throws \Pav\Zed\InvoiceDocument\Business\Exception\InvoiceTypeHasNoVersionException * @return \Generated\Shared\Transfer\InvoiceTransfer */ protected function addTemplateVersion(InvoiceTransfer $invoiceTransfer) { $invoiceType = $invoiceTransfer->getInvoiceType(); $templateVersion = $invoiceTransfer->getTemplateVersion(); if ($templateVersion === null) { $templateVersion = $this->invoiceDocumentConfig->getTemplateVersionByType($invoiceType); $invoiceTransfer->setTemplateVersion($templateVersion); $this->invoiceVersionWriter->writeInvoiceVersion($invoiceTransfer); } return $invoiceTransfer; }
/** * @param \Generated\Shared\Transfer\InvoiceTransfer $invoiceTransfer * * @throws \Propel\Runtime\Exception\PropelException * @return \Generated\Shared\Transfer\InvoiceTransfer */ protected function persistInvoice(InvoiceTransfer $invoiceTransfer) { $invoiceType = $this->queryContainer->queryInvoiceTypeByName($invoiceTransfer->getInvoiceType())->findOne(); $invoice = $this->queryContainer->createInvoiceEntity(); $invoice->fromArray($invoiceTransfer->toArray()); $invoice->setInvoiceType($invoiceType); $invoice->save(); $idInvoice = $invoice->getIdInvoice(); $invoiceTransfer->setIdInvoice($idInvoice); return $invoiceTransfer; }
/** * @param \Generated\Shared\Transfer\InvoiceTransfer $invoiceTransfer * * @return string */ public function createFileName(InvoiceTransfer $invoiceTransfer) { return sprintf('%s-%s.pdf', $invoiceTransfer->getInvoiceType(), $invoiceTransfer->getInvoiceReference()); }