Magento - Как сделать новый адрес доставки (дополнительный) по умолчанию - PullRequest
0 голосов
/ 24 августа 2011

Я разработал пользовательский модуль оформления заказа и работает нормально.Во время оформления первого заказа, когда я ввожу новый адрес для выставления счетов и доставки, они устанавливаются как адрес для выставления счетов и доставки по умолчанию, и это нормально.Теперь у меня есть требование, когда бы ни вводился новый адрес доставки, он должен стать адресом доставки по умолчанию.Почему-то я не могу заставить эту работу.Я пробовал следующее:

$ shipdata - это массив, содержащий новые детали адреса.

$shipAddress = $this->getQuote()->getShippingAddress();
$shipAddress->addData($shipdata);
$shipAddress->setIsDefaultShipping(true);

if($this->getQuote()->getDefaultShipping()) {
   $this->getQuote()->setData('default_shipping', '');
   $this->getQuote()->addAddress($shipAddress);
}
$this->getQuote()->collectTotals();
$this->getQuote()->save();

Я также пытался добавить следующее в $ shipdata

$shipdata['default_shipping'] = 1;

но тоже не помогло.Может ли кто-нибудь помочь в этом отношении?

Ответы [ 2 ]

0 голосов
/ 18 марта 2013

В форме, в которой сообщения на следующей странице просто включают скрытый ввод

0 голосов
/ 26 марта 2012

Вы можете попробовать использовать наблюдателя в событии customer_address_save_before.Установка флага isDefaultShipping будет работать.Единственное, чего я не знаю, это проверить, находишься ли ты в процессе оформления заказа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...