2016-06-28 103 views
0

基本上,即時嘗試做一個金融部分magento,我已經研究如何下單作爲財務提交的一部分,無論我看看使用下面的代碼(不確切) :Magento無效 - 方法Mage_Sales_Model_Order :: assignCustomer

$order = Mage::getModel('sales/order'); 
$store = Mage::app()->getStore(); 
$website_id = Mage::app()->getWebsite()->getStoreId(); 
$quote = Mage::getModel('sales/order')->setStoreId($store->getId()); 
$customer = Mage::getSingleton('customer/session')->getCustomer(); 
$quote->assignCustomer($customer); 
$quote->setSendCconfirmation(1); 
$product_ids = array(); 
$cart = Mage::getModel('checkout/cart')->getQuote(); 

foreach($cart->getAllVisibleItems() as $item) { 
    $quote->addProduct($item->getProduct() , $item->getQty()); 
} 

$shipping = $quote->getShippingAddress(); 
$shipping->setCollectShippingRates(true)->collectShippingRates()->setShippingMethod('flatrate_flatrate')->setPaymentMethod(array(
    'method' => 'checkmo' 
)); 
try { 
    $service = Mage::getModel('sales/service_quote', $quote); 
    $service->submitAll(); 
    $increment_id = $service->getOrder()->getRealOrderId(); 
} 

catch(Exception $e) { 
    die($e->getMessage()); 
} 

catch(Mage_Core_Exception $d) { 
    die($d->getMessage()); 
} 

出於某種原因,我不斷收到此錯誤:

this is the exception screen.

回答

0

我加載從會話的客戶,並沒有提供正確的模型參數,對任何人也找這個答案WER;

$customer = Mage::getModel('customer/customer')->loadByEmail(Mage::getSingleton('customer/session')->getCustomer()->getEmail()); 
+0

您應該通過編輯原始帖子來將這些詳細信息添加到您的問題。 – dhh

+1

但ive回答了我自己的問題,我只遵循規則... – Hudson

+0

對不起,沒有注意到這是答案。 – dhh