src/Entity/System/CustomerOrderFraudRule.php line 16

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace App\Entity\System;
  4. use Doctrine\Common\Collections\ArrayCollection;
  5. use Doctrine\Common\Collections\Collection;
  6. use Doctrine\ORM\Mapping as ORM;
  7. /**
  8. * @ORM\Table(name="customer_order_fraud_rule")
  9. *
  10. * @ORM\Entity(repositoryClass="App\Repository\System\CustomerOrderFraudRuleRepository")
  11. */
  12. class CustomerOrderFraudRule
  13. {
  14. /**
  15. * @ORM\Column(type="integer")
  16. *
  17. * @ORM\Id
  18. *
  19. * @ORM\GeneratedValue
  20. */
  21. private ?int $id = null;
  22. /**
  23. * @ORM\Column(type="string", nullable=false)
  24. */
  25. private string $field = '';
  26. /**
  27. * @ORM\Column(type="boolean", nullable=false)
  28. */
  29. private bool $active = false;
  30. /**
  31. * @ORM\Column(type="datetime")
  32. */
  33. private \DateTimeInterface $dateAdd;
  34. /**
  35. * @ORM\ManyToOne(targetEntity="App\Entity\System\CustomerOrderFraudRuleType", inversedBy="customerOrderFraudRules")
  36. *
  37. * @ORM\JoinColumn(name="id_customer_order_fraud_rule_type", referencedColumnName="id", nullable=false)
  38. */
  39. private CustomerOrderFraudRuleType $customerOrderFraudRuleType;
  40. /**
  41. * @var Collection<int, Order>
  42. *
  43. * @ORM\OneToMany(targetEntity="App\Entity\System\Order", mappedBy="customerOrderFraudRule")
  44. */
  45. private Collection $orders;
  46. public function __construct()
  47. {
  48. $this->dateAdd = new \DateTime();
  49. $this->orders = new ArrayCollection();
  50. }
  51. public function getId(): ?int
  52. {
  53. return $this->id;
  54. }
  55. public function getField(): string
  56. {
  57. return $this->field;
  58. }
  59. public function setField(string $field): self
  60. {
  61. $this->field = $field;
  62. return $this;
  63. }
  64. public function getDateAdd(): \DateTimeInterface
  65. {
  66. return $this->dateAdd;
  67. }
  68. public function setDateAdd(\DateTimeInterface $dateAdd): self
  69. {
  70. $this->dateAdd = $dateAdd;
  71. return $this;
  72. }
  73. public function getCustomerOrderFraudRuleType(): CustomerOrderFraudRuleType
  74. {
  75. return $this->customerOrderFraudRuleType;
  76. }
  77. public function setCustomerOrderFraudRuleType(CustomerOrderFraudRuleType $customerOrderFraudRuleType): self
  78. {
  79. $this->customerOrderFraudRuleType = $customerOrderFraudRuleType;
  80. return $this;
  81. }
  82. /**
  83. * @return Collection<int, Order>
  84. */
  85. public function getOrders(): Collection
  86. {
  87. return $this->orders;
  88. }
  89. public function addOrder(Order $order): self
  90. {
  91. if (!$this->orders->contains($order)) {
  92. $this->orders->add($order);
  93. $order->setCustomerOrderFraudRule($this);
  94. }
  95. return $this;
  96. }
  97. public function removeOrder(Order $order): self
  98. {
  99. if ($this->orders->removeElement($order) && $order->getCustomerOrderFraudRule() === $this) {
  100. $order->setCustomerOrderFraudRule(null);
  101. }
  102. return $this;
  103. }
  104. public function isActive(): bool
  105. {
  106. return $this->active;
  107. }
  108. public function setActive(bool $active): CustomerOrderFraudRule
  109. {
  110. $this->active = $active;
  111. return $this;
  112. }
  113. }