8 use Magento\Sales\Model\OrderFactory;
21 private $orderFactory;
26 private $purchaseBuilder;
36 private $recipientBuilder;
41 private $sellerBuilder;
46 private $clientVersionBuilder;
51 private $userAccountBuilder;
63 OrderFactory $orderFactory,
71 $this->orderFactory = $orderFactory;
72 $this->purchaseBuilder = $purchaseBuilder;
73 $this->cardBuilder = $cardBuilder;
74 $this->recipientBuilder = $recipientBuilder;
75 $this->sellerBuilder = $sellerBuilder;
76 $this->clientVersionBuilder = $clientVersionBuilder;
77 $this->userAccountBuilder = $userAccountBuilder;
86 $order = $this->orderFactory->create()->load($orderId);
88 return $this->removeEmptyValues(
90 $this->purchaseBuilder->build(
$order),
91 $this->cardBuilder->build(
$order),
92 $this->recipientBuilder->build(
$order),
93 $this->userAccountBuilder->build(
$order),
94 $this->sellerBuilder->build(
$order),
95 $this->clientVersionBuilder->build()
106 private function removeEmptyValues(
$data)
110 $data[$key] = $this->removeEmptyValues(
$data[$key]);
113 if ($this->isEmpty(
$data[$key])) {
127 private function isEmpty(
$value)
__construct(OrderFactory $orderFactory, PurchaseBuilder $purchaseBuilder, CardBuilder $cardBuilder, RecipientBuilder $recipientBuilder, SellerBuilder $sellerBuilder, ClientVersionBuilder $clientVersionBuilder, UserAccountBuilder $userAccountBuilder)