Einer unserer Kunden hat darum gebeten, dass sein Personal zur Auftragserfassung Aufträge mit einer negativen Auftragssumme übermitteln kann. Die Anwendung erlaubt bereits negative Werbebuchungen, was gut funktioniert, solange der Rest der Bestellung eine positive Gesamtsumme ergibt.
Es scheint, dass Magento sich sehr bemüht, keine negative Gesamtsumme zu haben. Ein Blick auf die gesammelten Summen zeigt, dass Magento eine Geschenkkarte für den umgekehrten Betrag einreicht. Wenn ich die Geschenkkarte deaktiviere, wird eine Gutschrift für das Geschäft angewendet (auch wenn keine Gutschrift vorhanden ist). Ich vermute, das ist nur eine Eigenart (und möglicherweise ein roter Hering).
Kann jemand herausfinden, wo Magento 0 als maximale Gesamtsumme erzwingt und wie wir die Anfrage möglicherweise erfüllen? Ich möchte die Summe nicht einfach erzwingen, da Magento alles normal berechnen soll, nur unter Berücksichtigung einer negativen Gesamtsumme.
Der Grundgedanke der Frage ist die technische Machbarkeit, aber sobald dies angesprochen ist, interessieren mich irgendwelche „Fallstricke“ oder Gedanken, die die Verwendung von Summen negativer Ordnungen von einem nichttechnischen Standpunkt aus abbringen könnten.
quelle
Antworten:
Dies scheint eine sehr riskante Entscheidung zu sein. Wenn Sie es implementieren würden, müssten Sie zu viel des Kerns überschreiben, was es extrem schwierig macht, die Site zu aktualisieren und zu unterstützen.
Das Durchführen einer Suche im Magento-Core nach
max(0
Retouren führt zu folgenden Bereichen:Enterprise_CustomerBalance_Model_Observer::creditmemoDataImport()
Enterprise_GiftCard_Model_Catalog_Product_Price_Giftcard::getFinalPrice()
Mage_Bundle_Model_Product_Price::getFinalPrice()
Mage_Catalog_Model_Product_Type_Price::getFinalPrice()
Mage_Catalog_Model_Product_Type_Configurable_Price::getFinalPrice()
Mage_Catalog_Model_Product_Type_Grouped_Price::getFinalPrice()
Mage_CatalogRule_Helper_Data::calcPriceRule()
Mage_Downloadable_Model_Product_Price::getFinalPrice()
Mage_SalesRule_Model_Validator::process()
Mage_Tax_Block_Sales_Order_Tax::_initSubtotal()
Mage_Tax_Model_Sales_Total_Quote_Tax (multiple uses)
Und vieles mehr in Vorlagen im Adminhtml- und Frontend-Bereich. Möglicherweise müssen Sie viele dieser Modelle neu schreiben, um die gewünschte Funktionalität zu erzielen.
Möglicherweise möchten Sie die folgenden Alternativen in Betracht ziehen:
Wenn Sie ein Szenario angeben, in dem eine Bestellung mit einer negativen Gesamtsumme endet, und auch die Gründe dafür, kann die Community Ihnen eine bessere Antwort geben. Es ist schwer, ein Problem wie dieses zu lösen, bis Sie den geschäftlichen Wert verstehen, der hinter der Entscheidung steht.
quelle