本文整理汇总了PHP中Sylius\Component\Core\Model\OrderItemInterface::getUnitPrice方法的典型用法代码示例。如果您正苦于以下问题:PHP OrderItemInterface::getUnitPrice方法的具体用法?PHP OrderItemInterface::getUnitPrice怎么用?PHP OrderItemInterface::getUnitPrice使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sylius\Component\Core\Model\OrderItemInterface
的用法示例。
在下文中一共展示了OrderItemInterface::getUnitPrice方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1:
function it_applies_percentage_discount_on_every_unit_in_order(FactoryInterface $adjustmentFactory, FilterInterface $priceRangeFilter, FilterInterface $taxonFilter, FilterInterface $productFilter, AdjustmentInterface $promotionAdjustment1, AdjustmentInterface $promotionAdjustment2, Collection $originalItems, Collection $units, OrderInterface $order, OrderItemInterface $orderItem1, OrderItemUnitInterface $unit1, OrderItemUnitInterface $unit2, PromotionInterface $promotion)
{
$order->getItems()->willReturn($originalItems);
$originalItems->toArray()->willReturn([$orderItem1]);
$priceRangeFilter->filter([$orderItem1], ['percentage' => 0.2])->willReturn([$orderItem1]);
$taxonFilter->filter([$orderItem1], ['percentage' => 0.2])->willReturn([$orderItem1]);
$productFilter->filter([$orderItem1], ['percentage' => 0.2])->willReturn([$orderItem1]);
$orderItem1->getQuantity()->willReturn(2);
$orderItem1->getUnits()->willReturn($units);
$units->getIterator()->willReturn(new \ArrayIterator([$unit1->getWrappedObject(), $unit2->getWrappedObject()]));
$orderItem1->getUnitPrice()->willReturn(500);
$promotion->getName()->willReturn('Test promotion');
$promotion->getCode()->willReturn('TEST_PROMOTION');
$adjustmentFactory->createNew()->willReturn($promotionAdjustment1, $promotionAdjustment2);
$promotionAdjustment1->setType(AdjustmentInterface::ORDER_UNIT_PROMOTION_ADJUSTMENT)->shouldBeCalled();
$promotionAdjustment1->setLabel('Test promotion')->shouldBeCalled();
$promotionAdjustment1->setAmount(-100)->shouldBeCalled();
$promotionAdjustment1->setOriginCode('TEST_PROMOTION')->shouldBeCalled();
$promotionAdjustment2->setType(AdjustmentInterface::ORDER_UNIT_PROMOTION_ADJUSTMENT)->shouldBeCalled();
$promotionAdjustment2->setLabel('Test promotion')->shouldBeCalled();
$promotionAdjustment2->setAmount(-100)->shouldBeCalled();
$promotionAdjustment2->setOriginCode('TEST_PROMOTION')->shouldBeCalled();
$unit1->addAdjustment($promotionAdjustment1)->shouldBeCalled();
$unit2->addAdjustment($promotionAdjustment2)->shouldBeCalled();
$this->execute($order, ['percentage' => 0.2], $promotion);
}
示例2:
function it_returns_regular_price_of_discount_order_item(OrderItemInterface $orderItem)
{
$orderItem->getQuantity()->willReturn(2);
$orderItem->getUnitPrice()->willReturn(1000);
$orderItem->getAdjustmentsTotalRecursively(AdjustmentInterface::TAX_ADJUSTMENT)->willReturn(1000);
$this->getRegularPrice($orderItem)->shouldReturn(3000);
}
示例3: let
function let(OrderItemInterface $orderItem)
{
$orderItem->getUnitPrice()->willReturn(1000);
$orderItem->addUnit(Argument::type(OrderItemUnitInterface::class))->shouldBeCalled();
$this->beConstructedWith($orderItem);
}
示例4: getRegularPrice
/**
* @param OrderItemInterface $orderItem
*
* @return int
*/
public function getRegularPrice(OrderItemInterface $orderItem)
{
return $orderItem->getUnitPrice() * $orderItem->getQuantity() + $orderItem->getAdjustmentsTotalRecursively(AdjustmentInterface::TAX_ADJUSTMENT);
}