मैं Magento, जहां मैं अपने भुगतान मॉडल में getCheckoutRedirectUrl() पद्धति लागू लिए अपने खुद के भुगतान मॉड्यूल को लागू कर रहा हूँ के दौरान Magento भुगतान मॉड्यूल में वर्तमान OrderID प्राप्त करें।चेकआउट
class My_Module_Model_Payment extends Mage_Payment_Model_Method_Abstract {}
इस विधि सिर्फ भुगतान गेटवे जहां उपयोगकर्ता पर भेज दिया जाएगा का URL वापस जाने के लिए माना जाता है, लेकिन मैं यह भी इस URL पर वर्तमान OrderID संलग्न करना होगा।
समस्या है OrderID प्राप्त करने में सक्षम नहीं हूँ। मैं पहले से ही accepted here
$orderId = Mage::getSingleton('checkout/session')->getLastRealOrderId();
के रूप में समाधान करने की कोशिश की, लेकिन मैं खाली $ OrderID मिलता है। तो यह मेरी विधि में काम नहीं कर रहा है। कॉल त्रुटि नहीं पैदा करता, तो मैं एक वस्तु (उदाहरण के दाना :: getSingleton के लिए ('चेकआउट/सत्र') -> getQuote() -> getSubtotal() आदेश राशि देता है) मिलता है, लेकिन OrderID खाली है।
मैं भी करने की कोशिश की:
$order = Mage::getModel('sales/order');
$order->load(Mage::getSingleton('sales/order')->getLastOrderId());
$orderId = $order->getIncrementId();
जो फिर खाली $ OrderID देता है।
कोई विचार?
यह क्या मेरा अनुमान आदेश अभी तक अस्तित्व में नहीं है, मुझे यह स्पष्ट करने के लिए धन्यवाद, मैंने सोचा कि ऑर्डर पहले ही डीबी में सहेजा गया है। लेकिन मुझे किसी प्रकार का पहचानकर्ता चाहिए जिसके द्वारा मैं एक अलग स्वतंत्र अनुरोध (कुकीज़ के बिना) में ऑर्डर जानकारी (जैसे राशि) प्राप्त कर सकता हूं, जो भुगतान गेटवे पृष्ठभूमि में बनाता है। शायद मैं सत्र आईडी पास कर सकता हूं और सत्र सेट कर सकता हूं, इसलिए मुझे उद्धरण (कार्ट में ऑर्डर) तक पहुंच हो सकती है? – KoviNET
उद्धरण, और उद्धरण आइटम, डेटाबेस के साथ भी जारी हैं। इस तरह Magento ट्रैक गाड़ियां छोड़ दिया। मैं उन सूचनाओं को प्राप्त करने के लिए उन वस्तुओं का उपयोग करने पर ध्यान केंद्रित करूंगा जो आप चाहते हैं। –
मैंने उद्धरण पास करके मेरी समस्या हल की है भुगतान गेटवे (मैगे :: getSingleton ('चेकआउट/सत्र') -> getQuoteId();) और फिर मैं अलग अनुरोध में उद्धरण डेटा प्राप्त करने में सक्षम था: $ quote = mage: : getModel ("बिक्री/उद्धरण") -> लोड ($ quoteId); धन्यवाद! – KoviNET