src/Entity/Category.php line 30

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the Symfony package.
  4.  *
  5.  * (c) Fabien Potencier <fabien@symfony.com>
  6.  *
  7.  * For the full copyright and license information, please view the LICENSE
  8.  * file that was distributed with this source code.
  9.  */
  10. namespace App\Entity;
  11. use Doctrine\Common\Collections\ArrayCollection;
  12. use Doctrine\Common\Collections\Collection;
  13. use Doctrine\ORM\Mapping as ORM;
  14. use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
  15. use Symfony\Component\Validator\Constraints as Assert;
  16. /**
  17.  * @ORM\Entity(repositoryClass="App\Repository\CategoryRepository")
  18.  * @ORM\Table(name="category")
  19.  *
  20.  * Defines the properties of the Tag entity to represent the subcategory tags.
  21.  *
  22.  * See https://symfony.com/doc/current/doctrine.html#creating-an-entity-class
  23.  *
  24.  * @author Yonel Ceruto <yonelceruto@gmail.com>
  25.  */
  26. class Category {
  27.     /**
  28.      * @ORM\Id
  29.      * @ORM\GeneratedValue
  30.      * @ORM\Column(type="integer")
  31.      */
  32.     private ?int $id null;
  33.     /**
  34.      * @ORM\Column(type="string")
  35.      */
  36.     private ?string $name null;
  37.     /**
  38.      * @ORM\Column(type="boolean")
  39.      */
  40.     private $published;
  41.     
  42.     /**
  43.      * @ORM\Column(type="string", nullable=true)
  44.      */
  45.     private ?string $image null;
  46.     /**
  47.      * @ORM\Column(type="string", nullable=true)
  48.      */
  49.     private ?string $ordre null;
  50.     /**
  51.      * @ORM\Column(type="string", nullable=true)
  52.      */
  53.     private ?string $color null;
  54.     /**
  55.      * @ORM\Column(type="text", nullable=true)
  56.      */
  57.     private ?string $description null;
  58.     /**
  59.      * @ORM\OneToMany(targetEntity="App\Entity\Subcategory", mappedBy="category",orphanRemoval=true))
  60.      * @ORM\OrderBy({"id": "DESC"})
  61.      */
  62.     private Collection $subcategories;
  63.     public function __construct() {
  64.         $this->subcategories = new ArrayCollection();
  65.     }
  66.     
  67.     public function addSubcategory(Subcategory $subcategory): void {
  68.         $subcategory->setCategory($this);
  69.         if (!$this->subcategories->contains($subcategory)) {
  70.             $this->subcategories->add($subcategory);
  71.         }
  72.     }
  73.     public function removeSubcategory(Subcategory $subcategory): void {
  74.         $this->subcategories->removeElement($subcategory);
  75.     }
  76.     
  77.     public function getId(): ?int {
  78.         return $this->id;
  79.     }
  80.     public function getName(): ?string {
  81.         return $this->name;
  82.     }
  83.     public function getPublished() {
  84.         return $this->published;
  85.     }
  86.     public function getImage(): ?string {
  87.         return $this->image;
  88.     }
  89.     public function getOrdre(): ?string {
  90.         return $this->ordre;
  91.     }
  92.     public function getColor(): ?string {
  93.         return $this->color;
  94.     }
  95.     public function getDescription(): ?string {
  96.         return $this->description;
  97.     }
  98.     public function getSubcategories(): Collection {
  99.         return $this->subcategories;
  100.     }
  101.     public function setId(?int $id): void {
  102.         $this->id $id;
  103.     }
  104.     public function setName(?string $name): void {
  105.         $this->name $name;
  106.     }
  107.     public function setPublished($published): void {
  108.         $this->published $published;
  109.     }
  110.     public function setImage(?string $image): void {
  111.         $this->image $image;
  112.     }
  113.     public function setOrdre(?string $ordre): void {
  114.         $this->ordre $ordre;
  115.     }
  116.     public function setColor(?string $color): void {
  117.         $this->color $color;
  118.     }
  119.     public function setDescription(?string $description): void {
  120.         $this->description $description;
  121.     }
  122.     public function setSubcategories(Collection $subcategories): void {
  123.         $this->subcategories $subcategories;
  124.     }
  125. }