From 93958e873d1a712dddb1f46693e6d80a52ff2c0e Mon Sep 17 00:00:00 2001 From: Henning Leutz <leutz@pcsg.de> Date: Mon, 12 Aug 2019 10:38:32 +0200 Subject: [PATCH] feat: set shipping address --- src/QUI/ERP/Shipping/EventHandler.php | 10 +++++++--- src/QUI/ERP/Shipping/Order/ShippingAddress.php | 7 ++++--- src/QUI/ERP/Shipping/Shipping.php | 11 ++++------- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/QUI/ERP/Shipping/EventHandler.php b/src/QUI/ERP/Shipping/EventHandler.php index 97d062b..d1f6380 100644 --- a/src/QUI/ERP/Shipping/EventHandler.php +++ b/src/QUI/ERP/Shipping/EventHandler.php @@ -210,8 +210,12 @@ public static function onQuiqqerOrderCustomerDataSave( return; } - $Order->setData('shipping-address', $Address->getAttributes()); - $Order->setData('shipping-address-id', $Address->getId()); + + $ErpAddress = new QUI\ERP\Address( + \array_merge($Address->getAttributes(), ['id' => $Address->getId()]) + ); + + $Order->setDeliveryAddress($ErpAddress); $Order->save(); } @@ -293,7 +297,7 @@ public static function onOrderConfirmationEnd( $Engine->fetch(dirname(__FILE__).'/Mails/orderConfirmation.html') ); } catch (QUI\Exception $Exception) { - QUI\System\Log::writeDebugException($Exception);; + QUI\System\Log::writeDebugException($Exception); } } } diff --git a/src/QUI/ERP/Shipping/Order/ShippingAddress.php b/src/QUI/ERP/Shipping/Order/ShippingAddress.php index 2c05049..f085670 100644 --- a/src/QUI/ERP/Shipping/Order/ShippingAddress.php +++ b/src/QUI/ERP/Shipping/Order/ShippingAddress.php @@ -73,10 +73,11 @@ public function getBody() // current address $currentAddress = ''; - $shippingAddress = $Order->getDataEntry('shipping-address-id'); + $Shipping = QUI\ERP\Shipping\Shipping::getInstance()->getShippingByObject($Order); + $ShippingAddress = $Shipping->getAddress(); - if (!empty($shippingAddress)) { - $currentAddress = $shippingAddress; + if ($ShippingAddress) { + $currentAddress = $ShippingAddress->getId(); } elseif ($User->getAttribute('quiqqer.delivery.address')) { $currentAddress = $User->getAttribute('quiqqer.delivery.address'); } diff --git a/src/QUI/ERP/Shipping/Shipping.php b/src/QUI/ERP/Shipping/Shipping.php index 8301a8d..5c51416 100644 --- a/src/QUI/ERP/Shipping/Shipping.php +++ b/src/QUI/ERP/Shipping/Shipping.php @@ -307,16 +307,13 @@ public function getShippingByObject($Object) return null; } - $Shipping = $Object->getShipping(); - $addressData = $Object->getDataEntry('shipping-address'); + $Shipping = $Object->getShipping(); + $Delivery = $Object->getDeliveryAddress(); - if ($addressData) { - $Shipping->setAddress( - new QUI\ERP\Address($addressData) - ); + if ($Delivery) { + $Shipping->setAddress($Delivery); } - return $Shipping; } -- GitLab