मुझे नवीनतम Magento 1.9.2.4 और 2.0.5 में एक ही मुद्दे का सामना करना पड़ा है।
परिदृश्य:
- अतिथि एक आदेश देता है
- ऑर्डर में अलग-अलग बिलिंग और शिपिंग पते हैं
- व्यवस्थापन व्यवस्थापक पैनल में आदेश संपादित करता है
परिणाम:
शिपिंग पता खो गया है और इसके बजाय बिलिंग पता दिखाया गया है।
कारण: _isSameAsBilling () विधि हमेशा रिटर्न सच अगर आदेश में एक अतिथि द्वारा रखा गया था। यह उचित व्यवहार नहीं है।
प्रश्न में विधि:
Magento 2.0.5: /app/code/Magento/Quote/Model/Quote/Address.php
protected function _isSameAsBilling()
{
return $this->getAddressType() == \Magento\Quote\Model\Quote\Address::TYPE_SHIPPING &&
($this->_isNotRegisteredCustomer() ||
$this->_isDefaultShippingNullOrSameAsBillingAddress());
}
Magento 1.9.2.4: /app/code/core/Mage/Sales/Model/Quote/Address.bp
protected function _isSameAsBilling()
{
return ($this->getAddressType() == Mage_Sales_Model_Quote_Address::TYPE_SHIPPING
&& ($this->_isNotRegisteredCustomer() || $this->_isDefaultShippingNullOrSameAsBillingAddress()));
}
जैसा कि आप देख सकते हैं कि ग्राहक पंजीकृत नहीं है तो _isSameAsBilling () विधि तब भी सही है , जब बिलिंग और शिपिंग पते भिन्न हों।
मूल शिपिंग पते खो जाने के रूप में व्यवस्थापक पैनल के माध्यम से संपादित सभी आदेशों पर इसके गंभीर निहितार्थ हैं।
क्या यह बग है या मैं कुछ भूल गया हूं?