本文整理汇总了PHP中Mage_Sales_Model_Order_Creditmemo::getGwCardTaxAmount方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Sales_Model_Order_Creditmemo::getGwCardTaxAmount方法的具体用法?PHP Mage_Sales_Model_Order_Creditmemo::getGwCardTaxAmount怎么用?PHP Mage_Sales_Model_Order_Creditmemo::getGwCardTaxAmount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Sales_Model_Order_Creditmemo
的用法示例。
在下文中一共展示了Mage_Sales_Model_Order_Creditmemo::getGwCardTaxAmount方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: collect
/**
* Collect gift wrapping tax totals
*
* @param Mage_Sales_Model_Order_Creditmemo $creditmemo
* @return Enterprise_GiftWrapping_Model_Total_Creditmemo_Tax_Giftwrapping
*/
public function collect(Mage_Sales_Model_Order_Creditmemo $creditmemo)
{
$order = $creditmemo->getOrder();
/**
* Wrapping for items
*/
$refunded = 0;
$baseRefunded = 0;
foreach ($creditmemo->getAllItems() as $creditmemoItem) {
if (!$creditmemoItem->getQty() || $creditmemoItem->getQty() == 0) {
continue;
}
$orderItem = $creditmemoItem->getOrderItem();
if ($orderItem->getGwId() && $orderItem->getGwBaseTaxAmountInvoiced() && $orderItem->getGwBaseTaxAmountInvoiced() != $orderItem->getGwBaseTaxAmountRefunded()) {
$orderItem->setGwBaseTaxAmountRefunded($orderItem->getGwBaseTaxAmountInvoiced());
$orderItem->setGwTaxAmountRefunded($orderItem->getGwTaxAmountInvoiced());
$baseRefunded += $orderItem->getGwBaseTaxAmountInvoiced() * $creditmemoItem->getQty();
$refunded += $orderItem->getGwTaxAmountInvoiced() * $creditmemoItem->getQty();
}
}
if ($refunded > 0 || $baseRefunded > 0) {
$order->setGwItemsBaseTaxRefunded($order->getGwItemsBaseTaxRefunded() + $baseRefunded);
$order->setGwItemsTaxRefunded($order->getGwItemsTaxRefunded() + $refunded);
$creditmemo->setGwItemsBaseTaxAmount($baseRefunded);
$creditmemo->setGwItemsTaxAmount($refunded);
}
/**
* Wrapping for order
*/
if ($order->getGwId() && $order->getGwBaseTaxAmountInvoiced() && $order->getGwBaseTaxAmountInvoiced() != $order->getGwBaseTaxAmountRefunded()) {
$order->setGwBaseTaxAmountRefunded($order->getGwBaseTaxAmountInvoiced());
$order->setGwTaxAmountRefunded($order->getGwTaxAmountInvoiced());
$creditmemo->setGwBaseTaxAmount($order->getGwBaseTaxAmountInvoiced());
$creditmemo->setGwTaxAmount($order->getGwTaxAmountInvoiced());
}
/**
* Printed card
*/
if ($order->getGwAddCard() && $order->getGwCardBaseTaxInvoiced() && $order->getGwCardBaseTaxInvoiced() != $order->getGwCardBaseTaxRefunded()) {
$order->setGwCardBaseTaxRefunded($order->getGwCardBaseTaxInvoiced());
$order->setGwCardTaxRefunded($order->getGwCardTaxInvoiced());
$creditmemo->setGwCardBaseTaxAmount($order->getGwCardBaseTaxInvoiced());
$creditmemo->setGwCardTaxAmount($order->getGwCardTaxInvoiced());
}
$baseTaxAmount = $creditmemo->getGwItemsBaseTaxAmount() + $creditmemo->getGwBaseTaxAmount() + $creditmemo->getGwCardBaseTaxAmount();
$taxAmount = $creditmemo->getGwItemsTaxAmount() + $creditmemo->getGwTaxAmount() + $creditmemo->getGwCardTaxAmount();
$creditmemo->setBaseTaxAmount($creditmemo->getBaseTaxAmount() + $baseTaxAmount);
$creditmemo->setTaxAmount($creditmemo->getTaxAmount() + $taxAmount);
$creditmemo->setBaseGrandTotal($creditmemo->getBaseGrandTotal() + $baseTaxAmount);
$creditmemo->setGrandTotal($creditmemo->getGrandTotal() + $taxAmount);
$creditmemo->setBaseCustomerBalanceReturnMax($creditmemo->getBaseCustomerBalanceReturnMax() + $baseTaxAmount);
$creditmemo->setCustomerBalanceReturnMax($creditmemo->getCustomerBalanceReturnMax() + $taxAmount);
return $this;
}
示例2: getArticles
/**
* Article preparations for PAYMENT_REQUEST, PAYMENT_CHANGE, CONFIRMATION_DELIVER
*
* @param Mage_Sales_Model_Quote|Mage_Sales_Model_Order|Mage_Sales_Model_Order_Invoice|Mage_Sales_Model_Order_Creditmemo $object
* @return array
*/
public function getArticles($object)
{
$articles = array();
$articleDiscountAmount = 0;
$objectItems = $object->getAllItems();
foreach ($objectItems as $item) {
if ($item instanceof Mage_Sales_Model_Order_Item || $item instanceof Mage_Sales_Model_Quote_Item) {
$orderItem = $item;
} else {
$orderItem = Mage::getModel('sales/order_item')->load($item->getOrderItemId());
}
$shopProduct = Mage::getModel('catalog/product')->load($orderItem->getProductId());
if (($orderItem->getProductType() !== 'bundle' || $orderItem->getProductType() === 'bundle' && $shopProduct->getPrice() > 0) && $orderItem->getRowTotal() > 0) {
$article = array();
$article['articleNumber'] = $item->getSku();
$article['articleName'] = $item->getName();
$article['quantity'] = $object instanceof Mage_Sales_Model_Order ? $item->getQtyOrdered() : $item->getQty();
$article['unitPriceGross'] = $item->getPriceInclTax();
$article['taxPercent'] = $orderItem->getTaxPercent();
$article['discountId'] = '';
if ($item->getDiscountAmount() > 0) {
$discount = array();
$discount['articleNumber'] = 'DISCOUNT-' . $item->getSku();
$discount['articleName'] = 'DISCOUNT - ' . $item->getName();
$discount['quantity'] = $article['quantity'];
$discount['unitPriceGross'] = -1 * $item->getDiscountAmount() / $article['quantity'];
$discount['discountId'] = $item->getSku();
$articleDiscountAmount = $articleDiscountAmount + $item->getDiscountAmount();
}
$articles[] = $article;
if ($item->getDiscountAmount() > 0) {
// only for sort reason
$articles[] = $discount;
}
}
}
if ($object->getGwPrice() > 0) {
$article = array();
$article['articleNumber'] = 'orderwrapping';
$article['articleName'] = 'Wrapping Cost Order';
$article['quantity'] = '1';
$article['unitPriceGross'] = $object->getGwPrice();
$article['taxPercent'] = 100 / $object->getGwPrice() * $object->getGwTaxAmount();
$article['discountId'] = '';
$articles[] = $article;
}
if ($object->getGwItemsPrice() > 0) {
$article = array();
$article['articleNumber'] = 'itemswrapping';
$article['articleName'] = 'Wrapping Cost Items';
$article['quantity'] = '1';
$article['unitPriceGross'] = $object->getGwItemsPrice();
$article['taxPercent'] = 100 / $object->getGwItemsPrice() * $object->getGwItemsTaxAmount();
$article['discountId'] = '';
$articles[] = $article;
}
if ($object->getGwAddCard() > 0) {
$article = array();
$article['articleNumber'] = 'printed_card';
$article['articleName'] = 'Printed Card';
$article['quantity'] = '1';
$article['unitPriceGross'] = $object->getGwCardPrice();
$article['taxPercent'] = 100 / $object->getGwCardPrice() * $object->getGwCardTaxAmount();
$article['discountId'] = '';
$articles[] = $article;
}
if (Mage::getEdition() == 'Enterprise') {
$_cards = Mage::getBlockSingleton('enterprise_giftcardaccount/checkout_cart_total')->getQuoteGiftCards();
if ($_cards) {
foreach ($_cards as $card) {
$article = array();
$article['articleNumber'] = 'gift_card';
$article['articleName'] = $card['c'];
$article['quantity'] = '1';
$article['unitPriceGross'] = -round($card['ba'], 2);
$article['taxPercent'] = 0;
$article['discountId'] = '';
$articles[] = $article;
}
}
}
if ($object instanceof Mage_Sales_Model_Order || $object instanceof Mage_Sales_Model_Order_Invoice || $object instanceof Mage_Sales_Model_Order_Creditmemo) {
$shippingObject = $object;
if ($object instanceof Mage_Sales_Model_Order_Creditmemo) {
$articles = $this->addAdjustments($object, $articles);
}
} else {
$shippingObject = $object->getShippingAddress();
}
if ($shippingObject->getShippingAmount() > 0) {
if ($object instanceof Mage_Sales_Model_Order_Invoice || $object instanceof Mage_Sales_Model_Order_Shipment || $object instanceof Mage_Sales_Model_Order_Creditmemo) {
$shippingDiscountAmount = $shippingObject->getDiscountAmount() - $articleDiscountAmount;
$shippingDescription = $object->getOrder()->getShippingDescription();
} else {
//.........这里部分代码省略.........