- <?php
-
- namespace Lc\CaracoleBundle\Model\Product;
-
-
- use Doctrine\Common\Collections\Collection;
- use Lc\CaracoleBundle\Model\Section\SectionInterface;
-
-
- interface ProductCategoryInterface
- {
- public function getSection(): SectionInterface;
-
- public function setSection(SectionInterface $section): ProductCategoryModel;
-
- public function getParent(): ?self;
-
- public function setParent(?ProductCategoryModel $productCategory): ProductCategoryModel;
-
- public function getParentCategory();
-
- /**
- * @return Collection|self[]
- */
- public function getChildrens(): Collection;
-
- public function addChildren(ProductCategoryModel $productCategory): ProductCategoryModel;
-
- public function removeChildren(ProductCategoryModel $productCategory): ProductCategoryModel;
-
- /**
- * @return Collection|ProductFamilyInterface[]
- */
- public function getProductFamilies(): Collection;
-
- public function addProductFamily(ProductFamilyInterface $productFamily
- ): ProductCategoryModel;
-
- public function removeProductFamily(ProductFamilyInterface $productFamily
- ): ProductCategoryModel;
-
- public function countProductFamilies($status = null);
-
- public function getSaleStatus(): ?bool;
-
- public function setSaleStatus(bool $saleStatus): ProductCategoryModel;
- }
|