Open ytilotti opened 2 years ago
@ytilotti I found the missing methods in Tests\BitBag\SyliusMolliePlugin\Entity, so I used this:
<?php
declare(strict_types=1);
namespace App\Entity\Order;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
use BitBag\SyliusMolliePlugin\Entity\OrderInterface;
use BitBag\SyliusMolliePlugin\Entity\AbandonedEmailOrderTrait;
use BitBag\SyliusMolliePlugin\Entity\RecurringOrderTrait;
use BitBag\SyliusMolliePlugin\Entity\ProductVariantInterface;
use Sylius\Component\Core\Model\Order as BaseOrder;
use Sylius\Component\Core\Model\OrderItemInterface;
/**
* @ORM\Entity
* @ORM\Table(name="sylius_order")
*/
class Order extends BaseOrder implements OrderInterface
{
use AbandonedEmailOrderTrait;
use RecurringOrderTrait;
public function hasRecurringContents(): bool
{
return 0 < $this->getRecurringItems()->count();
}
public function hasNonRecurringContents(): bool
{
return 0 < $this->getNonRecurringItems()->count();
}
public function getRecurringItems(): Collection
{
return $this
->items
->filter(function (OrderItemInterface $orderItem) {
$variant = $orderItem->getVariant();
return $variant instanceof ProductVariantInterface
&& true === $variant->isRecurring();
})
;
}
public function getNonRecurringItems(): Collection
{
return $this
->items
->filter(function (OrderItemInterface $orderItem) {
$variant = $orderItem->getVariant();
return $variant instanceof ProductVariantInterface
&& false === $variant->isRecurring();
})
;
}
}
There is an error on the documentation installation (step 3).
BitBag\SyliusMolliePlugin\Entity\OrderTrait
doesn't exists.Need to use use
BitBag\SyliusMolliePlugin\Entity\AbandonedEmailOrderTrait
I suppose. And there are missing functions. Another Trait is missing?