我已经在网上和这个网站上搜索了一个解决方案,但找不到任何解决方案.我想获得与Magento中的优惠券代码相关联的客户名称.我找到了使用优惠券代码的时间的一些代码,但我无法获得客户名称.
我尝试了以下代码:
<?php
$mageFilename = 'app/Mage.php';
require_once $mageFilename;
umask(0);
Mage::app( 'admin' );
$coupon = Mage::getModel('salesrule/coupon/usage');
$coupon->load('dd_38WX9N', 'code');
if($coupon->getId()) {
$timesUsed = $coupon->getTimesUsed();
$customer = $coupon->getCustomerId();
echo $timesUsed;
echo $customer;
}
?>
Run Code Online (Sandbox Code Playgroud)
有人可以帮助我,并指出我正确的方向.
非常感谢你的帮助.丹尼尔
这是一个很好的解决方案.您需要使用资源而不是模型来访问salesrule_coupon_usage表并获取customer_id列表
/*@var $coupon Mage_SalesRule_Model_Coupon */
$coupon = Mage::getModel('salesrule/coupon');
$coupon->load('dd_38WX9N', 'code');
if($coupon->getId()){
/* @var $resourceCouponUsage Mage_SalesRule_Model_Mysql4_Coupon_Usage */
$resourceCouponUsage = Mage::getResourceModel('salesrule/coupon_usage');
$read = $resourceCouponUsage->getReadConnection();
$select = $read->select()
->from($resourceCouponUsage->getMainTable())
->where('coupon_id = ?', $coupon->getId());
$data = $read->fetchAll($select);
print_r($data);
foreach($data as $couponUsage){
$customer = Mage::getModel('customer/customer')->load($couponUsage['customer_id']);
echo $customer->getName();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4166 次 |
| 最近记录: |