添加产品以编程方式订购magento admin

时间:2014-12-22 14:35:09

标签: magento admin

我已经自定义了我的创建订单页面,在选择了客户和商店ID之后,我有产品信息(Ex产品A),我希望在管理员到达sales_order_create之后,那里必须有该产品(产品A) '项目订购'列表默认情况下。

提前致谢

2 个答案:

答案 0 :(得分:0)

其中一个解决方案是为名为“create_order_session_quote_initialized”的事件添加一个观察者。在观察者中,你需要添加如下内容:

$session = $observer->getSession();
if ($session->getProductAdded()) {
    return $this;
}

$product = Mage::getModel('catalog/product')->load($productId);
$session->getQuote()->addProduct($product);
$session->setProductAdded(true);

return $this;

这不是已经有效的确切代码。但我希望这会有所帮助。

答案 1 :(得分:0)

首先,我们需要用产品(产品A)初始化报价。

$quoteItem = Mage::getModel('sales/quote_item')
                ->setProduct($product)
                ->setQuote($this->getQuote())
                ->setQty($qty)
                ->setPrice($product->getPrice())
                ->save();

将此报价项目转换为订单项目。

$orderItem = Mage::getModel('sales/convert_quote')
    ->itemToOrderItem($quoteItem)
    ->save($this->getOrder->getId());