Esempio n. 1
0
 /**
  * Returns the item specific values.
  * 
  * @param Mage_Sales_Model_Order_Item $item The item to get values from
  * @param Mage_Sales_Model_Order $order The order the item belongs to
  * @return Array The array containing the item specific values
  */
 protected function getOrderItemValues($item, $order, $itemInc = 1)
 {
     return array($itemInc, $item->getName(), $item->getStatus(), $this->getItemSku($item), $this->getItemOptions($item), $this->formatPrice($item->getOriginalPrice(), $order), $this->formatPrice($item->getData('price'), $order), (int) $item->getQtyOrdered(), (int) $item->getQtyInvoiced(), (int) $item->getQtyShipped(), (int) $item->getQtyCanceled(), (int) $item->getQtyRefunded(), $this->formatPrice($item->getTaxAmount(), $order), $this->formatPrice($item->getDiscountAmount(), $order), $this->formatPrice($this->getItemTotal($item), $order));
 }
Esempio n. 2
0
 /**
  * Creates OCL OrderStatus record
  *
  * @param Mage_Sales_Model_Order_Item $item
  * @return string
  */
 protected function _createOrderItemStatus(Mage_Sales_Model_Order_Item $item)
 {
     switch ($item->getStatusId()) {
         case Mage_Sales_Model_Order_Item::STATUS_SHIPPED:
             return self::STATUS_SHIPPED;
         case Mage_Sales_Model_Order_Item::STATUS_BACKORDERED:
             return self::STATUS_BACKORDERED;
         case Mage_Sales_Model_Order_Item::STATUS_CANCELED:
             return self::STATUS_CANCELLED;
         case Mage_Sales_Model_Order_Item::STATUS_PARTIAL:
             return self::STATUS_PARTIALLY_SHIPPED;
         case Mage_Sales_Model_Order_Item::STATUS_REFUNDED:
         case Mage_Sales_Model_Order_Item::STATUS_RETURNED:
             return self::STATUS_PROCESSING_RETURN;
     }
     $orderState = $item->getOrder()->getState();
     switch ($orderState) {
         case Mage_Sales_Model_Order::STATE_NEW:
             return self::STATUS_NEW;
         case Mage_Sales_Model_Order::STATE_HOLDED:
             return self::STATUS_ON_HOLD;
         case Mage_Sales_Model_Order::STATE_COMPLETE:
         case Mage_Sales_Model_Order::STATE_CLOSED:
             return self::STATUS_COMPLETED;
     }
     if ($orderState == Mage_Sales_Model_Order::STATE_PROCESSING && $item->getStatus() == Mage_Sales_Model_Order_Item::STATUS_INVOICED) {
         return $item->getIsVirtual() ? self::STATUS_PAID : self::STATUS_READY_TO_SHIP;
     }
     return self::STATUS_NEW;
 }
Esempio n. 3
0
 /**
  * Return the order items data in an array for easy processing 
  *
  * @param Mage_Sales_Model_Order_Item $item
  * @param Mage_Sales_Model_Order $order
  * @return array
  */
 protected function getOrderItemData($item, $order)
 {
     $data = array();
     /*
      * get applied coupon type on each iems
      */
     $rule = Mage::getModel('salesrule/rule')->load($item->getData('applied_rule_ids'), 'rule_id');
     $data['ItemId'] = $item->getItemId();
     $data['Name'] = $item->getName();
     $data['Status'] = $item->getStatus();
     $data['SKU'] = $this->getItemSku($item);
     $data['productId'] = $this->getOrderItemProductId($item->getItemId());
     $data['ProductType'] = $this->getOrderItemType($item->getItemId());
     $data['Options'] = $this->getItemOptions($item);
     $data['MRP'] = $item->getData('product_mrp');
     $data['OriginalPrice'] = $this->getOriginalPriceTotal($item);
     $data['Price'] = $item->getData('price');
     $data['QtyOrdered'] = (int) $item->getQtyOrdered();
     $data['QtyBackordered'] = (int) $item->getQtyBackordered();
     $data['QtyInvoiced'] = (int) $item->getQtyInvoiced();
     $data['QtyShipped'] = (int) $item->getQtyShipped();
     $data['QtyCanceled'] = (int) $item->getQtyCanceled();
     $data['QtyRefunded'] = (int) $item->getQtyRefunded();
     $data['Weight'] = $item->getWeight();
     $data['TotalWeight'] = $item->getRowWeight();
     $data['Tax'] = $item->getTaxAmount();
     $data['TaxPercent'] = $item->getTaxPercent();
     if (!empty($rule->getData('voucher_type'))) {
         $data['DiscountType'] = strtoupper($rule->getData('voucher_type'));
     } else {
         $data['DiscountType'] = null;
     }
     $data['Discount'] = $item->getDiscountAmount();
     $data['CatalogDiscount'] = round($this->getCatalogDiscountAmount($item));
     $data['Total'] = $this->getItemTotal($item);
     //Premium Packaging
     $pckOpt = $item->getPckOption();
     if ($pckOpt == 1) {
         $hasPremiumPackaging = "Yes";
     } else {
         $hasPremiumPackaging = "No";
     }
     $data['HasPremiumPackaging'] = $hasPremiumPackaging;
     $data['PremiumSKU'] = $item->getPckSku();
     $data['PremiumQty'] = (int) $item->getPckQty();
     return $data;
 }