Guest User

Untitled

a guest
Nov 21st, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.91 KB | None | 0 0
  1. <?php
  2. class OrderService
  3. {
  4. private $itemService;
  5.  
  6. public function __construct(ItemService $itemService)
  7. {
  8. $this->itemService = $itemService;
  9. }
  10.  
  11. public function create(OrderCreationDto $context)
  12. {
  13. $order = new Order();
  14. $order->setCustomerId($context->customerId);
  15. $order->setPartnerId($context->partnerId);
  16. $order->setDeliveryAddress(new Address($context->address));
  17. $order->addItems($this->createOrderItems($context->products));
  18. return $order;
  19. }
  20.  
  21. private function createOrderItems(array $products)
  22. {
  23. return array_map(function (array $product) {
  24. $item = $this->itemService->create($product->id, $product->price);
  25. $orderItem = new OrderItem();
  26. $orderItem->setItemId($item->getId());
  27. $orderItem->setProductId($product->id);
  28. return $orderItem;
  29. }, $products);
  30. }
  31. }
Add Comment
Please, Sign In to add comment