本文整理汇总了PHP中Sylius\Component\Core\Model\OrderInterface::getLastShipment方法的典型用法代码示例。如果您正苦于以下问题:PHP OrderInterface::getLastShipment方法的具体用法?PHP OrderInterface::getLastShipment怎么用?PHP OrderInterface::getLastShipment使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Sylius\Component\Core\Model\OrderInterface
的用法示例。
在下文中一共展示了OrderInterface::getLastShipment方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: anEmailWithShipmentDetailsOfOrderShouldBeSentTo
/**
* @Then /^an email with shipment's details of (this order) should be sent to "([^"]+)"$/
*/
public function anEmailWithShipmentDetailsOfOrderShouldBeSentTo(OrderInterface $order, $recipient)
{
$this->assertEmailContainsMessageTo($order->getNumber(), $recipient);
$this->assertEmailContainsMessageTo($order->getLastShipment()->getMethod()->getName(), $recipient);
$tracking = $this->sharedStorage->get('tracking_code');
$this->assertEmailContainsMessageTo($tracking, $recipient);
}
示例2:
function it_does_nothing_if_order_has_no_shipping_adjustments(Collection $shippingAdjustments, OrderInterface $order, ShipmentInterface $shipment, ZoneInterface $zone)
{
$order->getLastShipment()->willReturn($shipment);
$order->getAdjustments(AdjustmentInterface::SHIPPING_ADJUSTMENT)->willReturn($shippingAdjustments);
$shippingAdjustments->isEmpty()->willReturn(true);
$shippingAdjustments->last()->shouldNotBeCalled();
$this->apply($order, $zone);
}
示例3: apply
/**
* {@inheritdoc}
*/
public function apply(OrderInterface $order, ZoneInterface $zone)
{
$lastShipment = $order->getLastShipment();
if (!$lastShipment) {
return;
}
$shippingAdjustments = $order->getAdjustments(AdjustmentInterface::SHIPPING_ADJUSTMENT);
if ($shippingAdjustments->isEmpty()) {
return;
}
$taxRate = $this->taxRateResolver->resolve($lastShipment->getMethod(), array('zone' => $zone));
if (null === $taxRate) {
return;
}
$lastShippingAdjustment = $shippingAdjustments->last();
$taxAmount = $this->calculator->calculate($lastShippingAdjustment->getAmount(), $taxRate);
$this->addAdjustment($order, $taxAmount, $taxRate->getLabel(), $taxRate->isIncludedInPrice());
}