function getWaitingOrders($lwTime, $lwCustomerId, $lwOrderId, $upTime, $upCustomerId, $upOrderId, $count) { $params = buildParamsForGetOrders('time', $lwTime, $lwCustomerId, $lwOrderId, $upTime, $upCustomerId, $upOrderId); $arrays = []; $columns = ['order_id', 'customer_id', 'description', 'price', 'time']; foreach (getAllDbsForWaitingOrders() as $dbInfo) { $link = connect($dbInfo); if (!$link) { return null; } $elements = doGetOrders($link, 'waiting_orders', $columns, '', $count, $params); if (is_null($elements)) { return null; } array_push($arrays, $elements); } return mergeSortedArrays($arrays, false, false, function ($element) { return $element['time']; }); }
function getDbForWaitingOrders($customerId) { return chooseShard(getAllDbsForWaitingOrders(), $customerId); }