0

客户想要一个可以从他的产品中看到自定义选项的页面,我设法复制销售>订单,然后自定义该页面以显示自定义选项。

问题是,这些项目中只有一个有自定义选项,在销售 > 订单中,您可以看到所有订单,当然您可以只输入 SKU(我也输入了 SKU 列),但我希望它自动从那个 SKU。在 Grid.php 上我有什么:

protected function _prepareCollection()
    {
        $collection = Mage::getResourceModel($this->_getCollectionClass())
        ->join(
        'sales/order_item',
        '`sales/order_item`.order_id=`main_table`.entity_id',
        array(
        'skus' => new Zend_Db_Expr('group_concat(`sales/order_item`.sku SEPARATOR ",")'),
        ));

        $collection->getSelect()->group('main_table.entity_id');

        $collection->getSelect()->joinLeft(array('sfoi' => 'sales_flat_order_item'), 
        'main_table.entity_id = sfoi.order_id', 
        array('sfoi.product_options'));

        $collection->getSelect()->join('sales_flat_order', 'main_table.entity_id = sales_flat_order.entity_id',array('coupon_code'));

        $this->setCollection($collection);

        return parent::_prepareCollection();
    }

有了这个,我可以获得 SKU、产品选项和使用的优惠券代码。如何将其设置为仅返回 SKU SD0003?

谢谢

4

1 回答 1

1

尝试这个:

$collection->getSelect()->where('sfoi.sku = "' . $yourDesireSku . '"');

问候。

于 2013-07-30T15:38:39.410 回答