本文整理汇总了PHP中Mage_Sales_Model_Order_Invoice::getGwItemsBaseTaxAmount方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Sales_Model_Order_Invoice::getGwItemsBaseTaxAmount方法的具体用法?PHP Mage_Sales_Model_Order_Invoice::getGwItemsBaseTaxAmount怎么用?PHP Mage_Sales_Model_Order_Invoice::getGwItemsBaseTaxAmount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Sales_Model_Order_Invoice
的用法示例。
在下文中一共展示了Mage_Sales_Model_Order_Invoice::getGwItemsBaseTaxAmount方法的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: _addGwItemsAmount
/**
* Adds giftwrapitems cost to request as item
*
* @param Mage_Sales_Model_Order_Invoice|Mage_Sales_Model_Order_Creditmemo $object
* @param bool $credit
* @return int|bool
*/
protected function _addGwItemsAmount($object, $credit = false)
{
if ($object->getGwItemsPrice() == 0) {
return false;
}
$lineNumber = $this->_getNewLineCode();
$storeId = $object->getStore()->getId();
$amount = $object->getGwItemsBasePrice();
$line = $this->_getNewDocumentRequestLineObject();
if ($this->_getTaxDataHelper()->priceIncludesTax($storeId)) {
$amount += $object->getGwItemsBaseTaxAmount();
$line->setTaxIncluded('true');
}
//@startSkipCommitHooks
$amount = $credit ? -1 * $amount : $amount;
//@finishSkipCommitHooks
$line->setLineCode($lineNumber);
$gwItemsSku = $this->_getConfigHelper()->getGwItemsSku($storeId);
$line->setItemCode($gwItemsSku ? $gwItemsSku : self::DEFAULT_GW_ITEMS_SKU);
$line->setItemDescription(self::DEFAULT_GW_ITEMS_DESCRIPTION);
$line->setAvalaraGoodsAndServicesType($this->_getGiftTaxClassCode($storeId));
$line->setNumberOfItems(1);
$line->setlineAmount($amount);
$line->setDiscounted('false');
$this->_lineToItemId[$lineNumber] = $gwItemsSku;
$this->_lines[$lineNumber] = $line;
$this->_setLinesToRequest();
return $lineNumber;
}