本文整理汇总了PHP中Mage_Sales_Model_Order_Creditmemo::getBaseCustomerBalanceReturnMax方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Sales_Model_Order_Creditmemo::getBaseCustomerBalanceReturnMax方法的具体用法?PHP Mage_Sales_Model_Order_Creditmemo::getBaseCustomerBalanceReturnMax怎么用?PHP Mage_Sales_Model_Order_Creditmemo::getBaseCustomerBalanceReturnMax使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mage_Sales_Model_Order_Creditmemo
的用法示例。
在下文中一共展示了Mage_Sales_Model_Order_Creditmemo::getBaseCustomerBalanceReturnMax方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: collect
/**
* Collect customer balance totals for credit memo
*
* @param Mage_Sales_Model_Order_Creditmemo $creditmemo
* @return Enterprise_CustomerBalance_Model_Total_Creditmemo_Customerbalance
*/
public function collect(Mage_Sales_Model_Order_Creditmemo $creditmemo)
{
$creditmemo->setBsCustomerBalTotalRefunded(0);
$creditmemo->setCustomerBalTotalRefunded(0);
$creditmemo->setBaseCustomerBalanceReturnMax(0);
$creditmemo->setCustomerBalanceReturnMax(0);
if (!Mage::helper('enterprise_customerbalance')->isEnabled()) {
return $this;
}
$order = $creditmemo->getOrder();
if ($order->getBaseCustomerBalanceAmount() && $order->getBaseCustomerBalanceInvoiced() != 0) {
$cbLeft = $order->getBaseCustomerBalanceInvoiced() - $order->getBaseCustomerBalanceRefunded();
$used = 0;
$baseUsed = 0;
if ($cbLeft >= $creditmemo->getBaseGrandTotal()) {
$baseUsed = $creditmemo->getBaseGrandTotal();
$used = $creditmemo->getGrandTotal();
$creditmemo->setBaseGrandTotal(0);
$creditmemo->setGrandTotal(0);
$creditmemo->setAllowZeroGrandTotal(true);
} else {
$baseUsed = $order->getBaseCustomerBalanceInvoiced() - $order->getBaseCustomerBalanceRefunded();
$used = $order->getCustomerBalanceInvoiced() - $order->getCustomerBalanceRefunded();
$creditmemo->setBaseGrandTotal($creditmemo->getBaseGrandTotal() - $baseUsed);
$creditmemo->setGrandTotal($creditmemo->getGrandTotal() - $used);
}
$creditmemo->setBaseCustomerBalanceAmount($baseUsed);
$creditmemo->setCustomerBalanceAmount($used);
}
$creditmemo->setBaseCustomerBalanceReturnMax($creditmemo->getBaseCustomerBalanceReturnMax() + $creditmemo->getBaseGrandTotal());
$creditmemo->setBaseCustomerBalanceReturnMax($creditmemo->getBaseCustomerBalanceReturnMax() + $creditmemo->getBaseCustomerBalanceAmount());
$creditmemo->setCustomerBalanceReturnMax($creditmemo->getCustomerBalanceReturnMax() + $creditmemo->getCustomerBalanceAmount());
return $this;
}
示例2: collect
/**
* Collect snap gift card account totals for credit memo
*
* @param Mage_Sales_Model_Order_Creditmemo $creditmemo
* @return $this
*/
public function collect(Mage_Sales_Model_Order_Creditmemo $creditmemo)
{
$order = $creditmemo->getOrder();
if ($order->getBaseSnapCardsAmount() && $order->getBaseSnapCardsInvoiced() != 0) {
$gcaLeft = $order->getBaseSnapCardsInvoiced() - $order->getBaseSnapCardsRefunded();
$used = 0;
$baseUsed = 0;
if ($gcaLeft >= $creditmemo->getBaseGrandTotal()) {
$baseUsed = $creditmemo->getBaseGrandTotal();
$used = $creditmemo->getGrandTotal();
$creditmemo->setBaseGrandTotal(0);
$creditmemo->setGrandTotal(0);
$creditmemo->setAllowZeroGrandTotal(true);
} else {
$baseUsed = $order->getBaseSnapCardsInvoiced() - $order->getBaseSnapCardsRefunded();
$used = $order->getSnapCardsInvoiced() - $order->getSnapCardsRefunded();
$creditmemo->setBaseGrandTotal($creditmemo->getBaseGrandTotal() - $baseUsed);
$creditmemo->setGrandTotal($creditmemo->getGrandTotal() - $used);
}
$creditmemo->setBaseSnapCardsAmount($baseUsed);
$creditmemo->setSnapCardsAmount($used);
}
$creditmemo->setBaseCustomerBalanceReturnMax($creditmemo->getBaseCustomerBalanceReturnMax() + $creditmemo->getBaseSnapCardsAmount());
$creditmemo->setCustomerBalanceReturnMax($creditmemo->getCustomerBalanceReturnMax() + $creditmemo->getSnapCardsAmount());
$creditmemo->setCustomerBalanceReturnMax($creditmemo->getCustomerBalanceReturnMax() + $creditmemo->getGrandTotal());
return $this;
}
示例3: collect
/**
* Collect gift wrapping totals
*
* @param Mage_Sales_Model_Order_Creditmemo $creditmemo
* @return Enterprise_GiftWrapping_Model_Total_Creditmemo_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->getGwBasePriceInvoiced() && $orderItem->getGwBasePriceInvoiced() != $orderItem->getGwBasePriceRefunded()) {
$orderItem->setGwBasePriceRefunded($orderItem->getGwBasePriceInvoiced());
$orderItem->setGwPriceRefunded($orderItem->getGwPriceInvoiced());
$baseRefunded += $orderItem->getGwBasePriceInvoiced();
$refunded += $orderItem->getGwPriceInvoiced();
}
}
if ($refunded > 0 || $baseRefunded > 0) {
$order->setGwItemsBasePriceRefunded($order->getGwItemsBasePriceRefunded() + $baseRefunded);
$order->setGwItemsPriceRefunded($order->getGwItemsPriceRefunded() + $refunded);
$creditmemo->setGwItemsBasePrice($baseRefunded);
$creditmemo->setGwItemsPrice($refunded);
}
/**
* Wrapping for order
*/
if ($order->getGwId() && $order->getGwBasePriceInvoiced() && $order->getGwBasePriceInvoiced() != $order->getGwBasePriceRefunded()) {
$order->setGwBasePriceRefunded($order->getGwBasePriceInvoiced());
$order->setGwPriceRefunded($order->getGwPriceInvoiced());
$creditmemo->setGwBasePrice($order->getGwBasePriceInvoiced());
$creditmemo->setGwPrice($order->getGwPriceInvoiced());
}
/**
* Printed card
*/
if ($order->getGwAddCard() && $order->getGwCardBasePriceInvoiced() && $order->getGwCardBasePriceInvoiced() != $order->getGwCardBasePriceRefunded()) {
$order->setGwCardBasePriceRefunded($order->getGwCardBasePriceInvoiced());
$order->setGwCardPriceRefunded($order->getGwCardPriceInvoiced());
$creditmemo->setGwCardBasePrice($order->getGwCardBasePriceInvoiced());
$creditmemo->setGwCardPrice($order->getGwCardPriceInvoiced());
}
$creditmemo->setBaseGrandTotal($creditmemo->getBaseGrandTotal() + $creditmemo->getGwItemsBasePrice() + $creditmemo->getGwBasePrice() + $creditmemo->getGwCardBasePrice());
$creditmemo->setGrandTotal($creditmemo->getGrandTotal() + $creditmemo->getGwItemsPrice() + $creditmemo->getGwPrice() + $creditmemo->getGwCardPrice());
$creditmemo->setBaseCustomerBalanceReturnMax($creditmemo->getBaseCustomerBalanceReturnMax() + $creditmemo->getGwCardBasePrice() + $creditmemo->getGwBasePrice() + $creditmemo->getGwItemsBasePrice());
$creditmemo->setCustomerBalanceReturnMax($creditmemo->getCustomerBalanceReturnMax() + $creditmemo->getGwCardPrice() + $creditmemo->getGwPrice() + $creditmemo->getGwItemsPrice());
return $this;
}
示例4: _canRefundAmount
/**
* Verify that the requested refund amount is allowed
*
* @param Mage_Sales_Model_Order_Creditmemo $creditmemo
* @param float $amount
* @return bool
*/
protected function _canRefundAmount(Mage_Sales_Model_Order_Creditmemo $creditmemo, $amount)
{
return $amount <= $creditmemo->getBaseCustomerBalanceReturnMax();
}