Нет описания

StatisticsFormEntity.php 1.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. namespace MailPoet\Entities;
  3. if (!defined('ABSPATH')) exit;
  4. use MailPoet\Doctrine\EntityTraits\AutoincrementedIdTrait;
  5. use MailPoet\Doctrine\EntityTraits\CreatedAtTrait;
  6. use MailPoet\Doctrine\EntityTraits\SafeToOneAssociationLoadTrait;
  7. use MailPoetVendor\Doctrine\ORM\Mapping as ORM;
  8. /**
  9. * @ORM\Entity()
  10. * @ORM\Table(name="statistics_forms")
  11. */
  12. class StatisticsFormEntity {
  13. use AutoincrementedIdTrait;
  14. use CreatedAtTrait;
  15. use SafeToOneAssociationLoadTrait;
  16. /**
  17. * @ORM\ManyToOne(targetEntity="MailPoet\Entities\FormEntity")
  18. * @ORM\JoinColumn(name="form_id", referencedColumnName="id")
  19. * @var FormEntity|null
  20. */
  21. private $form;
  22. /**
  23. * @ORM\ManyToOne(targetEntity="MailPoet\Entities\SubscriberEntity")
  24. * @ORM\JoinColumn(name="subscriber_id", referencedColumnName="id")
  25. * @var SubscriberEntity|null
  26. */
  27. private $subscriber;
  28. public function __construct(
  29. FormEntity $form,
  30. SubscriberEntity $subscriber
  31. ) {
  32. $this->form = $form;
  33. $this->subscriber = $subscriber;
  34. }
  35. public function getForm(): ?FormEntity {
  36. $this->safelyLoadToOneAssociation('form');
  37. return $this->form;
  38. }
  39. public function getSubscriber(): ?SubscriberEntity {
  40. $this->safelyLoadToOneAssociation('form');
  41. return $this->subscriber;
  42. }
  43. }