diff --git a/src/QUI/ERP/Shipping/Order/Shipping.php b/src/QUI/ERP/Shipping/Order/Shipping.php index 831fafcc30881ce7c5d7a0af8f3c8f7ebb58d465..608ec2a66faaf836cef05a72f6bd5b80436b52ae 100644 --- a/src/QUI/ERP/Shipping/Order/Shipping.php +++ b/src/QUI/ERP/Shipping/Order/Shipping.php @@ -208,27 +208,11 @@ public function validate() } /** - * @return array + * @return QUI\ERP\Shipping\Types\ShippingEntry[] */ protected function getValidShipping() { - $Order = $this->getOrder(); - $User = $Order->getCustomer(); - - $userShipping = QUI\ERP\Shipping\Shipping::getInstance()->getUserShipping($User, $Order); - $shippingList = []; - - foreach ($userShipping as $ShippingEntry) { - $ShippingEntry->setOrder($Order); - - if ($ShippingEntry->isValid() - && $ShippingEntry->canUsedInOrder($Order) - && $ShippingEntry->canUsedBy($User, $Order)) { - $shippingList[] = $ShippingEntry; - } - } - - return $shippingList; + return ShippingHandler::getInstance()->getValidShippingEntriesByOrder($this->getOrder()); } /** diff --git a/src/QUI/ERP/Shipping/Shipping.php b/src/QUI/ERP/Shipping/Shipping.php index 932111171223753f5135e471d12cd82a10a18bd9..77695a62097c33cb6dbb02fe9220917678b2d86b 100644 --- a/src/QUI/ERP/Shipping/Shipping.php +++ b/src/QUI/ERP/Shipping/Shipping.php @@ -278,6 +278,32 @@ public function getUserShipping($User = null, $Order = null) }); } + /** + * Get all valid shipping entries for an order + * + * @param QUI\ERP\Order\AbstractOrder $Order + * @return QUI\ERP\Shipping\Types\ShippingEntry[] + */ + public function getValidShippingEntriesByOrder(QUI\ERP\Order\AbstractOrder $Order) + { + $User = $Order->getCustomer(); + + $userShipping = QUI\ERP\Shipping\Shipping::getInstance()->getUserShipping($User, $Order); + $shippingList = []; + + foreach ($userShipping as $ShippingEntry) { + $ShippingEntry->setOrder($Order); + + if ($ShippingEntry->isValid() + && $ShippingEntry->canUsedInOrder($Order) + && $ShippingEntry->canUsedBy($User, $Order)) { + $shippingList[] = $ShippingEntry; + } + } + + return $shippingList; + } + /** * Return the unit field ids, for the shipping rule definition *