예제 #1
0
파일: Fee.php 프로젝트: jacekelgda/Magento
 public function collect(Mage_Sales_Model_Quote_Address $address)
 {
     parent::collect($address);
     $this->_setAmount(0);
     $this->_setBaseAmount(0);
     $items = $this->_getAddressItems($address);
     if (!count($items)) {
         return $this;
         //this makes only address type shipping to come through
     }
     $quote = $address->getQuote();
     if (Excellence_Fee_Model_Fee::canApply($address)) {
         $exist_amount = $quote->getFeeAmount();
         $fee = Excellence_Fee_Model_Fee::getFee();
         $balance = $fee - $exist_amount;
         // 			$balance = $fee;
         //$this->_setAmount($balance);
         //$this->_setBaseAmount($balance);
         $address->setFeeAmount($balance);
         $address->setBaseFeeAmount($balance);
         $quote->setFeeAmount($balance);
         $address->setGrandTotal($address->getGrandTotal() + $address->getFeeAmount());
         $address->setBaseGrandTotal($address->getBaseGrandTotal() + $address->getBaseFeeAmount());
     }
 }
예제 #2
0
파일: Fee.php 프로젝트: axovel/easycarcare
 public function collect(Mage_Sales_Model_Quote_Address $address)
 {
     // echo "in";
     parent::collect($address);
     $this->_setAmount(0);
     $this->_setBaseAmount(0);
     $items = $this->_getAddressItems($address);
     if (!count($items)) {
         return $this;
         //this makes only address type shipping to come through
     }
     /*$flag=false;
       foreach($items as $item){                    
           $_product = Mage::getModel('catalog/product')->load($item->getProductId());                   
           if($_product->getAttributeSetId()=='9'){
               if($item->getProduct()->getRemoteInstallation()!='0.00' || $item->getProduct()->getRemoteInstallation()!='')
               {                           
                   $flag=true;
                   break;
               }    
           }                  
       }*/
     $is_set_remote = Mage::getModel('checkout/cart')->canApplyRemoteInstallation();
     $quote = $address->getQuote();
     if ($is_set_remote == 1) {
         $exist_amount = $quote->getFeeAmount();
         $fee = Excellence_Fee_Model_Fee::getFee();
         $balance = $fee - $exist_amount;
         //$balance = $fee;
         //$this->_setAmount($balance);
         //$this->_setBaseAmount($balance);
         $address->setFeeAmount($balance);
         $address->setBaseFeeAmount($balance);
         $quote->setFeeAmount($balance);
         $address->setGrandTotal($address->getGrandTotal() + $address->getFeeAmount());
         $address->setBaseGrandTotal($address->getBaseGrandTotal() + $address->getBaseFeeAmount());
     }
 }