diff --git a/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php b/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php index 4a928c26a26631c10021587756478b93ad13da00..7c96473f82d7cc4441f6a7b95a5d5973acd68746 100644 --- a/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php +++ b/src/QUI/ERP/Order/Controls/AbstractOrderingStep.php @@ -7,6 +7,7 @@ namespace QUI\ERP\Order\Controls; use QUI; +use QUI\ERP\Order\AbstractOrder; use QUI\Locale; use ReflectionClass; @@ -48,11 +49,15 @@ public function getIcon(): string /** * Return the current order * - * @return QUI\ERP\Order\AbstractOrder + * @return AbstractOrder|null */ - public function getOrder(): QUI\ERP\Order\AbstractOrder + public function getOrder(): ?QUI\ERP\Order\AbstractOrder { - return $this->getAttribute('Order'); + if ($this->getAttribute('Order') instanceof QUI\ERP\Order\AbstractOrder) { + return $this->getAttribute('Order'); + } + + return null; } /** diff --git a/src/QUI/ERP/Order/Controls/Order/Order.php b/src/QUI/ERP/Order/Controls/Order/Order.php index 512d35544c9d7a16fd4abe6233b9b8deab7048b2..8a4a47179a7edf9cdbacc9921a82464d6e8f79c8 100644 --- a/src/QUI/ERP/Order/Controls/Order/Order.php +++ b/src/QUI/ERP/Order/Controls/Order/Order.php @@ -21,7 +21,7 @@ class Order extends QUI\Control /** * @var null|QUI\ERP\Order\AbstractOrder */ - protected QUI\ERP\Order\AbstractOrder|null $Order = null; + protected QUI\ERP\Order\AbstractOrder | null $Order = null; /** * Order constructor. @@ -83,16 +83,12 @@ public function getBody(): string if ($Order->hasInvoice()) { $Invoice = $Order->getInvoice(); } - - if ($Invoice instanceof QUI\ERP\Accounting\Invoice\InvoiceTemporary) { - $View->setAttribute('downloadLink', false); - } } catch (QUI\Exception $Exception) { QUI\System\Log::writeDebugException($Exception); + } - if ($Invoice instanceof QUI\ERP\Accounting\Invoice\InvoiceTemporary) { - $View->setAttribute('downloadLink', false); - } + if ($Invoice instanceof QUI\ERP\Accounting\Invoice\InvoiceTemporary) { + $View->setAttribute('downloadLink', false); } switch ($this->getAttribute('template')) { diff --git a/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php b/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php index 52f058fd13d6d3fe4a63f62630ddbe5ce97e5411..0a269e9ef17f211ca91cf00b687b3664a8b9c777 100644 --- a/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php +++ b/src/QUI/ERP/Order/Controls/OrderProcess/Checkout.php @@ -254,7 +254,9 @@ public function forceSave(): void $Order->setData('orderedWithCosts', 1); $Order->setData('orderedWithCostsPayment', $Payment->getId()); - $Order->save(); + if (method_exists($Order, 'save')) { + $Order->save(); + } } /** diff --git a/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php b/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php index e62706a8d089396163ca83963226de4cafa9cf8d..7b4c1713195d6278a5d200628d379c5593fee550 100644 --- a/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php +++ b/src/QUI/ERP/Order/Controls/OrderProcess/CustomerData.php @@ -64,14 +64,7 @@ public function getBody(): string } if (!$Address) { - try { - /* @var $User User */ - $Address = $User->getStandardAddress(); - } catch (QUI\Exception) { - // user has no address - // create a new standard address - $Address = $User->addAddress(); - } + $Address = $User->getStandardAddress(); } try { @@ -83,10 +76,6 @@ public function getBody(): string $isUserB2B = function () use ($User) { - if (!$User) { - return ''; - } - if ($User->getAttribute('quiqqer.erp.isNettoUser') === QUI\ERP\Utils\User::IS_NETTO_USER) { return ' selected="selected"'; }