Example #1
0
function getResultData($rawData, $wide)
{
    global $orders, $orderLen, $originalOrders;
    //$orders = json_decode($rawData);
    $orders = array();
    $lines = explode("\n", $rawData, 10000);
    foreach ($lines as $line) {
        list($orderId, $packingStart, $duration) = explode("\t", $line);
        $order = new stdClass();
        $order->orderId = $orderId;
        $order->packingStart = $packingStart;
        $order->duration = $duration;
        $orders[] = $order;
    }
    $originalOrders = $orders;
    $orderLen = count($orders);
    foreach ($orders as $key => $order) {
        $order->oid = $key;
    }
    usort($orders, 'sort_order');
    $start = $orders[0]->packingStart;
    $maxwidth = $orders[count($orders) - 1]->packingStart - $start;
    $widthPer = 5500 / $maxwidth;
    foreach ($orders as $key => $order) {
        $orders[$key]->packingStart = ($order->packingStart - $start) * $widthPer;
        $orders[$key]->duration = $order->duration * $widthPer;
    }
    $order_tree = array();
    $idx = 0;
    while ($idx < $orderLen) {
        $tree = orderTree($idx);
        $order_tree[] = $tree;
        fillMissing($tree, 0, $wide, 0);
        $idx = $tree->next_idx;
    }
    $resultOrders = array();
    foreach ($originalOrders as $order) {
        $resultOrder = new stdClass();
        $resultOrder->orderId = $order->orderId;
        $resultOrder->packingStart = $order->packingStart;
        $resultOrder->duration = $order->duration;
        $resultOrder->width = $order->width;
        $resultOrder->left = $order->left;
        $resultOrders[] = $resultOrder;
    }
    return json_encode($resultOrders);
}
Example #2
0
function makeD3Readable($tree)
{
    $d3Tree = [];
    foreach ($tree as $key => $value) {
        if (is_array($value)) {
            $object = [];
            $object['name'] = $key;
            $object['children'] = makeD3Readable($value);
            $d3Tree[] = $object;
        } else {
            $leave = [];
            $leave['name'] = $key;
            $leave['size'] = $value;
            $d3Tree[] = $leave;
        }
    }
    return $d3Tree;
}
function wrap($tree)
{
    $d3Tree = [];
    $d3Tree['name'] = 'Begroting';
    $d3Tree['children'] = $tree;
    return $d3Tree;
}
// END COPY PASTE
$csv = read_csv_german();
$data = parse_german($csv);
$tree = convertToTree($data);
$completeTree = fillMissing($tree);
echo json_encode($completeTree, JSON_UNESCAPED_UNICODE);