data = [ 'count' => 1, ]; $this->newsletterLink = $newsletterLink; $this->subscriber = $subscriber; } public function withCount($count) { $this->data['count'] = $count; return $this; } public function create(): StatisticsClickEntity { $entityManager = ContainerWrapper::getInstance()->get(EntityManager::class); $newsletter = $this->newsletterLink->getNewsletter(); assert($newsletter instanceof NewsletterEntity); $queue = $newsletter->getLatestQueue(); assert($queue instanceof SendingQueueEntity); $entity = new StatisticsClickEntity( $newsletter, $queue, $this->subscriber, $this->newsletterLink, $this->data['count'] ); $entityManager->persist($entity); $entityManager->flush(); return $entity; } }