1

我使用各种网格功能创建了一个自定义产品网格,并将其用作订单。基本上,有一个产品名称、产品价格和一个输入字段供用户输入他们想要的产品数量。

有数千种产品,我需要对用户选择的产品进行小计。

我得到的最接近的是将以下内容添加到 Grid.php ...

   protected function _afterLoadCollection()
{
    $collection = $this->getCollection()->load();
    $total = 0;
    if ($collection) {
            foreach($collection as $item)  {
                    $itemPrice = $item->getPrice();
                    $itemQty = $item->getQty();
                    $total = $total + ($itemPrice * $itemQty);
            }
       echo $total;
    }
}

但是,结果会受到当前限制的影响,因此只计算当前页面的总和。

有没有办法解决这个问题,或者有更好的方法来获得两列的总和?

在此先感谢,我已经坚持了好几天了!

4

1 回答 1

0

你可以试试这个清除收藏补充,并为第一页设置一个很大的限制

$_productCollection = $this->getLoadedProductCollection();
$_productCollection->clear();
$_productCollection->setPage(1,99999);
于 2012-11-22T19:49:30.213 回答