|
|
|
|
|
|
|
|
use Lc\CaracoleBundle\Model\Product\ProductInterface; |
|
|
use Lc\CaracoleBundle\Model\Product\ProductInterface; |
|
|
use Lc\CaracoleBundle\Model\Reduction\ReductionCartInterface; |
|
|
use Lc\CaracoleBundle\Model\Reduction\ReductionCartInterface; |
|
|
use Lc\CaracoleBundle\Model\Reduction\ReductionCreditInterface; |
|
|
use Lc\CaracoleBundle\Model\Reduction\ReductionCreditInterface; |
|
|
|
|
|
use Lc\CaracoleBundle\Model\Section\SectionInterface; |
|
|
use Lc\CaracoleBundle\Model\User\VisitorInterface; |
|
|
use Lc\CaracoleBundle\Model\User\VisitorInterface; |
|
|
use Lc\CaracoleBundle\Repository\SectionRepositoryQueryTrait; |
|
|
use Lc\CaracoleBundle\Repository\SectionRepositoryQueryTrait; |
|
|
use Lc\SovBundle\Model\User\UserInterface; |
|
|
use Lc\SovBundle\Model\User\UserInterface; |
|
|
|
|
|
|
|
|
protected bool $isJoinDeliveryPointSale = false; |
|
|
protected bool $isJoinDeliveryPointSale = false; |
|
|
protected bool $isJoinOrderPayment = false; |
|
|
protected bool $isJoinOrderPayment = false; |
|
|
protected bool $isFilteredByStatus = false; |
|
|
protected bool $isFilteredByStatus = false; |
|
|
|
|
|
protected bool $isJoinMainOrderShop = false; |
|
|
|
|
|
|
|
|
public function __construct(OrderShopRepository $repository, PaginatorInterface $paginator) |
|
|
public function __construct(OrderShopRepository $repository, PaginatorInterface $paginator) |
|
|
{ |
|
|
{ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public function filterIsNotComplementaryOrderShop(): self |
|
|
public function filterIsNotComplementaryOrderShop(): self |
|
|
{ |
|
|
{ |
|
|
return $this |
|
|
|
|
|
->andWhere('.mainOrderShop = false OR .mainOrderShop IS NULL'); |
|
|
|
|
|
|
|
|
return $this->andWhere('.mainOrderShop = false OR .mainOrderShop IS NULL'); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public function filterIsComplementaryOrderShop(): self |
|
|
public function filterIsComplementaryOrderShop(): self |
|
|
{ |
|
|
{ |
|
|
|
|
|
return $this->andWhere('.mainOrderShop = true OR .mainOrderShop IS NOT NULL'); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public function filterSectionMainOrderShop(SectionInterface $section) |
|
|
|
|
|
{ |
|
|
|
|
|
$this->joinMainOrderShop(); |
|
|
|
|
|
|
|
|
return $this |
|
|
return $this |
|
|
->andWhere('.mainOrderShop = true OR .mainOrderShop IS NOT NULL'); |
|
|
|
|
|
|
|
|
->andWhere('mainOrderShop.section = :section') |
|
|
|
|
|
->setParameter('section', $section); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public function filterIsNullMainOrderShop(): self |
|
|
public function filterIsNullMainOrderShop(): self |
|
|
|
|
|
|
|
|
return $this; |
|
|
return $this; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public function joinMainOrderShop(): self |
|
|
|
|
|
{ |
|
|
|
|
|
if (!$this->isJoinMainOrderShop) { |
|
|
|
|
|
$this->isJoinMainOrderShop = true; |
|
|
|
|
|
|
|
|
|
|
|
return $this |
|
|
|
|
|
->leftJoin('.mainOrderShop', 'mainOrderShop'); |
|
|
|
|
|
} |
|
|
|
|
|
return $this; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |