本文整理匯總了PHP中Sylius\Component\Promotion\Model\PromotionSubjectInterface::getPromotionSubjectTotal方法的典型用法代碼示例。如果您正苦於以下問題:PHP PromotionSubjectInterface::getPromotionSubjectTotal方法的具體用法?PHP PromotionSubjectInterface::getPromotionSubjectTotal怎麽用?PHP PromotionSubjectInterface::getPromotionSubjectTotal使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Sylius\Component\Promotion\Model\PromotionSubjectInterface
的用法示例。
在下文中一共展示了PromotionSubjectInterface::getPromotionSubjectTotal方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: isEligible
/**
* {@inheritdoc}
*/
public function isEligible(PromotionSubjectInterface $subject, array $configuration)
{
if (isset($configuration['equal']) && $configuration['equal']) {
return $subject->getPromotionSubjectTotal() >= $configuration['amount'];
}
return $subject->getPromotionSubjectTotal() > $configuration['amount'];
}
示例2: execute
/**
* {@inheritdoc}
*/
public function execute(PromotionSubjectInterface $subject, array $configuration, PromotionInterface $promotion)
{
if (!$subject instanceof OrderInterface && !$subject instanceof OrderItemInterface) {
throw new UnexpectedTypeException($subject, 'Sylius\\Component\\Core\\Model\\OrderInterface or Sylius\\Component\\Core\\Model\\OrderItemInterface');
}
$adjustment = $this->createAdjustment($promotion);
$adjustment->setAmount(-$subject->getPromotionSubjectTotal() * $configuration['percentage']);
$subject->addAdjustment($adjustment);
}
示例3: execute
/**
* {@inheritdoc}
*/
public function execute(PromotionSubjectInterface $subject, array $configuration, PromotionInterface $promotion)
{
if (!$subject instanceof OrderInterface) {
throw new UnexpectedTypeException($subject, OrderInterface::class);
}
$adjustment = $this->createAdjustment($promotion);
$adjustmentAmount = (int) round($subject->getPromotionSubjectTotal() * $configuration['percentage']);
$adjustment->setAmount(-$adjustmentAmount);
$subject->addAdjustment($adjustment);
}
示例4: execute
/**
* {@inheritdoc}
*/
public function execute(PromotionSubjectInterface $subject, array $configuration, PromotionInterface $promotion)
{
if (!$subject instanceof OrderInterface && !$subject instanceof OrderItemInterface) {
throw new UnexpectedTypeException($subject, 'Sylius\\Component\\Core\\Model\\OrderInterface or Sylius\\Component\\Core\\Model\\OrderItemInterface');
}
$adjustment = $this->repository->createNew();
$adjustment->setAmount(-$subject->getPromotionSubjectTotal() * $configuration['percentage']);
$adjustment->setLabel(OrderInterface::PROMOTION_ADJUSTMENT);
$adjustment->setDescription($promotion->getDescription());
$subject->addAdjustment($adjustment);
}
示例5: array
function it_should_recognize_subject_as_eligible_if_subject_total_is_equal_with_configured_depending_on_equal_setting(PromotionSubjectInterface $subject)
{
$subject->getPromotionSubjectTotal()->shouldBeCalled()->willReturn(500);
$this->isEligible($subject, array('amount' => 500, 'equal' => false))->shouldReturn(false);
$this->isEligible($subject, array('amount' => 500, 'equal' => true))->shouldReturn(true);
}
示例6:
function it_should_recognize_subject_as_eligible_if_subject_total_is_equal_with_configured(PromotionSubjectInterface $subject)
{
$subject->getPromotionSubjectTotal()->shouldBeCalled()->willReturn(500);
$this->isEligible($subject, ['amount' => 500])->shouldReturn(true);
}
示例7: isEligible
/**
* {@inheritdoc}
*/
public function isEligible(PromotionSubjectInterface $subject, array $configuration)
{
return $subject->getPromotionSubjectTotal() >= $configuration['amount'];
}