Можно ли получить QUOTEID, которая использовалась после создания OrderID

magento.stackexchange https://magento.stackexchange.com/questions/6799

Вопрос

Я отслеживаю движения клиентов через процесс заказа, используя их QuoteID
Mage::helper('checkout/cart')->getQuote() - который создается, как только клиент объявляет продукт для корзины, однако после размещения заказа (например, на странице успеха) QuoteId больше не доступна (потому что корзина больше не существует), а OrderID становится доступным Анкет Можно ли получить Quoteid, которая использовалась для создания OrderID из OrderID?

Это было полезно?

Решение

Для целей моего вопроса я хотел получить QUOTEID на странице успеха, с учетом этого, что QUOTEID хранится в объекте заказа и может быть доступен через следующее

$order = Mage::getModel('sales/order')->loadByIncrementId(Mage::getSingleton('checkout/session')->getLastRealOrderId());
$quoteId = $order['quote_id'];

Другие советы

Полагаю Это безумно Потому что сохраненное значение в порядке quote_id. Анкет Если вам нужно искать номер заказа из цитаты, используйте поле reserved_order_id.

Несмотря на, если вы все еще хотите сопоставить идентификатор цитаты с идентификатором приращения заказа, вам нужно только переопределить класс Mage_Sales_Model_Resource_Quote и метод getReservedOrderId как таковой:

public function getReservedOrderId($quote)
{
    return $quote->getId();
}

Опять же, я думаю, что это плохая идея. Это может иметь побочные эффекты, которые я не рассмотрел.

В любом случае, удачи!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top