顧客に割引料金を提供するカスタム モジュールを作成しました。このリンクを参照して、顧客手数料割引用のカスタム モジュールを作成しました。
この場合、顧客が独自の割引ポイントを持っている場合、カート ページで割引ポイントを適用して、小計と総計を減らします。変更は、カートやチェックアウト ページなどで正常に機能します。
私の問題は、注文の小計と総計が Paypal 支払いゲートウェイの項目に反映されないことです。
そのため、イベント オブザーバーを作成して、サブ合計で割引料金を差し引き、新しい行をペイパル ライン アイテムに追加しました。
以下のコードでは、割引料金と小計控除のために新しい行を追加しようとしました
<events>
<paypal_prepare_line_items>
<observers>
<modulename>
<type>singleton</type>
<class>modulename/observer</class>
<method>prepareItems</method>
</modulename>
</observers>
</paypal_prepare_line_items>
</events>
そしてオブザーバーコアは
<?php
class Mycompany_Modulename_Model_Observer extends Mage_Core_Model_Abstract
{
const TOTAL_FEE = 'Fee';
const TOTAL_SUBTOTAL = 'subtotal';
public function prepareItems($observer)
{
$cart = $observer->getPaypalCart();
if($cart->getSalesEntity()->getFeeAmount())
{
$name = 'Custom Discount';
$qty = '1';
$amount = -1.00 * $cart->getSalesEntity()->getFeeAmount();
$identifier = NULL;
$cart->_shouldRender = true;
$item = new Varien_Object(array(
'name' => $name,
'qty' => $qty,
'amount' => (float)$amount,
));
$cart->_items[] = $item;
$cart->updateTotal();
}
return;
}
}
誰でも私に正しい解決策を指摘できますか?
Paypal の項目に割引料金を追加する必要があり、小計が正しく計算されます。
よろしくお願いします。
ありがとう。