Magento有一个丰富的销售模块,有很多选项,而且它有很好的文档记录高级别的东西,但是当涉及微妙的区别时我会被困住。我正在尝试整理一些订单分析软件,但我无法确切地弄清楚Magento订单的小计和baseSubtotal是如何不同的,我也没能找到那种详细程度的API文档。
我唯一能找到的是app/code/core/Mage/Sales/Model
的源代码,但它似乎表明值总是相同的。
Order/Creditmemo/Total/Subtotal.php: $creditmemo->setSubtotal($subtotal);
Order/Creditmemo/Total/Subtotal.php: $creditmemo->setBaseSubtotal($baseSubtotal);
Order/Invoice/Total/Subtotal.php: $invoice->setSubtotal($subtotal);
Order/Invoice/Total/Subtotal.php: $invoice->setBaseSubtotal($baseSubtotal);
Quote.php: $this->setSubtotal(0);
Quote.php: $this->setBaseSubtotal(0);
Quote.php: $address->setSubtotal(0);
Quote.php: $address->setBaseSubtotal(0);
Quote.php: $this->setSubtotal((float) $this->getSubtotal() + $address->getSubtotal());
Quote.php: $this->setBaseSubtotal((float) $this->getBaseSubtotal() + $address->getBaseSubtotal());
Recurring/Profile.php: ->setBaseSubtotal($billingAmount)
Recurring/Profile.php: ->setSubtotal($billingAmount)
他们是否有所不同,如果有,怎么样?
答案 0 :(得分:30)
区别在于Subtotal
是客户货币的小计,BaseSubtotal
是商店基本货币的小计。
因此,如果您的商店安装了欧元和美元,美元是基础货币,当您的欧洲客户下订单时,假设为100欧元,Subtotal
将为100.0000,BaseSubtotal
将为150.0000(本例1€== 1.5美元)
HTH