ऑर्डर आईडी द्वारा ऑर्डर विवरण प्राप्त करें


32

मुझे इसके Id द्वारा Magento में एक आदेश प्राप्त करना होगा। मैं आईडी द्वारा एक विशिष्ट आदेश कैसे लोड कर सकता हूं?

अब तक मैंने बनाई गई प्रारंभिक क्वेरी प्राप्त कर ली है:

Mage::getModel('sales/order');

जवाबों:


61

वेतन वृद्धि आईडी द्वारा एक आदेश को लोड करने के लिए:

Mage::getModel('sales/order')->loadByIncrementId('10000001'); //use a real increment order id here

इकाई आईडी द्वारा लोड करने के लिए आप बस फोन करेंगे load:

Mage::getModel('sales/order')->load(24999); //use an entity id here

मैं यह आदेश आईडी और वेतन वृद्धि आईडी द्वारा परीक्षण लेकिन यह मुझे कोई बात नहीं है और कोई त्रुटि नहीं है! magento.stackexchange.com/questions/39762/…
mahdi

मुझे यही चाहिए
FosAvance

17

आदेश विवरण प्राप्त करना कुछ घटकों पर निर्भर करता है:

  1. आदेश (सामान्य रूप से आदेश #)
  2. ऑर्डर की सामग्री (सरल बनाम विन्यास योग्य, अदृश्य आदि)
  3. वह जानकारी जिसे आप निकालना चाहते हैं (मूल्य निर्धारण बनाम अन्य जानकारी)

अपना ऑर्डर लोड करें: (db: sales_flat_order)

$OrderNumber = "100000001";//Put your order Number here
$order = Mage::getModel('sales/order')->load($OrderNumber, 'increment_id');

इसके बाद, ऑर्डर के आधार पर अपने आइटम के संग्रह को फ़िल्टर करें।

सबसे अधिक क्या होगा: (db: sales_flat_order_item)

$order->getAllVisibleItems();

जो दृश्यमान उत्पादों को दिखाएगा। इसके साथ समस्या यह है, कि इसे संग्रह से "कॉन्फ़िगर करने योग्य" आइटम मिलेगा (जो कि रिकॉर्ड में बच्चे के स्क्यू के लिए अजीब है)। मुझे लगता है कि यह SKU परिवर्तनों के मामले में अप्रत्याशित है क्योंकि ऐतिहासिक SKU अब मौजूद नहीं है। इसके बजाय, मैं इस प्रकार के रूप में एक वैकल्पिक दृष्टिकोण करना बेहतर समझता हूं।

 $orderItems = $order->getItemsCollection()
        ->addAttributeToSelect('*')
        ->addAttributeToFilter('product_type', array('eq'=>'simple'))
        ->load();
  • getItemsCollection () वास्तव में अधिकांश के लिए भ्रमित करते हुए, माता-पिता और बच्चे को वापस कर देगा। बच्चे पर ध्यान दें।
  • परंपरागत रूप से, माता-पिता (यानी। Configurable) को मूल्य निर्धारण की जानकारी होगी, जहां बच्चा (सरल) नहीं होगा। चाइल्ड (सरल उत्पाद) के साथ हम यह निर्धारित करने में सक्षम होते हैं कि कोई पैरेंट_ड है (लेकिन रिवर्स नहीं) और हम get_llVanishItems () से भी उत्पाद जानकारी को एंट्री_आईडी (रिवर्स नहीं) से हथियाने में सक्षम हैं।
  • ऑर्डर आइटम के संग्रह के माध्यम से पुनरावृति

    foreach($orderItems as $sItem) {
    
        //Ignore conf for now
        //Alt. Mage_Catalog_Model_Product_Type::TYPE_SIMPLE = 'simple';
        if($sItem->getProductType() == "simple")
        {
    
    
    
            echo "\n*********************************\nMage Order #: ".$OrderNumber."\n";
            //Simple Item Info from Order
            echo "Type: ".$sItem->getProductType()."\n";
            echo "Order Id: ".$sItem->getOrderId()."\n";
            echo "Product Id: ".$sItem->getProductId()."\n";
            echo "Item Id: ".$sItem->getId()."\n";
            echo "Item Name: ".$sItem->getName()."\n";
            echo "Item Sku: ".$sItem->getSku()."\n";
            echo "Item Price: ".$sItem->getPrice()."\n";
    
            $pItemId = $sItem->getParentItemId();
            echo "Parent Item Id: ".$pItemId."\n";
    
            echo "\n*****\n";
    //Get Parent Item Information
    $item = Mage::getModel('sales/order_item')->load("$pItemId"); //use an item_id here
    
            //Testing, want to see whats inside the parent/configurable item?
            //print_r($item->toArray());
    
            echo "Parent Type: ".$item->getProductType()."\n";
            echo "Parent Order Id: ".$item->getOrderId()."\n";
            echo "Product Id: ".$item->getProductId()."\n";
            echo "Item Id: ".$item->getId()."\n";
            echo "Parent Item Price: ".$item->getPrice()."\n";
            echo "Qty: ".$qty = intval($item->getQtyOrdered())."\n";
    
            //get Active Product Data
            $nProduct = Mage::getModel('catalog/product')->load($sItem->getProductId());
    $nSku = $nProduct->getSku();
        echo "new Product UPC:".$nUpc = $nProduct->getUpc() . "\n";
            echo "new Product Price:".$nPrice = $nProduct->getPrice(). "\n";
    
            }
        }

बस एक ध्यान दें, आप , लेकिन यह एक दशमलव मान :) हो सकता हैintvalgetQtyOrdered
हैरी Mustoe-Playfair

जहां मैं मॉडल में निर्मित फ़ंक्शन जैसे सभी प्रलेखन पा सकता हूं addAttributeToSelect। धन्यवाद।
इफ्तखारुल आलम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.