本文整理汇总了PHP中Mage_Sales_Model_Order_Invoice::getGwCardTaxAmount方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Sales_Model_Order_Invoice::getGwCardTaxAmount方法的具体用法?PHP Mage_Sales_Model_Order_Invoice::getGwCardTaxAmount怎么用?PHP Mage_Sales_Model_Order_Invoice::getGwCardTaxAmount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Sales_Model_Order_Invoice
的用法示例。
在下文中一共展示了Mage_Sales_Model_Order_Invoice::getGwCardTaxAmount方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: collect
/**
* Collect gift wrapping tax totals
*
* @param Mage_Sales_Model_Order_Invoice $invoice
* @return Enterprise_GiftWrapping_Model_Total_Invoice_Tax_Giftwrapping
*/
public function collect(Mage_Sales_Model_Order_Invoice $invoice)
{
$order = $invoice->getOrder();
/**
* Wrapping for items
*/
$invoiced = 0;
$baseInvoiced = 0;
foreach ($invoice->getAllItems() as $invoiceItem) {
if (!$invoiceItem->getQty() || $invoiceItem->getQty() == 0) {
continue;
}
$orderItem = $invoiceItem->getOrderItem();
if ($orderItem->getGwId() && $orderItem->getGwBaseTaxAmount() && $orderItem->getGwBaseTaxAmount() != $orderItem->getGwBaseTaxAmountInvoiced()) {
$orderItem->setGwBaseTaxAmountInvoiced($orderItem->getGwBaseTaxAmount());
$orderItem->setGwTaxAmountInvoiced($orderItem->getGwTaxAmount());
$baseInvoiced += $orderItem->getGwBaseTaxAmount();
$invoiced += $orderItem->getGwTaxAmount();
}
}
if ($invoiced > 0 || $baseInvoiced > 0) {
$order->setGwItemsBaseTaxInvoiced($order->getGwItemsBaseTaxInvoiced() + $baseInvoiced);
$order->setGwItemsTaxInvoiced($order->getGwItemsTaxInvoiced() + $invoiced);
$invoice->setGwItemsBaseTaxAmount($baseInvoiced);
$invoice->setGwItemsTaxAmount($invoiced);
}
/**
* Wrapping for order
*/
if ($order->getGwId() && $order->getGwBaseTaxAmount() && $order->getGwBaseTaxAmount() != $order->getGwBaseTaxAmountInvoiced()) {
$order->setGwBaseTaxAmountInvoiced($order->getGwBaseTaxAmount());
$order->setGwTaxAmountInvoiced($order->getGwTaxAmount());
$invoice->setGwBaseTaxAmount($order->getGwBaseTaxAmount());
$invoice->setGwTaxAmount($order->getGwTaxAmount());
}
/**
* Printed card
*/
if ($order->getGwAddCard() && $order->getGwCardBaseTaxAmount() && $order->getGwCardBaseTaxAmount() != $order->getGwCardBaseTaxInvoiced()) {
$order->setGwCardBaseTaxInvoiced($order->getGwCardBaseTaxAmount());
$order->setGwCardTaxInvoiced($order->getGwCardTaxAmount());
$invoice->setGwCardBaseTaxAmount($order->getGwCardBaseTaxAmount());
$invoice->setGwCardTaxAmount($order->getGwCardTaxAmount());
}
if (!$invoice->isLast()) {
$baseTaxAmount = $invoice->getGwItemsBaseTaxAmount() + $invoice->getGwBaseTaxAmount() + $invoice->getGwCardBaseTaxAmount();
$taxAmount = $invoice->getGwItemsTaxAmount() + $invoice->getGwTaxAmount() + $invoice->getGwCardTaxAmount();
$invoice->setBaseTaxAmount($invoice->getBaseTaxAmount() + $baseTaxAmount);
$invoice->setTaxAmount($invoice->getTaxAmount() + $taxAmount);
$invoice->setBaseGrandTotal($invoice->getBaseGrandTotal() + $baseTaxAmount);
$invoice->setGrandTotal($invoice->getGrandTotal() + $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 {
//.........这里部分代码省略.........