public function getDepartmentsList($city = false, $region = false) { // Есть необходимость записать результат, т.к. размер передаваемого файла > 500K !self::$_departments and self::$_departments = $this->catalogList('Departments'); if ($city && $region) { // Т.к. в адресах складов в некоторых случаях встречаются адреса без знаков препинания, то учитывается и этот вариант // Поиск города и адреса foreach (self::$_departments['ListCatalog']['Catalog'] as $department) { if ($department['AppendField'][4]['AppendFieldValue'] == $city && $department['AppendField'][11]['AppendFieldValue'] == $region) { $warehouses[] = $department; } } return $warehouses; } return self::$_departments; }
private function delgetWarehouses($company, $data) { $key = explode(';', $company['api_key']); $api = new IntimeApi2($key[0], $key[1]); $warehouses = $api->getDepartmentsList($data['city']); if (!empty($warehouses)) { foreach ($warehouses as &$warehouse) { $warehouse = array('id' => $warehouse['Code'], 'name' => '№' . $warehouse['AppendField'][10]['AppendFieldValue'] . ': ' . $warehouse['AppendField'][0]['AppendFieldValue']); } asort($warehouses); return $warehouses; } return false; }