Files
2026-09-15 10:35:56 +08:00

28 lines
843 B
PHP

<?php
declare(strict_types=1);
namespace Esun\CustomerVat\Observer;
use Magento\Framework\Event\Observer;
use Magento\Framework\Event\ObserverInterface;
use Magento\Quote\Model\Quote;
use Magento\Sales\Model\Order;
class CopyVatContextToOrder implements ObserverInterface
{
private const FIELDS = ['esun_vat_id', 'esun_vat_number', 'esun_vat_country_id',
'esun_vat_company_name', 'esun_vat_exempt', 'esun_nominal_tax_rate', 'esun_tax_mode'];
public function execute(Observer $observer): void
{
$quote = $observer->getEvent()->getQuote();
$order = $observer->getEvent()->getOrder();
if (!$quote instanceof Quote || !$order instanceof Order) {
return;
}
foreach (self::FIELDS as $field) {
$order->setData($field, $quote->getData($field));
}
}
}