Well, It’s been very easy to order object to invoice using converter model.
Below are line of code to achieve it.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
<?php namespace CWM\InvoiceConvert\Model; use Magento\Sales\Model\Convert\Order; class ConvertOrderToInvoice { /** * @var Order */ private $orderConverter; public function __construct( Order $orderConverter ) { $this->orderConverter = $orderConverter; } /** * convert order to invoice * * @param \Magento\Sales\Model\Order $order * @return Magento\Sales\Model\Order\Invoice */ public function convertToInvoice(\Magento\Sales\Model\Order $order) { // function will return invoice object, it will not invoice it just convert it and can do perform some action if needed $invoice = $this->orderConverter->toInvoice($order); return $invoice; } } |