2015-07-02 6 views
-1

На странице проверки magento, после предоставления платежной информации и информации о доставке, я понимаю, что эти данные отправляются в FedEx, тогда тарифы доставки заполняются на странице chekout, прежде чем отправлять данные на FedEx, я хочу изменить вес продукта я хочу, чтобы добавить дополнительные веса для каждого из продуктов,Как изменить вес перед отправкой на fedex magento?

предположим, что пользователь добавления продукта с весом 2 фунта, я хочу, чтобы отправить эти веса 2 * 5 = 10pounds, как я могу это сделать в Magento? пожалуйста помощь.

ответ

-1

Наконец я узнал, что это происходит в продаже/quote/item.php файл, есть функция называется setProduct, здесь нам нужно добавить addititonal информацию, а установочные данные.

public function setProduct($product) 
    { 

     $batchQty = Mage::getModel('catalog/product')->load($product->getId())->getBatchQty(); 
     $roleId  = Mage::getSingleton('customer/session')->getCustomerGroupId(); 
     $userrole = Mage::getSingleton('customer/group')->load($roleId)->getData('customer_group_code'); 
     $userrole = strtolower($userrole); 
     if ($this->getQuote()) { 
      $product->setStoreId($this->getQuote()->getStoreId()); 
      $product->setCustomerGroupId($this->getQuote()->getCustomerGroupId()); 
     } 
     if($userrole=="retailer" && $batchQty>0){ 
      $this->setData('product', $product) 
      ->setProductId($product->getId()) 
      ->setProductType($product->getTypeId()) 
      ->setSku($this->getProduct()->getSku()) 
      ->setName($product->getName()) 
      ->setWeight($this->getProduct()->getWeight()*$batchQty) 
      ->setTaxClassId($product->getTaxClassId()) 
      ->setBaseCost($product->getCost()) 
      ->setIsRecurring($product->getIsRecurring()); 
     } else { 
      $this->setData('product', $product) 
      ->setProductId($product->getId()) 
      ->setProductType($product->getTypeId()) 
      ->setSku($this->getProduct()->getSku()) 
      ->setName($product->getName()) 
      ->setWeight($this->getProduct()->getWeight()) 
      ->setTaxClassId($product->getTaxClassId()) 
      ->setBaseCost($product->getCost()) 
      ->setIsRecurring($product->getIsRecurring()); 
     } 

     if ($product->getStockItem()) { 
      $this->setIsQtyDecimal($product->getStockItem()->getIsQtyDecimal()); 
     } 

     Mage::dispatchEvent('sales_quote_item_set_product', array(
      'product' => $product, 
      'quote_item' => $this 
     )); 
     return $this; 
    } 
0

Не знаете, что именно вы хотите, но я попробую.

Я думаю, что вы можете переопределить метод Mage_Checkout_OnepageController :: savePaymentAction в своем локальном пуле и локальном методе, отправить свое новое событие «save_payment_action_before» и передать свои объекты в качестве параметров.

В модуле fedex создайте наблюдателя, получите свой объект и измените вес заказа до его отправки в FedEx.

Чтобы создать пользовательское событие, проверьте this post

+0

В Magento странице корзины и оформление заказа странице, после предоставления платежной информации и информации о доставке, я понимаю, что эти детали были отправки Fedex, то скорость доставки были заселять в корзине странице и chekout странице, перед отправкой тезисов детали fedex, я хочу изменить вес продукта, я хочу добавить дополнительную ценность (это значение отличается для разных продуктов), умноженное на вес для каждого продукта в корзине, где я могу добавить это, я новичок в magento, мог бы не найти, где я могу добавить это. – Naveenbos

+0

Если вам нужно добавить дополнительную информацию в свою цитату и заказ, вы должны добавить новый столбец в свои таблицы sales_flat_order_quote и sales_flat_order, используя запрос alter table. Затем, в вашем случае, заполните эти поля (при условии, что ваш столбец называется extra_fedex_weight, используйте магический сеттер setExtraFedexWeight в вашем объекте кавычек), используя логику вычисления веса. Шаг 3, в вашем модуле fedex, выберите отправку дополнительной информации вместо исходного веса. – beluga

+0

Я понятия не имею, где я могу изменить это, пожалуйста, помогите мне, я исправлю файлы и функции – Naveenbos

 Смежные вопросы

  • Нет связанных вопросов^_^