Files
erv-clientright/debug_webservice2_flow.php
2026-03-13 10:42:01 +03:00

219 lines
11 KiB
PHP
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
// Отладочный скрипт для проверки потока данных в server_webservice2.php
// Файл: debug_webservice2_flow.php
echo "<h2>Отладка потока данных в server_webservice2.php</h2>";
echo "<p><strong>Время:</strong> " . date('Y-m-d H:i:s') . "</p>";
echo "<hr>";
// Формируем данные точно как в последнем скрипте
$appends = [
// Поля клиента
'{"ws_type":"client","ws_name":"firstname","field_val":"Александра"}',
'{"ws_type":"client","ws_name":"secondname","field_val":"Алексеевна"}',
'{"ws_type":"client","ws_name":"lastname","field_val":"Козлова"}',
'{"ws_type":"client","ws_name":"mobile","field_val":"921 862-69-44"}',
'{"ws_type":"client","ws_name":"email","field_val":"sashyliakoz@gmail.com"}',
'{"ws_type":"client","ws_name":"birthday","field_val":"1996-09-04"}',
'{"ws_type":"client","ws_name":"mailingstreet","field_val":"Индекс 188300, Ленинградская область, г. Гатчина, ул. Изотова, д.12, к.2, кв. 38"}',
'{"ws_type":"client","ws_name":"inn","field_val":"470519373754"}',
'{"ws_type":"client","ws_name":"code","field_val":"1"}',
// Поля контрагента
'{"ws_type":"contractor","ws_name":"inn","field_val":"7714312079"}',
'{"ws_type":"contractor","ws_name":"ogrn","field_val":"1037714037426"}',
'{"ws_type":"contractor","ws_name":"accountname","field_val":"Филиал ООО РСО ЕВРОИНС Туристическое"}',
'{"ws_type":"contractor","ws_name":"address","field_val":"119049 Москва, 4-й Добрынинский пер., д.8, помещ. С 14-I, ком. 21-26"}',
'{"ws_type":"contractor","ws_name":"email","field_val":"info@erv.ru"}',
'{"ws_type":"contractor","ws_name":"phone","field_val":"84956265800"}',
'{"ws_type":"contractor","ws_name":"website","field_val":"https://www.erv.ru/"}',
// Тикеты
'{"ws_type":"ticket","ws_name":"ticket1","field_val":"Отсутствие вида, заявленного и оплаченного в бронировании"}',
// Поля проекта
'{"ws_type":"project","ws_name":"cf_1187","field_val":"ЕРВ Средства размещения"}',
'{"ws_type":"project","ws_name":"cf_1590","field_val":"195.175.85.146"}',
'{"ws_type":"project","ws_name":"cf_2296","field_val":"1"}',
'{"ws_type":"project","ws_name":"cf_1592","field_val":"Мугла"}',
'{"ws_type":"project","ws_name":"cf_1582","field_val":"15-09-2025"}',
'{"ws_type":"project","ws_name":"cf_1584","field_val":"25-09-2025"}',
'{"ws_type":"project","ws_name":"cf_1740","field_val":"E1000-302542604"}',
'{"ws_type":"project","ws_name":"cf_1157","field_val":"Алексеевна"}',
'{"ws_type":"project","ws_name":"cf_1869","field_val":"Козлова Александра Алексеевна"}',
'{"ws_type":"project","ws_name":"cf_1265","field_val":"СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК"}',
'{"ws_type":"project","ws_name":"cf_1267","field_val":"044030653"}',
'{"ws_type":"project","ws_name":"cf_1271","field_val":"30101810500000000653"}',
'{"ws_type":"project","ws_name":"cf_1269","field_val":"40817810755868418791"}',
'{"ws_type":"project","ws_name":"cf_1273","field_val":""}',
'{"ws_type":"project","ws_name":"cf_1163","field_val":""}',
'{"ws_type":"project","ws_name":"cf_1161","field_val":"Prime beach hotel"}',
'{"ws_type":"project","ws_name":"cf_1165","field_val":"Cumhuriyet Bulv. No 35 Siteler Marmaris / Muğla / Türkiye"}',
'{"ws_type":"project","ws_name":"cf_1167","field_val":"info@primebeachhotel.com"}',
'{"ws_type":"project","ws_name":"cf_1560","field_val":"0252 417 52 00"}',
'{"ws_type":"project","ws_name":"cf_1558","field_val":"https://primebeachhotel.com"}',
'{"ws_type":"project","ws_name":"cf_1173","field_val":"16-09-2025"}',
'{"ws_type":"project","ws_name":"cf_1726","field_val":""}',
'{"ws_type":"project","ws_name":"cf_1728","field_val":""}',
'{"ws_type":"project","ws_name":"cf_1730","field_val":"on"}',
'{"ws_type":"project","ws_name":"cf_1732","field_val":""}',
'{"ws_type":"project","ws_name":"cf_1734","field_val":""}',
'{"ws_type":"project","ws_name":"cf_1736","field_val":""}',
'{"ws_type":"project","ws_name":"cf_1257","field_val":"470519373754"}',
'{"ws_type":"project","ws_name":"cf_1800","field_val":"21"}',
'{"ws_type":"project","ws_name":"cf_1802","field_val":"4116"}',
'{"ws_type":"project","ws_name":"cf_1804","field_val":"786084"}',
'{"ws_type":"project","ws_name":"cf_1798","field_val":"643"}',
'{"ws_type":"project","ws_name":"cf_2000","field_val":"ТУРЦИЯ"}',
'{"ws_type":"project","ws_name":"description","field_val":"Заселили в отель 16.09.2025. В ваучере (путевке)указан номер sea view, но при заезде разместили в номере без вида на море. \\nПункт 40.2.1 полиса "}',
'{"ws_type":"project","ws_name":"cf_1738","field_val":"on"}',
'{"ws_type":"project","ws_name":"cf_1706","field_val":"105540"}'
];
// Данные для отправки
$data = [
'appends' => $appends,
'lastname' => 'Козлова',
'sub_dir' => session_id(),
'upload_urls' => [],
'upload_urls_real' => [],
'files_names' => [],
'docs_names' => [],
'docs_ticket_files_ids' => [],
'getservice' => ''
];
echo "<h3>1. Что мы отправляем на server_webservice2.php:</h3>";
echo "<pre>" . print_r($data, true) . "</pre>";
echo "<h3>2. Симуляция обработки в server_webservice2.php:</h3>";
// Симулируем код из server_webservice2.php
$client_array = array(
'operation' => 'CreateContact',
'sessionName' => 'TEST_SESSION_ID',
);
echo "<p><strong>Начальный client_array:</strong></p>";
echo "<pre>" . print_r($client_array, true) . "</pre>";
echo "<p><strong>Обработка appends для клиента:</strong></p>";
foreach ($appends as $key => $itemjson) {
$item = json_decode($itemjson);
echo "<p>[" . $key . "] ws_type: '" . $item->ws_type . "', ws_name: '" . $item->ws_name . "', field_val: '" . $item->field_val . "'</p>";
if ($item->ws_type == "client") {
$client_array[$item->ws_name] = $item->field_val;
echo "<p style='color: green;'>✅ Добавлено в client_array: " . $item->ws_name . " = '" . $item->field_val . "'</p>";
if ($item->ws_name == "code") $sms = $item->field_val;
} else {
echo "<p style='color: gray;'>⏭️ Пропущено (ws_type != 'client')</p>";
}
}
echo "<p><strong>Итоговый client_array для отправки в CRM:</strong></p>";
echo "<pre>" . print_r($client_array, true) . "</pre>";
echo "<h3>3. Симуляция обработки контрагента:</h3>";
$contractor_array = array(
'operation' => 'CreateAccount',
'sessionName' => 'TEST_SESSION_ID',
);
echo "<p><strong>Начальный contractor_array:</strong></p>";
echo "<pre>" . print_r($contractor_array, true) . "</pre>";
echo "<p><strong>Обработка appends для контрагента:</strong></p>";
foreach ($appends as $key => $itemjson) {
$item = json_decode($itemjson);
if ($item->ws_type == "contractor" && $item->field_val != "") {
$contractor_array[$item->ws_name] = $item->field_val;
echo "<p style='color: green;'>✅ Добавлено в contractor_array: " . $item->ws_name . " = '" . $item->field_val . "'</p>";
}
}
echo "<p><strong>Итоговый contractor_array для отправки в CRM:</strong></p>";
echo "<pre>" . print_r($contractor_array, true) . "</pre>";
echo "<h3>4. Симуляция обработки проекта:</h3>";
$project_array = array(
'operation' => 'CreateProject',
'sessionName' => 'TEST_SESSION_ID',
'contactid' => 'TEST_CLIENT_ID',
'offenderid' => 'TEST_CONTRACTOR_ID',
'agentid' => '',
'sms' => $sms ?? ''
);
echo "<p><strong>Начальный project_array:</strong></p>";
echo "<pre>" . print_r($project_array, true) . "</pre>";
echo "<h3>5. Теперь отправляем реальные данные на server_webservice2.php:</h3>";
// Отправляем данные
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://form.clientright.ru/server_webservice2.php',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $data,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTPHEADER => [
'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
]
]);
$response = curl_exec($curl);
$httpCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
$error = curl_error($curl);
curl_close($curl);
echo "<p><strong>HTTP код:</strong> " . $httpCode . "</p>";
if ($error) {
echo "<p style='color: red;'><strong>Ошибка cURL:</strong> " . $error . "</p>";
} else {
echo "<p><strong>Ответ от server_webservice2.php:</strong></p>";
echo "<pre>" . htmlspecialchars($response) . "</pre>";
// Парсим ответ
$response_data = json_decode($response, true);
if ($response_data) {
echo "<h3>Результат:</h3>";
if (isset($response_data['status']) && $response_data['status'] === 'success') {
echo "<p style='color: green; font-weight: bold;'>✅ Статус: Успех!</p>";
if (isset($response_data['message'])) {
echo "<p style='color: green;'><strong>Сообщение:</strong> " . $response_data['message'] . "</p>";
}
echo "<p style='color: green; font-weight: bold;'>✅ Данные успешно отправлены в CRM!</p>";
} else {
echo "<p style='color: red; font-weight: bold;'>❌ Ошибка при отправке данных</p>";
}
}
}
echo "<hr>";
echo "<h3>6. Сравнение с успешным логом:</h3>";
echo "<p><strong>Успешный лог (2025-09-10):</strong></p>";
echo "<pre>";
echo '{"operation":"CreateContact","sessionName":"61c825a768c1dd749ca62","mobile":"7 (953) 167-38-19","lastname":"Кулагин ","firstname":"Андрей ","secondname":"Викторович ","mailingstreet":"Ленинградская обл...","birthday":"11-05-1967","birthplace":"г Ростов-на-Дону ","inn":"780700202965","requisites":"Реквизиты...","email":"kulaginandrey110567@gmail.com","code":"438138"}';
echo "</pre>";
echo "<p><strong>Наш client_array:</strong></p>";
echo "<pre>" . json_encode($client_array, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
echo "<hr>";
echo "<h3>7. Возможные проблемы:</h3>";
echo "<ul>";
echo "<li>❓ Возможно, server_webservice2.php не получает данные appends</li>";
echo "<li>❓ Возможно, есть проблема с декодированием JSON</li>";
echo "<li>❓ Возможно, поля не попадают в массивы из-за условий</li>";
echo "</ul>";
?>