OrderSplitter::split()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 17
Code Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 4
Bugs 4 Features 0
Metric Value
c 4
b 4
f 0
dl 0
loc 17
rs 9.4285
cc 3
eloc 12
nc 3
nop 1
1
<?php
2
3
use PEIP\ABS\Splitter\MessageSplitter;
4
use PEIP\INF\Message\Message;
5
6
class OrderSplitter extends MessageSplitter
7
{
8
    public function split(Message $message)
9
    {
10
        $order = $message->getContent();
11
        $orderItems = $order->getItems();
12
        $items = [];
13
        foreach ($orderItems as $item) {
14
            $nr = $item['number'];
15
            unset($item['number']);
16
            $item['order'] = $order->getOrderNumber();
17
            for ($x = 0; $x < $nr; $x++) {
18
                $items[] = $item;
19
            }
20
        }
21
        echo PEIP_LINE_SEPARATOR.'OrderSplitter: split order #: '.$order->getOrderNumber();
22
23
        return $items;
24
    }
25
}
26