src/Entity/LearningCourses/LearningCourseCategory.php line 23

Open in your IDE?
  1. <?php
  2. namespace App\Entity\LearningCourses;
  3. use App\Annotation\SiteAware;
  4. use App\Entity\AbstractBase;
  5. use App\Entity\Interfaces\SiteInterface;
  6. use App\Entity\Traits\ActiveTrait;
  7. use App\Entity\Traits\DescriptionTrait;
  8. use App\Entity\Traits\NameTrait;
  9. use App\Entity\Traits\SiteTrait;
  10. use App\Repository\LearningCourses\LearningCourseCategoryRepository;
  11. use Doctrine\Common\Collections\Collection;
  12. use Doctrine\ORM\Mapping as ORM;
  13. use Gedmo\Mapping\Annotation as Gedmo;
  14. /**
  15.  * @ORM\Table(name="vulco_learning_course_category", indexes={@ORM\Index(name="learning_course_category_site_idx", columns={"site"})})
  16.  * @ORM\Entity(repositoryClass=LearningCourseCategoryRepository::class)
  17.  * @Gedmo\SoftDeleteable(fieldName="removedAt", timeAware=false)
  18.  * @SiteAware(siteFieldName="site")
  19.  */
  20. class LearningCourseCategory extends AbstractBase implements SiteInterface
  21. {
  22.     use ActiveTrait;
  23.     use DescriptionTrait;
  24.     use NameTrait;
  25.     use SiteTrait;
  26.     /**
  27.      * @ORM\Column(type="string", length=255, nullable=false)
  28.      */
  29.     private string $name;
  30.     /**
  31.      * @ORM\Column(type="text", length=10000, nullable=true)
  32.      */
  33.     private ?string $description;
  34.     /**
  35.      * @ORM\Column(type="boolean", nullable=false, options={"default": 1})
  36.      */
  37.     private bool $active true;
  38.     /**
  39.      * @ORM\OneToMany(targetEntity="App\Entity\LearningCourses\LearningCourse", mappedBy="category")
  40.      */
  41.     private ?Collection $courses;
  42.     public function getCourses(): ?Collection
  43.     {
  44.         return $this->courses;
  45.     }
  46.     public function getCoursesAmount(): int
  47.     {
  48.         return $this->getCourses() ? $this->getCourses()->count() : 0;
  49.     }
  50.     public function setCourses(?Collection $courses): self
  51.     {
  52.         $this->courses $courses;
  53.         return $this;
  54.     }
  55. }