gpt4 book ai didi

php - Magento:获取礼品卡代码和金额

转载 作者:行者123 更新时间:2023-12-04 05:41:06 27 4
gpt4 key购买 nike

我无法检索订单上使用的礼品卡代码和金额。例如在 Mage/Sales/Model/Order/Pdf/Abstract.php ,有一段代码适用于销售/订单模型。即

($order instanceof Mage_Sales_Model_Order) is true in the PDF example


$order = Mage::getModel('sales/order')->load($orderID); in another example

在打印的发票 PDF 中,总计部分显示使用的礼品卡以及使用的优惠券代码。优惠码可通过 $order->getCouponCode()获取.

如何从 $order 获取礼品卡代码和金额?我试过了
$order->getGiftcertCode();
$order->getGiftcertAmount();

但这些不会返回任何东西。有什么想法吗?

最佳答案

可能有几种方法可以做到这一点,但我以前没有这样做过,所以仅通过查看 Magento 数据库中的 sales_flat_order 表,我可以看到有许多字段可用于引用不同的礼物卡金额:

base_gift_cards_amount
gift_cards_amount
base_gift_cards_invoiced
gift_cards_invoiced
base_gift_cards_refunded
gift_cards_refunded

这些可以通过以下调用访问:
$order->getBaseGiftCardsAmount();
$order->getGiftCardsAmount();
$order->getBaseGiftCardsInvoiced();
$order->getGiftCardsInvoiced();
$order->getBaseGiftCardsRefunded();
$order->getGiftCardsRefunded();

您要使用的可能是 $order->getGiftCardsAmount()
为了获取礼品卡详细信息,它们作为序列化数组存储在上表的“gift_cards”列中。所以要获得该数组,请调用
$cards = unserialize($order->getGiftCards());

print_r $cards 你会看到这样的:
Array
(
[0] => Array
(
[i] => 1
[c] => {{Gift Card Code}}
[a] => {{Gift Card Amount}}
[ba] => {{Gift Card Base Amount}}
)

)

所以
foreach ($cards as $card) {
echo "Code: " . $card['c'] . "\n";
echo "Amount: " . $card['a'] . "\n";
}

应该工作得很好。

关于php - Magento:获取礼品卡代码和金额,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11236263/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com