Example #1
0
 /**
  * @return static
  */
 public function withOptions(PricingInterface $pricing)
 {
     foreach ($this->entity->getOptions() as $option) {
         $this->entityDTO->options[] = $this->dtoBuilderFactory->getOptionDTOBuilder($option)->withOptionProducts($pricing)->withOptionValues()->build();
     }
     return $this;
 }
 /**
  * @return static
  */
 public function withOption()
 {
     $option = $this->entity->getOption();
     if ($option !== null) {
         $this->entityDTO->option = $this->dtoBuilderFactory->getOptionDTOBuilder($option)->build();
     }
     return $this;
 }
 public function handle(ListOptionsQuery $query)
 {
     $paginationDTO = $query->getRequest()->getPaginationDTO();
     $pagination = new Pagination($paginationDTO->maxResults, $paginationDTO->page);
     $options = $this->optionService->getAllOptions($query->getRequest()->getQueryString(), $pagination);
     $query->getResponse()->setPaginationDTOBuilder($this->dtoBuilderFactory->getPaginationDTOBuilder($pagination));
     foreach ($options as $option) {
         $query->getResponse()->addOptionDTOBuilder($this->dtoBuilderFactory->getOptionDTOBuilder($option));
     }
 }
 public function handle(GetOptionQuery $query)
 {
     $product = $this->optionService->findOneById($query->getRequest()->getOptionId());
     $query->getResponse()->setOptionDTOBuilder($this->dtoBuilderFactory->getOptionDTOBuilder($product));
 }
 /**
  * @return static
  */
 public function withOption()
 {
     $this->entityDTO->option = $this->dtoBuilderFactory->getOptionDTOBuilder($this->entity->getOption())->build();
     return $this;
 }