Magento - 提交发票事件和价格比较

发布于 2024-12-13 02:18:49 字数 1130 浏览 6 评论 0原文

全部!

我正在尝试在提交发票后按订单比较价格,例如 GrandTotal 和 TotalPaid。 我尝试听“sales_order_invoice_save_after”事件。

config.xml
...
<events>
    <sales_order_invoice_save_after>
        <observers>
            <orderapi>
                <class>orderapi/observer</class>
                <method>checkInvoiceSubmit</method>
            </orderapi>
        </observers>
    </sales_order_invoice_save_after>
</event>
...

下一步:

Observer.php
 public function checkInvoiceSubmit(Varien_Event_Observer $observer)
 {
    $event = $observer->getEvent()->getInvoice();
$paid = $event->getState();
        if($paid == 2) {
        echo $paid."<br/>";
     }
    var_dump("Grand ".$event->getGrandTotal());
    var_dump("Paid ".$event->getTotalPaid());
    var_dump("Due ".$event->getTotalDue());
    var_dump("Refunden "$event->getTotalRefunden());

    die;
}

并查看: 盛大89.97, 付费为空, 由于空, 退款为NULL。

输入: 总计 £89.97, 总支付 £0.00, 退款总额 £0.00, 应付总额 89.97 英镑。

确认付款后如何正确比较两个价格(总价和总价)?

all!

I'm trying to compare prices, in Order, such as GrandTotal and TotalPaid, after submit invoice.
i'm try listen "sales_order_invoice_save_after" event.

config.xml
...
<events>
    <sales_order_invoice_save_after>
        <observers>
            <orderapi>
                <class>orderapi/observer</class>
                <method>checkInvoiceSubmit</method>
            </orderapi>
        </observers>
    </sales_order_invoice_save_after>
</event>
...

and next step:

Observer.php
 public function checkInvoiceSubmit(Varien_Event_Observer $observer)
 {
    $event = $observer->getEvent()->getInvoice();
$paid = $event->getState();
        if($paid == 2) {
        echo $paid."<br/>";
     }
    var_dump("Grand ".$event->getGrandTotal());
    var_dump("Paid ".$event->getTotalPaid());
    var_dump("Due ".$event->getTotalDue());
    var_dump("Refunden "$event->getTotalRefunden());

    die;
}

and see:
Grand 89.97,
Paid NULL,
DUE NULL,
Refunden NULL.

input:
Grand Total £89.97,
Total Paid £0.00,
Total Refunded £0.00,
Total Due £89.97.

How do I properly compare the two prices(Grand and Total) after confirmation of payment?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

水中月 2024-12-20 02:18:49

解决方案是:

$event = $observer->getEvent()->getInvoice()->getOrder();

享受吧!

Solution is:

$event = $observer->getEvent()->getInvoice()->getOrder();

Enjoy!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文