src/Entity/OnlineShop/SuperFamily.php line 26

Open in your IDE?
  1. <?php
  2. namespace App\Entity\OnlineShop;
  3. use App\Annotation\SiteAware;
  4. use App\Entity\AbstractBase;
  5. use App\Entity\Interfaces\PublishedInterface;
  6. use App\Entity\Interfaces\SiteInterface;
  7. use App\Entity\MiniAbstractBase;
  8. use App\Entity\Traits\NameTrait;
  9. use App\Entity\Traits\PositionTrait;
  10. use App\Entity\Traits\PublishedTrait;
  11. use App\Entity\Traits\SiteTrait;
  12. use App\Repository\OnlineShop\SuperFamilyRepository;
  13. use Doctrine\Common\Collections\ArrayCollection;
  14. use Doctrine\Common\Collections\Collection;
  15. use Doctrine\ORM\Mapping as ORM;
  16. use Gedmo\Mapping\Annotation as Gedmo;
  17. /**
  18.  * @ORM\Table(name="vulco_super_family", indexes={@ORM\Index(name="super_family_site_idx", columns={"site"})})
  19.  * @ORM\Entity(repositoryClass=SuperFamilyRepository::class)
  20.  * @Gedmo\SoftDeleteable(fieldName="removedAt", timeAware=false)
  21.  * @SiteAware(siteFieldName="site")
  22.  */
  23. class SuperFamily extends AbstractBase implements SiteInterfacePublishedInterface
  24. {
  25.     use NameTrait;
  26.     use PositionTrait;
  27.     use PublishedTrait;
  28.     use SiteTrait;
  29.     /**
  30.      * @ORM\Column(type="string", length=200)
  31.      */
  32.     private string $name;
  33.     /**
  34.      * @ORM\Column(type="integer")
  35.      */
  36.     private int $position;
  37.     /**
  38.      * @ORM\OneToMany(targetEntity="App\Entity\OnlineShop\Family", mappedBy="superFamily")
  39.      */
  40.     private ?Collection $families;
  41.     public function __construct()
  42.     {
  43.         $this->families = new ArrayCollection();
  44.     }
  45.     public function getFamilies(): ?Collection
  46.     {
  47.         return $this->families;
  48.     }
  49.     public function setFamilies(?Collection $families): self
  50.     {
  51.         $this->families $families;
  52.         return $this;
  53.     }
  54.     public function addFamilie(Family $family): self
  55.     {
  56.         if (!$this->families->contains($family)) {
  57.             $this->families->add($family);
  58.         }
  59.         return $this;
  60.     }
  61.     public function removeFamilie(Family $family): self
  62.     {
  63.         if ($this->families->contains($family)) {
  64.             $this->families->removeElement($family);
  65.         }
  66.         return $this;
  67.     }
  68.     public function __toString(): string
  69.     {
  70.         return $this->id $this->getName() : MiniAbstractBase::DEFAULT_EMPTY_STRING;
  71.     }
  72. }