本文整理汇总了PHP中Mage_Sales_Model_Order_Invoice::getGwPrice方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Sales_Model_Order_Invoice::getGwPrice方法的具体用法?PHP Mage_Sales_Model_Order_Invoice::getGwPrice怎么用?PHP Mage_Sales_Model_Order_Invoice::getGwPrice使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Sales_Model_Order_Invoice
的用法示例。
在下文中一共展示了Mage_Sales_Model_Order_Invoice::getGwPrice方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _getGwTaxClassId
/**
* Get gift wrapping tax class id
*
* @param Mage_Sales_Model_Order_Invoice|Mage_Sales_Model_Order_Creditmemo|Mage_Sales_Model_Quote_Address $object
* @return int
*/
protected function _getGwTaxClassId($object)
{
if (!$object->getGwPrice() && !$object->getGwItemsPrice() && !$object->getGwPrintedCardPrice()) {
return 0;
}
if ($object instanceof Mage_Sales_Model_Quote_Address) {
$storeId = $object->getQuote()->getStoreId();
} else {
$storeId = $object->getStoreId();
}
return $this->_getWrappingTaxClass($storeId);
}
示例2: collect
/**
* Collect gift wrapping totals
*
* @param Mage_Sales_Model_Order_Invoice $invoice
* @return Enterprise_GiftWrapping_Model_Total_Invoice_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->getGwBasePrice() && $orderItem->getGwBasePrice() != $orderItem->getGwBasePriceInvoiced()) {
$orderItem->setGwBasePriceInvoiced($orderItem->getGwBasePrice());
$orderItem->setGwPriceInvoiced($orderItem->getGwPrice());
$baseInvoiced += $orderItem->getGwBasePrice() * $invoiceItem->getQty();
$invoiced += $orderItem->getGwPrice() * $invoiceItem->getQty();
}
}
if ($invoiced > 0 || $baseInvoiced > 0) {
$order->setGwItemsBasePriceInvoiced($order->getGwItemsBasePriceInvoiced() + $baseInvoiced);
$order->setGwItemsPriceInvoiced($order->getGwItemsPriceInvoiced() + $invoiced);
$invoice->setGwItemsBasePrice($baseInvoiced);
$invoice->setGwItemsPrice($invoiced);
}
/**
* Wrapping for order
*/
if ($order->getGwId() && $order->getGwBasePrice() && $order->getGwBasePrice() != $order->getGwBasePriceInvoiced()) {
$order->setGwBasePriceInvoiced($order->getGwBasePrice());
$order->setGwPriceInvoiced($order->getGwPrice());
$invoice->setGwBasePrice($order->getGwBasePrice());
$invoice->setGwPrice($order->getGwPrice());
}
/**
* Printed card
*/
if ($order->getGwAddCard() && $order->getGwCardBasePrice() && $order->getGwCardBasePrice() != $order->getGwCardBasePriceInvoiced()) {
$order->setGwCardBasePriceInvoiced($order->getGwCardBasePrice());
$order->setGwCardPriceInvoiced($order->getGwCardPrice());
$invoice->setGwCardBasePrice($order->getGwCardBasePrice());
$invoice->setGwCardPrice($order->getGwCardPrice());
}
$invoice->setBaseGrandTotal($invoice->getBaseGrandTotal() + $invoice->getGwItemsBasePrice() + $invoice->getGwBasePrice() + $invoice->getGwCardBasePrice());
$invoice->setGrandTotal($invoice->getGrandTotal() + $invoice->getGwItemsPrice() + $invoice->getGwPrice() + $invoice->getGwCardPrice());
return $this;
}
示例3: _addGwOrderAmount
/**
* Adds giftwraporder 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 _addGwOrderAmount($object, $credit = false)
{
if ($object->getGwPrice() == 0) {
return false;
}
$lineNumber = $this->_getNewLineCode();
$storeId = $object->getStore()->getId();
$amount = $object->getGwBasePrice();
$line = $this->_getNewDocumentRequestLineObject();
if ($this->_getTaxDataHelper()->priceIncludesTax($storeId)) {
$amount += $object->getGwBaseTaxAmount();
$line->setTaxIncluded('true');
}
//@startSkipCommitHooks
$amount = $credit ? -1 * $amount : $amount;
//@finishSkipCommitHooks
$line->setLineCode($lineNumber);
$gwOrderSku = $this->_getConfigHelper()->getGwOrderSku($storeId);
$line->setItemCode($gwOrderSku ? $gwOrderSku : self::DEFAULT_GW_ORDER_SKU);
$line->setItemDescription(self::DEFAULT_GW_ORDER_DESCRIPTION);
$line->setAvalaraGoodsAndServicesType($this->_getGiftTaxClassCode($storeId));
$line->setNumberOfItems(1);
$line->setlineAmount($amount);
$line->setDiscounted('false');
$this->_lineToItemId[$lineNumber] = $gwOrderSku;
$this->_lines[$lineNumber] = $line;
$this->_setLinesToRequest();
return $lineNumber;
}
示例4: _addGwOrderAmount
/**
* Adds giftwraporder 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 _addGwOrderAmount($object, $credit = false)
{
if ($object->getGwPrice() == 0) {
return false;
}
$lineNumber = count($this->_lines);
$storeId = Mage::app()->getStore()->getId();
$amount = $object->getGwBasePrice();
if ($credit) {
//@startSkipCommitHooks
$amount *= -1;
//@finishSkipCommitHooks
}
$line = new Line();
$line->setNo($lineNumber);
$line->setItemCode(Mage::helper('avatax')->getGwOrderSku($storeId));
$line->setDescription('Gift Wrap Order Amount');
$line->setTaxCode('');
$line->setQty(1);
$line->setAmount($amount);
$line->setDiscounted(false);
$this->_lineToItemId[$lineNumber] = Mage::helper('avatax')->getGwOrderSku($storeId);
$this->_lines[$lineNumber] = $line;
$this->_request->setLines($this->_lines);
return $lineNumber;
}
示例5: 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 {
//.........这里部分代码省略.........