Beispiel #1
0
/**
 * Calculates and returns the grand total of an item including tax and excluding
 * discount.
 *
 * @param Mage_Sales_Model_Order_Item $item The item to return info from
 * @return Float The grand total
 */
function getItemTotal($item)
{
    return $item->getRowTotal() - $item->getDiscountAmount() + $item->getTaxAmount() + $item->getWeeeTaxAppliedRowAmount();
}
Beispiel #2
0
 /**
  * Returns OCL OrderLinePrice record
  *
  * @param Mage_Sales_Model_Order_Item $item
  * @return array
  */
 protected function _createOrderLinePrice($item, $qty = 1, $type = self::LINE_ITEM_TYPE_DEFAULT)
 {
     $store = Mage::app()->getStore($item->getStoreId());
     // Unclear on the consequences of rounding the discount.  Maybe we shouldn't round it to be more accurate.
     $discount = $store->roundPrice($item->getDiscountAmount() / $qty);
     // We won't round the price since it makes for inaccurate calculations when using this data
     $totalPrice = $this->calculateRowTotalPrice($item) / $qty;
     $data = array('totalPrice' => $this->_createCurrencyAmount($totalPrice), 'price' => $this->_createCurrencyAmount($item->getBasePrice()), 'insuranceCost' => null, 'totalDiscountAmount' => $this->_createCurrencyAmount($discount), 'taxAmount' => $this->_createTax($item, $qty, $type), 'allDiscounts' => null, 'additionalCosts' => null);
     return $data;
 }
Beispiel #3
0
 /**
  * Retrieve
  *
  * @param Mage_Sales_Model_Order_Item $item
  * @return unknown
  */
 public function itemToQuoteItem(Mage_Sales_Model_Order_Item $item)
 {
     $quoteItem = Mage::getModel('sales/quote_item')->setStoreId($item->getStoreId())->setQuoteItemId($item->getId())->setProductId($item->getProductId())->setSuperProductId($item->getSuperProductId())->setParentProductId($item->getParentProductId())->setSku($item->getSku())->setName($item->getName())->setDescription($item->getDescription())->setWeight($item->getWeight())->setCustomPrice($item->getPrice())->setDiscountPercent($item->getDiscountPercent())->setDiscountAmount($item->getDiscountAmount())->setTaxPercent($item->getTaxPercent())->setTaxAmount($item->getTaxAmount())->setRowWeight($item->getRowWeight())->setRowTotal($item->getRowTotal())->setAppliedRuleIds($item->getAppliedRuleIds())->setBaseDiscountAmount($item->getBaseDiscountAmount())->setBaseTaxAmount($item->getBaseTaxAmount())->setBaseRowTotal($item->getBaseRowTotal());
     return $quoteItem;
 }
Beispiel #4
0
 /**
  * Calculates and returns the grand total of an item including tax and excluding
  * discount.
  *
  * @param Mage_Sales_Model_Order_Item $item The item to return info from
  * @return Float The grand total
  */
 protected function getItemTotal($item)
 {
     //return $item->getRowTotal() - $item->getDiscountAmount() + $item->getTaxAmount() + $item->getWeeeTaxAppliedRowAmount();
     return $item->getRowTotal() + $item->getTaxAmount() + $item->getHiddenTaxAmount() + $item->getWeeeTaxAppliedRowAmount() - $item->getDiscountAmount();
 }