Current Path : /home/bitrix/ext_www/rg-so.yacl.site/ |
Current File : /home/bitrix/ext_www/rg-so.yacl.site/fnstest.php |
<? //define("NOT_CHECK_PERMISSIONS", true); require_once $_SERVER["DOCUMENT_ROOT"] . '/local/composer/vendor/autoload.php'; require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); use Bitrix\Main\Type\DateTime; use Bitrix\Main\Loader; use Bitrix\Highloadblock\HighloadBlockTable as HLBT; use Bitrix\Disk\Security\DiskSecurityContext; use Bitrix\Disk\Security\SecurityContext; use Bitrix\Disk\Storage; use Bitrix\Main\Localization\Loc; use duzun\hQuery; $APPLICATION->SetTitle("Тест ФНС"); // $helper = new HighloadBlockHelper(12); $list = $helper->getList(['select' => ['*']])->fetchAll(); $baseUrl = 'https://www.nalog.ru/opendata/'; //$allUrls = ''; $baseDir = $_SERVER['DOCUMENT_ROOT'] . '/upload/fnsdata/'; foreach ($list as $item) { // $realUrl = $baseUrl . $item['UF_CODE'] . '/'; // $allUrls .= "\n" . $item['UF_LINK']; $currentDir = $baseDir . '/' . $item['UF_CODE']; if (!is_dir($currentDir)) { mkdir($currentDir); } // $command = "wget --directory-prefix=$currentDir " . $item['UF_LINK']; $res = exec($command); } //$helper = new HighloadBlockHelper(12); //$list = $helper->getList(['select' => ['*']])->fetchAll(); //$baseUrl = 'https://www.nalog.ru/opendata/'; ////$allUrls = ''; //$baseDir = $_SERVER['DOCUMENT_ROOT'] . '/upload/fnsdata/'; //foreach ($list as $item) { ////// $realUrl = $baseUrl . $item['UF_CODE'] . '/'; ////// $allUrls .= "\n" . $item['UF_LINK']; // $currentDir = $baseDir . $item['UF_CODE'] . '/'; ////// if (!is_dir($currentDir)) { ////// mkdir($currentDir); ////// } //// $command = "wget --directory-prefix=$currentDir " . $item['UF_LINK']; ////// $res = exec($command); // $allZips = glob($currentDir . '*.zip'); // if (!empty($allZips)) { // $zipFile = $allZips[0]; // $zip = new ZipArchive(); // $res = $zip->open($zipFile); // if ($res === TRUE) { // $zip->extractTo($currentDir); // $zip->close(); // } else { // echo 'error reading archive!'; // } // } //} //file_put_contents($_SERVER['DOCUMENT_ROOT'] . '/upload/fnsdata/urls.txt', $allUrls); //exec('wget --directory-prefix= --input-file=/home/bitrix/ext_www/portal.yacl.site/upload/fnsdata/urls.txt'); ////okp($list); // //$baseUrl = 'https://www.nalog.ru/opendata/'; // //$interestingDataUrls = [ // '7707329152-debtam' => 'Сведения о суммах недоимки и задолженности по пеням и штрафам', // '7707329152-taxoffence' => 'Сведения о налоговых правонарушениях и мерах ответственности за их совершение', // '7707329152-massleaders' => 'Сведения о физических лицах, являющихся руководителями нескольких юридических лиц', ИП! // '7707329152-massfounders' => 'Сведения о физических лицах, являющихся учредителями (участниками) нескольких юридических лиц', ИП! // '7707329152-disqualifiedpersons' => 'Юридические лица, в состав исполнительных органов которых входят дисквалифицированные лица', // '7707329152-registerdisqualified' => 'Реестр дисквалифицированных лиц', // '7707329152-arrearsoftea' => 'О задолженности по налогам и сборам, пеням и налоговым санкциям в бюджетную систему Российской Федерации по основным видам экономической деятельности (Форма 4-НОМ)', // '7707329152-revexp' => 'Сведения о суммах доходов и расходов по данным бухгалтерской (финансовой) отчетности организации за год, предшествующий году размещения таких сведений на сайте ФНС России', //// '7707329152-rsmp' => 'Единый реестр субъектов малого и среднего предпринимательства //]; // ////hQuery::$cache_path = $_SERVER["DOCUMENT_ROOT"] . '/bitrix/cache/hquery'; ////hQuery::$cache_expires = 86400; // //$helper = new HighloadBlockHelper(12); //foreach ($interestingDataUrls as $url => $name) { //// break; // $realUrl = $baseUrl . $url . '/'; //// okp($realUrl); // $html = file_get_contents($realUrl); // $html = substr($html, strpos($html, '<table'), strpos($html, '</table>') + mb_strlen('</table>') - strpos($html, '<table')); //// $translittedHtml = //// $clearHtml = (str_ireplace([ //// "а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я", //// "А", "Б", "В", "Г", "Д", "Е", "Ё", "Ж", "З", "И", "Й", "К", "Л", "М", "Н", "О", "П", "Р", "С", "Т", "У", "Ф", "Х", "Ц", "Ч", "Ш", "Щ", "Ъ", "Ы", "Ь", "Э", "Ю", "Я", //// ], '', $html)); // $translittedHtml = CUtil::translit($html, 'ru', ['max_len' => 9999999, 'safe_chars' => '()"\'=<:/>.,-_', 'replace_space' => ' ', 'replace_other' => '-']); //// okp(htmlspecialchars($html)); //// okp(htmlspecialchars($translittedHtml)); //// return; // $query = hQuery::fromHTML($translittedHtml); //// okp($query); //// return; // try { // $href = ''; // $aList = $query->find('a'); // foreach ($aList as $a) { // if ($a->attr('href') == $a->text()) { // $href = $a->attr('href'); // break; // } // } // $helper->add([ // 'UF_NAME' => $name, // 'UF_CODE' => $url, // 'UF_LINK' => $href, // ]); // //// okp($href); // // //// okp($tableRows->html()); //// okp($tableRows->count()); // } catch (Exception $e) { // okp($e->getMessage()); // } //} //// $count = 0; //// okp($tableRows); //// foreach ($tableRows as $row) { //// //// } //// okp(htmlspecialchars($item->html())); //} //$query = Duzun\hQuery::fromFile(); //$query->find('') /* ?> <form action="" method="get"> <div class="header-search" style="margin: 20px 0;"> <input class="header-search-field" name="inn" placeholder="Введите ИНН интересующей Вас компании" > <button class="header-search-button">Поиск</button> </div> </form> <? $queryInn = '7718703531'; if (mb_strlen($_GET['inn']) == 10 || mb_strlen($_GET['inn']) == 12) { $queryInn = intval($_GET['inn']); } $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://suggestions.dadata.ru/suggestions/api/4_1/rs/findById/party'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, "{ \"query\": \"$queryInn\" }"); $headers = array(); $headers[] = 'Content-Type: application/json'; $headers[] = 'Accept: application/json'; $headers[] = 'Authorization: Token 02170bc260f6f72349c7f628a773685b19ff6ed6'; curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $result = curl_exec($ch); if (curl_errno($ch)) { echo 'Error:' . curl_error($ch); } curl_close($ch); $companyData = json_decode($result, true); okp($companyData); $currentDir = $_SERVER['DOCUMENT_ROOT'] . '/local/fns'; $dataDir = $currentDir . '/data/1/'; $command = "grep -lr $queryInn $dataDir"; $res = exec($command); if ($res) { $xml = new XMLReader(); $xml->open($res); $data = []; $chosenId = ''; while($xml->read()) { // okp($xml->nodeType); // okp($xml->attributeCount); // okp($xml->localName); if ($xml->localName == 'Документ') { $docId = $xml->getAttribute('ИдДок'); } elseif ($xml->localName == 'СведНП') { $currentInn = $xml->getAttribute('ИННЮЛ'); if ($currentInn == $queryInn) { $chosenId = $docId; } $data[$docId]['org'] = [ 'name' => $xml->getAttribute('НаимОрг'), 'inn' => $xml->getAttribute('ИННЮЛ'), ]; } elseif ($xml->localName == 'СведНедоим') { $data[$docId]['arrears'][] = [ 'name' => $xml->getAttribute('НаимНалог'), 'summ' => $xml->getAttribute('ОбщСумНедоим'), ]; } } okp($data[$chosenId]); } //okp($res); //$zip = new ZipArchive(); //$res = $zip->open($currentDir . '/data-20200214-structure-20180801.zip'); //if ($res === TRUE) { // if (!is_dir($currentDir . '/data/1/')) { // mkdir($currentDir . '/data/1/'); // } // $zip->extractTo($currentDir . '/data/1/'); // $zip->close(); // echo 'success!'; //} else { // echo 'error reading archive!'; //} // */ require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>