Files
erv-clientright/debug_exact_data.php

111 lines
4.9 KiB
PHP
Raw Normal View History

2026-03-13 10:42:01 +03:00
<?php
// Отладочный скрипт для точного понимания данных
// Файл: debug_exact_data.php
echo "<h2>Точная отладка данных для CRM</h2>";
echo "<p><strong>Время:</strong> " . date('Y-m-d H:i:s') . "</p>";
echo "<hr>";
// Симулируем точно как в server_webservice2.php
$appends = [
'{"ws_type":"client","ws_name":"firstname","field_val":"Александра"}',
'{"ws_type":"client","ws_name":"cf_1157","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":"phone","field_val":""}',
'{"ws_type":"client","ws_name":"birthday","field_val":"04-09-1996"}',
'{"ws_type":"client","ws_name":"cf_1263","field_val":"г Гатчина"}',
'{"ws_type":"client","ws_name":"mailingstreet","field_val":"Индекс 188300, Ленинградская область, г. Гатчина, ул. Изотова, д.12, к.2, кв. 38"}',
'{"ws_type":"client","ws_name":"cf_1257","field_val":"470519373754"}',
'{"ws_type":"client","ws_name":"cf_1580","field_val":"105540"}',
'{"ws_type":"client","ws_name":"assigned_user_id","field_val":"19x5"}'
];
echo "<h3>1. Исходные appends:</h3>";
foreach ($appends as $key => $itemjson) {
echo "<p>[" . $key . "] " . $itemjson . "</p>";
}
echo "<h3>2. Симуляция кода из server_webservice2.php:</h3>";
// ТОЧНО как в server_webservice2.php строки 125-136
$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>Обработка foreach:</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;'>✅ Добавлено: " . $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 "<h3>3. Итоговый client_array для отправки в CRM:</h3>";
echo "<pre>" . print_r($client_array, true) . "</pre>";
echo "<h3>4. JSON для отправки в CRM:</h3>";
echo "<pre>" . json_encode($client_array, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
echo "<h3>5. Проверка обязательных полей:</h3>";
$required_fields = ['firstname', 'lastname', 'birthday', 'mobile', 'inn'];
$missing_fields = [];
foreach ($required_fields as $field) {
if (isset($client_array[$field]) && !empty($client_array[$field])) {
echo "<p style='color: green;'>✅ " . $field . ": '" . $client_array[$field] . "'</p>";
} else {
echo "<p style='color: red;'>❌ " . $field . ": ОТСУТСТВУЕТ</p>";
$missing_fields[] = $field;
}
}
if (empty($missing_fields)) {
echo "<p style='color: green; font-weight: bold;'>✅ Все обязательные поля присутствуют!</p>";
} else {
echo "<p style='color: red; font-weight: bold;'>❌ Отсутствуют поля: " . implode(', ', $missing_fields) . "</p>";
}
echo "<hr>";
echo "<h3>6. Сравнение с успешным логом:</h3>";
echo "<p><strong>Успешный лог (2025-09-10):</strong></p>";
echo "<pre>";
echo '{
"firstname": "Андрей ",
"cf_1157": "Викторович ",
"lastname": "Кулагин ",
"mobile": "79531673819",
"email": "kulaginandrey110567@gmail.com",
"phone": "",
"birthday": "11-05-1967",
"cf_1263": "г Ростов-на-Дону ",
"mailingstreet": "Ленинградская обл, Выборгский р-н, поселок Пушное, ул Спортивная, д 6, кв 19",
"cf_1257": "780700202965",
"cf_1580": "438138",
"assigned_user_id": "19x5"
}';
echo "</pre>";
echo "<p><strong>Наш массив:</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>❓ Возможно, поле ИНН должно называться не 'cf_1257', а 'inn'</li>";
echo "<li>❓ Возможно, есть проблема с кодировкой</li>";
echo "<li>❓ Возможно, CRM ожидает другие имена полей</li>";
echo "</ul>";
?>