Domanda

Ho aggiunto un osservatore Evento "sales_order_place_before" e vogliono personalizzare totale prima di elaborare il pagamento. ma ho provato un sacco di cambiare il prezzo di quotazione, ma non funziona.

Qualcuno ha qualche idea ??

È stato utile?

Soluzione

È necessario aggiungere nuovo collettore dopo un totale generale (Mage_Sales_Model_Quote_Address_Total_Grand). Ha modificare somma che è stato impostato dal collettore del totale generale.

I ha parlato di un caso del genere alla conferenza MageConf in Ucraina settimana fa. Video e diapositive non sono ancora disponibili, ma è possibile scaricare demo-modulo che è stato descritto alla conferenza. V'è un esempio di collettore totale che calcola prezzo incarto.

È possibile modificare la mia demo totale collettore così sarà inserito nel processo di raccolta DOPO collettore Totale generale (vedi config.xml nel modulo etc directory - Rimuovere nodo <before>subtotal</before> quindi utilizzare <after>grand_total</after> invece) e modificare Collect () metodo giusto per impostare i totali complessivi per i valori predefiniti:

$address->setGrandTotal($someValue);
$address->setBaseGrandTotal($someBaseValue);

Oppure si può lasciare questo modulo così com'è, ma i totali set negativi in ??esso. Così collettore Totale generale li sottrarrà e abbassare gran valore totale come si desidera. Anche in tal caso cliente sarà in grado di vedere i tuoi valori negativi (darli in fetch () metodo) e capire il motivo per cui i totali sono stati abbassati.

Buon divertimento:)

Altri suggerimenti

non si può si deve fare un nuovo oggetto totale o aggiungere le somme come prodotti virtuali

si prega di osservare

Mage_Sales_Model_Quote_Address_Total_Abstract Mage_Sales_Model_Order_Invoice_Total_Abstract Mage_Sales_Model_Order_Creditmemo_Total_Abstract

per vedere ciò che è necessario per implementare un oggetto totale. Potrebbe anche essere necessario per estendere gli oggetti tasso

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top