/** * @param ProductGridWidgetRenderEvent $event */ public function onWidgetRender(ProductGridWidgetRenderEvent $event) { $params = $event->getWidgetRouteParameters(); $params[PriceListRequestHandler::PRICE_LIST_KEY] = $this->priceListRequestHandler->getPriceList()->getId(); $params[PriceListRequestHandler::PRICE_LIST_CURRENCY_KEY] = $this->priceListRequestHandler->getPriceListSelectedCurrencies(); $params[PriceListRequestHandler::TIER_PRICES_KEY] = $this->priceListRequestHandler->getShowTierPrices(); $event->setWidgetRouteParameters($params); }
/** * @param OrmFilterDatasourceAdapter $ds * @param string $unit */ protected function qbPrepare(OrmFilterDatasourceAdapter $ds, $unit) { $qb = $ds->getQueryBuilder(); $rootAliasCollection = $qb->getRootAliases(); $rootAlias = reset($rootAliasCollection); $joinAlias = $this->getJoinAlias(); $currency = $this->get('data_name'); $qb->innerJoin('OroB2BPricingBundle:ProductPrice', $joinAlias, Join::WITH, $rootAlias . '.id = IDENTITY(' . $joinAlias . '.product)'); $this->addEqExpr($ds, $joinAlias . '.priceList', $ds->generateParameterName('priceList'), $this->priceListRequestHandler->getPriceList()); $this->addEqExpr($ds, $joinAlias . '.currency', $ds->generateParameterName('currency'), $currency); $this->addEqExpr($ds, $joinAlias . '.quantity', $ds->generateParameterName('quantity'), 1); $this->addEqExpr($ds, 'IDENTITY(' . $joinAlias . '.unit)', $ds->generateParameterName('unit'), $unit); }
/** * @return PriceList */ protected function getPriceList() { return $this->priceListRequestHandler->getPriceList(); }
/** * @expectedException \InvalidArgumentException * @expectedExceptionMessage Default PriceList not found */ public function testDefaultPriceListNotFound() { $this->repository->expects($this->once())->method('getDefault')->willReturn(null); $this->repository->expects($this->never())->method('find'); $this->handler->getPriceList(); }