public function testCreate() { $option = $this->dummyData->getOption(); $option->setName('Team Logo'); $product = $this->dummyData->getProduct(); $product->setSku('LAA'); $product->setName('LA Angels'); $optionProduct = $this->dummyData->getOptionProduct($option, $product); $orderItem = $this->dummyData->getOrderItem(); $orderItemOptionProduct = new OrderItemOptionProduct(); $orderItemOptionProduct->setOptionProduct($optionProduct); $orderItemOptionProduct->setOrderItem($orderItem); $this->assertSame('LAA', $orderItemOptionProduct->getSku()); $this->assertSame('Team Logo', $orderItemOptionProduct->getOptionName()); $this->assertSame('LA Angels', $orderItemOptionProduct->getOptionProductName()); $this->assertSame($optionProduct, $orderItemOptionProduct->getOptionProduct()); $this->assertSame($orderItem, $orderItemOptionProduct->getOrderItem()); }
public function getOrderItem(Order $order, PricingInterface $pricing) { $orderItem = new OrderItem($order); $orderItem->setProduct($this->getProduct()); $orderItem->setQuantity($this->getQuantity()); $orderItem->setPrice($this->getPrice($pricing)); foreach ($this->getCartItemOptionProducts() as $cartItemOptionProduct) { $orderItemOptionProduct = new OrderItemOptionProduct(); $orderItemOptionProduct->setOptionProduct($cartItemOptionProduct->getOptionProduct()); $orderItem->addOrderItemOptionProduct($orderItemOptionProduct); } foreach ($this->getCartItemOptionValues() as $cartItemTextOptionValue) { $orderItemOptionValue = new OrderItemOptionValue(); $orderItemOptionValue->setOptionValue($cartItemTextOptionValue->getOptionValue()); $orderItem->addOrderItemOptionValue($orderItemOptionValue); } foreach ($this->getCartItemTextOptionValues() as $cartItemTextOptionValue) { $orderItemTextOptionValue = new OrderItemTextOptionValue(); $orderItemTextOptionValue->setTextOption($cartItemTextOptionValue->getTextOption()); $orderItemTextOptionValue->setTextOptionValue($cartItemTextOptionValue->getTextOptionValue()); $orderItem->addOrderItemTextOptionValue($orderItemTextOptionValue); } return $orderItem; }
public function getOrderItemOptionProduct(OptionProduct $optionProduct = null) { if ($optionProduct === null) { $optionProduct = $this->getOptionProduct(); } $orderItemOptionProduct = new OrderItemOptionProduct(); $orderItemOptionProduct->setOptionProduct($optionProduct); return $orderItemOptionProduct; }
public function addOrderItemOptionProduct(OrderItemOptionProduct $orderItemOptionProduct) { $orderItemOptionProduct->setOrderItem($this); $this->orderItemOptionProducts[] = $orderItemOptionProduct; $this->setSku(); }
/** * @return static */ public function withOptionProduct() { $this->entityDTO->optionProduct = $this->dtoBuilderFactory->getOptionProductDTOBuilder($this->entity->getOptionProduct())->withOption()->build(); return $this; }