Geo*_*off 2 account statistics lifetime magento
在订单视图(查看客户订单时的主屏幕)中,我想添加一些表格行并添加客户的终身销售(总销售额)和订单总金额.
我要添加代码的文件在这里:app/design/adminhtml/default/default/template/sales/order/view/info.phtml
在此文件中,如下:
<?php foreach ($this->getCustomerAccountData() as $data):?>
<tr>
<td class="label"><label><?php echo $data['label'] ?></label></td>
<td class="value"><strong><?php echo $data['value'] ?></strong></td>
</tr>
<?php endforeach;?>
Run Code Online (Sandbox Code Playgroud)
是我用正确的信息添加我需要的行/单元格的地方.你能告诉我如何获得必要的数据吗?
这就是你获得终身销售的方式:
$customer = Mage::getModel('customer/customer')->load($customerId);
$customerTotals = Mage::getResourceModel('sales/sale_collection')
->setOrderStateFilter(Mage_Sales_Model_Order::STATE_CANCELED, true)
->setCustomerFilter($customer)
->load()
->getTotals();
$customerLifetimeSales = $customerTotals->getLifetime();
$customerNumberOfOrders = $customerTotals->getNumOrders();
Run Code Online (Sandbox Code Playgroud)
这是$ customerTotals的var_dump:
object(Varien_Object)[662]
protected '_data' =>
array
'lifetime' => float 10503.13
'base_lifetime' => float 10503.13
'base_avgsale' => float 92.9480530973
'num_orders' => int 113
'avgsale' => float 92.9480530973
protected '_hasDataChanges' => boolean false
protected '_origData' => null
protected '_idFieldName' => null
protected '_isDeleted' => boolean false
Run Code Online (Sandbox Code Playgroud)
您可以将该代码放在块上的方法中,并在每行中调用它.像这样的东西:
public function getCustomerTotals(Mage_Customer_Model_Customer $customer)
{
// TODO: Add necessary validation...
return Mage::getResourceModel('sales/sale_collection')
->setOrderStateFilter(Mage_Sales_Model_Order::STATE_CANCELED, true)
->setCustomerFilter($customer)
->load()
->getTotals();
}
Run Code Online (Sandbox Code Playgroud)
在你的代码中你可以添加:
<?php $customerTotals = $this->getCustomerTotals($customer); ?>
<td><?php echo $customerTotals->getLifetime(); ?></td>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3837 次 |
| 最近记录: |