![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-sales/Block/Adminhtml/Order/Invoice/Create/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Sales\Block\Adminhtml\Order\Invoice\Create; use Magento\Framework\App\ObjectManager; use Magento\Tax\Helper\Data as TaxHelper; /** * Adminhtml invoice create form * * @api * @author Magento Core Team <[email protected]> * @since 100.0.2 */ class Form extends \Magento\Sales\Block\Adminhtml\Order\AbstractOrder { /** * @param \Magento\Backend\Block\Template\Context $context * @param \Magento\Framework\Registry $registry * @param \Magento\Sales\Helper\Admin $adminHelper * @param array $data * @param TaxHelper|null $taxHelper */ public function __construct( \Magento\Backend\Block\Template\Context $context, \Magento\Framework\Registry $registry, \Magento\Sales\Helper\Admin $adminHelper, array $data = [], ?TaxHelper $taxHelper = null ) { $data['taxHelper'] = $taxHelper ?? ObjectManager::getInstance()->get(TaxHelper::class); parent::__construct($context, $registry, $adminHelper, $data); } /** * Retrieve invoice order * * @return \Magento\Sales\Model\Order */ public function getOrder() { return $this->getInvoice()->getOrder(); } /** * Retrieve source * * @return \Magento\Sales\Model\Order\Invoice */ public function getSource() { return $this->getInvoice(); } /** * Retrieve invoice model instance * * @return \Magento\Sales\Model\Order\Invoice */ public function getInvoice() { return $this->_coreRegistry->registry('current_invoice'); } /** * Get save url * * @return string */ public function getSaveUrl() { return $this->getUrl('sales/*/save', ['order_id' => $this->getInvoice()->getOrderId()]); } /** * Check shipment availability for current invoice * * @return bool */ public function canCreateShipment() { foreach ($this->getInvoice()->getAllItems() as $item) { if ($item->getOrderItem()->getQtyToShip()) { return true; } } return false; } /** * Check invoice shipment type mismatch * * @return bool */ public function hasInvoiceShipmentTypeMismatch() { foreach ($this->getInvoice()->getAllItems() as $item) { if ($item->getOrderItem()->isChildrenCalculated() && !$item->getOrderItem()->isShipSeparately()) { return true; } } return false; } /** * Check shipment availability for partially item * * @return bool */ public function canShipPartiallyItem() { $value = $this->getOrder()->getCanShipPartiallyItem(); if ($value !== null && !$value) { return false; } return true; } /** * Return forced creating of shipment flag * * @return int */ public function getForcedShipmentCreate() { return (int)$this->getOrder()->getForcedShipmentWithInvoice(); } }