<?php
namespace Products\NotificationsBundle\Entity\Lists;
use App\Model\Query\ConditionQuery\Condition\InCondition;
use App\Model\Query\ConditionQuery\ConditionGroupInterface;
use App\Model\Query\ConditionQuery\ConditionQuery;
use App\Model\Query\ConditionQuery\ConditionQueryListInterface;
use Doctrine\ORM\Mapping as ORM;
use Products\NotificationsBundle\Entity\AbstractList;
use Products\NotificationsBundle\Util\ListBuilder\AbstractListBuilder;
/**
* Class DistrictList
* @package Products\NotificationsBundle\Entity\Lists
*
* @ORM\Entity(
* repositoryClass = "Products\NotificationsBundle\Doctrine\Repository\Lists\DistrictListRepository",
* )
*/
class DistrictList extends AbstractList implements ConditionQueryListInterface
{
public const DISCR = 'district';
/**
* {@inheritDoc}
*/
public function getConditionQuery(): ConditionQuery
{
return new ConditionQuery(
ConditionQuery::PROFILE_ENTITY,
[
new InCondition(AbstractListBuilder::ENTITIES__PROFILES.'.role', $this->getRoles()),
],
ConditionGroupInterface::MODES__AND,
);
}
}