<?phpnamespace App\Entity;use App\Repository\MeasurementUnitsRepository;use Doctrine\Common\Collections\ArrayCollection;use Doctrine\Common\Collections\Collection;use Doctrine\ORM\Mapping as ORM;use Symfony\Component\Serializer\Annotation\Groups;#[ORM\Entity(repositoryClass: MeasurementUnitsRepository::class)]#[ORM\HasLifecycleCallbacks]class MeasurementUnits extends BaseEntity{ #[ORM\Id] #[ORM\GeneratedValue] #[ORM\Column(type: 'integer')] #[Groups(['measurement:read'])] private $id; #[ORM\Column(type: 'string', length: 255)] #[Groups(['measurement:read'])] private $name; #[ORM\Column(type: 'string', length: 255)] #[Groups(['measurement:read'])] private $symbol; #[ORM\Column(type: 'string', length: 255, nullable: true)] #[Groups(['measurement:read'])] private $description; #[ORM\Column(type: 'boolean', options: ['default' => false])] #[Groups(['measurement:read'])] private $isDiscrete; #[ORM\OneToMany(mappedBy: 'selectedUnit', targetEntity: ProductsSold::class)] private Collection $productsSolds; #[ORM\OneToMany(mappedBy: 'selectedUnit', targetEntity: InvoiceItem::class)] private Collection $invoiceItems; public function __construct() { $this->productsSolds = new ArrayCollection(); $this->invoiceItems = new ArrayCollection(); } public function getId(): ?int { return $this->id; } public function getName(): ?string { return $this->name; } public function setName(string $name): self { $this->name = $name; return $this; } public function getSymbol(): ?string { return $this->symbol; } public function setSymbol(string $symbol): self { $this->symbol = $symbol; return $this; } public function getDescription(): ?string { return $this->description; } public function setDescription(?string $description): self { $this->description = $description; return $this; } /** * @return mixed */ public function getIsDiscrete() { return $this->isDiscrete; } /** * @param mixed $isDiscrete */ public function setIsDiscrete($isDiscrete): void { $this->isDiscrete = $isDiscrete; } /** * @return Collection<int, ProductsSold> */ public function getProductsSolds(): Collection { return $this->productsSolds; } public function addProductsSold(ProductsSold $productsSold): static { if (!$this->productsSolds->contains($productsSold)) { $this->productsSolds->add($productsSold); $productsSold->setSelectedUnit($this); } return $this; } public function removeProductsSold(ProductsSold $productsSold): static { if ($this->productsSolds->removeElement($productsSold)) { // set the owning side to null (unless already changed) if ($productsSold->getSelectedUnit() === $this) { $productsSold->setSelectedUnit(null); } } return $this; } /** * @return Collection<int, InvoiceItem> */ public function getInvoiceItems(): Collection { return $this->invoiceItems; } public function addInvoiceItem(InvoiceItem $invoiceItem): static { if (!$this->invoiceItems->contains($invoiceItem)) { $this->invoiceItems->add($invoiceItem); $invoiceItem->setSelectedUnit($this); } return $this; } public function removeInvoiceItem(InvoiceItem $invoiceItem): static { if ($this->invoiceItems->removeElement($invoiceItem)) { // set the owning side to null (unless already changed) if ($invoiceItem->getSelectedUnit() === $this) { $invoiceItem->setSelectedUnit(null); } } return $this; }}