Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
shipment_list.php
Go to the documentation of this file.
1 <?php
10 
11 require 'order.php';
12 
18  [
19  'increment_id' => '100000001',
20  'shipping_address_id' => 1,
21  'shipment_status' => \Magento\Sales\Model\Order\Shipment::STATUS_NEW,
22  'store_id' => 1,
23  'shipping_label' => 'shipping_label_100000001',
24  ],
25  [
26  'increment_id' => '100000002',
27  'shipping_address_id' => 3,
28  'shipment_status' => \Magento\Sales\Model\Order\Shipment::STATUS_NEW,
29  'store_id' => 1,
30  'shipping_label' => 'shipping_label_100000002',
31  ],
32  [
33  'increment_id' => '100000003',
34  'shipping_address_id' => 3,
35  'shipment_status' => \Magento\Sales\Model\Order\Shipment::STATUS_NEW,
36  'store_id' => 1,
37  'shipping_label' => 'shipping_label_100000003',
38  ],
39  [
40  'increment_id' => '100000004',
41  'shipping_address_id' => 4,
42  'shipment_status' => 'closed',
43  'store_id' => 1,
44  'shipping_label' => 'shipping_label_100000004',
45  ],
46 ];
47 
49 foreach ($shipments as $shipmentData) {
50  $items = [];
51  foreach ($order->getItems() as $orderItem) {
52  $items[$orderItem->getId()] = $orderItem->getQtyOrdered();
53  }
55  $shipment = Bootstrap::getObjectManager()->get(ShipmentFactory::class)->create($order, $items);
56  $shipment->setIncrementId($shipmentData['increment_id']);
57  $shipment->setShippingAddressId($shipmentData['shipping_address_id']);
58  $shipment->setShipmentStatus($shipmentData['shipment_status']);
59  $shipment->setStoreId($shipmentData['store_id']);
60  $shipment->setShippingLabel($shipmentData['shipping_label']);
61  $shipment->save();
62 }
$orderItem
Definition: order.php:30
$order
Definition: order.php:55
$shipments
foreach($order->getItems() as $orderItem) $shipment
$items