/** * @param \Spryker\Shared\Transfer\TransferInterface $sourceTransfer * @param string $invoiceType * * @throws \Pav\Zed\Invoice\Business\Exception\NoTransformerFoundForInvoiceTypeException * @return \Generated\Shared\Transfer\InvoiceTransfer */ public function createInvoice(TransferInterface $sourceTransfer, $invoiceType) { $invoiceTransformer = $this->getTransformerByInvoiceType($invoiceType); $invoiceTransfer = $invoiceTransformer->transformToInvoice($sourceTransfer); $invoiceTransfer->setInvoiceType($invoiceType); $invoiceTransfer->setInvoiceDate($this->createInvoiceDate()); $this->addReference($invoiceTransfer); $this->addFileName($invoiceTransfer); $this->addRelativePath($invoiceTransfer); $this->invoiceWriter->writeInvoice($invoiceTransfer); return $invoiceTransfer; }
/** * @param string $invoiceType * * @return void */ protected function createInvoiceType($invoiceType) { $this->invoiceWriter->writeInvoiceType($invoiceType); }