如何通过客户电话过滤订单收集?

Posted

技术标签:

【中文标题】如何通过客户电话过滤订单收集?【英文标题】:How to filter orders collection by customer phone? 【发布时间】:2017-01-05 06:18:52 【问题描述】:

如何按客户电话号码过滤订单收集? 这是我的尝试:

$orders = Mage::getModel('sales/order')->getCollection()
->addAttributeToFilter('customer_phone', array('like' => '%' . $_POST['filter_client_phone'] . '%'))->load();

另外,我如何从订单的运输信息中通过某些属性过滤订单集合?

【问题讨论】:

【参考方案1】:

试试这个:

Mage::getModel('sales/order')
            ->getCollection()
            ->addAddressFields()
            ->addAttributeToFilter('billing_telephone', $_POST['filter_client_phone'])

注意:如果要过滤收货地址电话,请使用shipping_telephone

【讨论】:

【参考方案2】:

您可以使用以下查询过滤订单集合 $addressTable=Mage::getSingleton("core/resource")->getTableName("sales/order_address"); $orders = Mage::getModel('sales/order')->getCollection(); $select=$orders->getSelect()->joinLeft(array('oa'=>$addressTable),'oa.parent_id=main_table.entity_id') ->where('oa.address_type=?','shipping') ->where('oa.telephone LIKE ?','%' . $_POST['filter_client_phone'] . '%');

【讨论】:

以上是关于如何通过客户电话过滤订单收集?的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 GraphQL 中的过滤器和顺序动态创建/获取数据?

Java如何实现通过订单号查询出快递收件人和寄件人的姓名电话?

业务受理需求 客户下单 根据前台页面所选的省市区 关联定区去生成订单

利用谷歌地图采集外贸客户的电话和手机号码

如何通过 WooCommerce 中的时间限制限制每个客户的订单数量

添加隐藏字段以结帐并通过订单处理