<?phpnamespace App\Entity;use App\Repository\SageArticleRepository;use Doctrine\ORM\Mapping as ORM;/** * @ORM\Entity(repositoryClass=SageArticleRepository::class) * @ORM\HasLifecycleCallbacks */class SageArticle{ /** * @ORM\Id * @ORM\GeneratedValue * @ORM\Column(type="integer") */ private $id; /** * @ORM\Column(type="string", length=20, unique=true) */ private $sageCode; /** * @ORM\Column(type="string", length=255) */ private $name; /** * @ORM\Column(type="text", nullable=true) */ private $description; /** * @ORM\Column(type="boolean") */ private $active; /** * @ORM\Column(type="boolean") */ private $sentToSage; /** * @ORM\Column(type="datetime", nullable=true) */ private $syncDate; /** * @ORM\Column(type="datetime_immutable") */ private $createdAt; /** * @ORM\Column(type="datetime_immutable") */ private $updatedAt; /** * @ORM\ManyToOne(targetEntity=SageFamily::class, inversedBy="sageArticles") * @ORM\JoinColumn(nullable=false) */ private $family; /** * @ORM\ManyToOne(targetEntity=SageSubFamily::class, inversedBy="sageArticles") */ private $subfamily; /** * @ORM\Column(type="datetime") */ private $dischargeDate; /** * @ORM\ManyToOne(targetEntity=SageVatRates::class, inversedBy="sageArticles") * @ORM\JoinColumn(nullable=false) */ private $vatType; public function getId(): ?int { return $this->id; } public function getSageCode(): ?string { return $this->sageCode; } public function setSageCode(string $sageCode): self { $this->sageCode = $sageCode; return $this; } public function getName(): ?string { return $this->name; } public function setName(string $name): self { $this->name = $name; return $this; } public function getDescription(): ?string { return $this->description; } public function setDescription(?string $description): self { $this->description = $description; return $this; } public function isActive(): ?bool { return $this->active; } public function setActive(bool $active): self { $this->active = $active; return $this; } public function isSentToSage(): ?bool { return $this->sentToSage; } public function setSentToSage(bool $sentToSage): self { $this->sentToSage = $sentToSage; return $this; } public function getSyncDate(): ?\DateTimeInterface { return $this->syncDate; } public function setSyncDate(?\DateTimeInterface $syncDate): self { $this->syncDate = $syncDate; return $this; } public function getCreatedAt(): ?\DateTimeImmutable { return $this->createdAt; } public function setCreatedAt(\DateTimeImmutable $createdAt): self { $this->createdAt = $createdAt; return $this; } public function getUpdatedAt(): ?\DateTimeImmutable { return $this->updatedAt; } public function setUpdatedAt(\DateTimeImmutable $updatedAt): self { $this->updatedAt = $updatedAt; return $this; } public function getFamily(): ?SageFamily { return $this->family; } public function setFamily(?SageFamily $family): self { $this->family = $family; return $this; } public function getSubfamily(): ?SageSubFamily { return $this->subfamily; } public function setSubfamily(?SageSubFamily $subfamily): self { $this->subfamily = $subfamily; return $this; } public function getDischargeDate(): ?\DateTimeInterface { return $this->dischargeDate; } public function setDischargeDate(\DateTimeInterface $dischargeDate): self { $this->dischargeDate = $dischargeDate; return $this; } public function getVatType(): ?SageVatRates { return $this->vatType; } public function setVatType(?SageVatRates $vatType): self { $this->vatType = $vatType; return $this; } /** * @ORM\PrePersist */ public function prePersist(): void { $this->createdAt = new \DateTimeImmutable(); $this->updatedAt = new \DateTimeImmutable(); } /** * @ORM\PreUpdate */ public function preUpdate(): void { $this->updatedAt = new \DateTimeImmutable(); }}