![]() 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/Ecombricks/InventoryQuote/Plugin/Model/ |
<?php /** * Copyright © eComBricks. All rights reserved. * See COPYING.txt for license details. */ namespace Ecombricks\InventoryQuote\Plugin\Model; /** * Quote management model plugin */ class QuoteManagement { /** * Quote config * * @var \Ecombricks\InventoryQuote\Model\Config */ protected $quoteConfig; /** * Constructor * * @param \Ecombricks\InventoryQuote\Model\Config $quoteConfig * @retun void */ public function __construct( \Ecombricks\InventoryQuote\Model\Config $quoteConfig ) { $this->quoteConfig = $quoteConfig; } /** * Around submit * * @param \Magento\Quote\Model\QuoteManagement $subject * @param \Closure $proceed * @param \Magento\Quote\Model\Quote $quote * @param array $orderData * @return mixed * @throws \Exception * @throws \Magento\Framework\Exception\LocalizedException */ public function aroundSubmit( \Magento\Quote\Model\QuoteManagement $subject, \Closure $proceed, \Magento\Quote\Model\Quote $quote, $orderData = [] ) { if (!$this->quoteConfig->isSplitOrder()) { return $proceed($quote, $orderData); } return $subject->inventorySubmit($quote, $orderData); } /** * Around place order * * @param \Magento\Quote\Model\QuoteManagement $subject * @param \Closure $proceed * @param int $cartId * @param \Magento\Quote\Api\Data\PaymentInterface|null $paymentMethod * @throws \Magento\Framework\Exception\CouldNotSaveException * @return mixed */ public function aroundPlaceOrder( \Magento\Quote\Model\QuoteManagement $subject, \Closure $proceed, $cartId, \Magento\Quote\Api\Data\PaymentInterface $paymentMethod = null ) { if (!$this->quoteConfig->isSplitOrder()) { return $proceed($cartId, $paymentMethod); } return $subject->inventoryPlaceOrder($cartId, $paymentMethod); } }