Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
shipment_tracks_for_search.php
Go to the documentation of this file.
1 <?php
13 
14 require 'default_rollback.php';
15 require __DIR__ . '/order.php';
16 
18 $payment = $order->getPayment();
19 $paymentInfoBlock = Bootstrap::getObjectManager()->get(Data::class)
20  ->getInfoBlock($payment);
21 $payment->setBlockMock($paymentInfoBlock);
22 
23 $items = [];
24 foreach ($order->getItems() as $orderItem) {
25  $items[$orderItem->getId()] = $orderItem->getQtyOrdered();
26 }
27 $shipment = Bootstrap::getObjectManager()->get(ShipmentFactory::class)->create($order, $items);
28 $shipment->setPackages([['1'], ['2']]);
29 $shipment->setShipmentStatus(\Magento\Sales\Model\Order\Shipment::STATUS_NEW);
30 $shipment->save();
31 
33  [
34  'title' => 'title 1',
35  'carrier_code' => 'carrier code 1',
36  'track_number' => 'track number 1',
37  'description' => 'description 1',
38  'qty' => 1,
39  'weight' => 1,
40  ],
41  [
42  'title' => 'title 2',
43  'carrier_code' => 'carrier code 2',
44  'track_number' => 'track number 2',
45  'description' => 'description 2',
46  'qty' => 2,
47  'weight' => 1,
48  ],
49  [
50  'title' => 'title 3',
51  'carrier_code' => 'carrier code 3',
52  'track_number' => 'track number 3',
53  'description' => 'description 3',
54  'qty' => 3,
55  'weight' => 1,
56  ],
57  [
58  'title' => 'title 4',
59  'carrier_code' => 'carrier code 4',
60  'track_number' => 'track number 4',
61  'description' => 'description 4',
62  'qty' => 4,
63  'weight' => 1,
64  ],
65  [
66  'title' => 'title 5',
67  'carrier_code' => 'carrier code 5',
68  'track_number' => 'track number 5',
69  'description' => 'description 5',
70  'qty' => 5,
71  'weight' => 2,
72  ],
73 ];
74 
76 $shipmentTrackRepository = Bootstrap::getObjectManager()->get(ShipmentTrackRepositoryInterface::class);
77 
78 foreach ($tracks as $data) {
80  $track = Bootstrap::getObjectManager()->create(Track::class);
81  $track->setOrderId($order->getId());
82  $track->setParentId($shipment->getId());
83  $track->setTitle($data['title']);
84  $track->setCarrierCode($data['carrier_code']);
85  $track->setTrackNumber($data['track_number']);
86  $track->setDescription($data['description']);
87  $track->setQty($data['qty']);
88  $track->setWeight($data['weight']);
90 }
$track
Definition: details.phtml:12
foreach($order->getItems() as $orderItem) $shipment
$orderItem
Definition: order.php:30
defined('TESTS_BP')||define('TESTS_BP' __DIR__
Definition: _bootstrap.php:60
$order
Definition: order.php:55