pquery($query, array($policy_number)); if ($adb->num_rows($result) > 0) { // Проект существует - ПРОСТО ВОЗВРАЩАЕМ ID (НЕ обновляем!) $output = $adb->query_result($result, 0, 'projectid'); $isNew = false; $logstring = date('Y-m-d H:i:s').' ✅ Проект найден с id '.$output.' (БЕЗ обновления)'.PHP_EOL; file_put_contents($logFile, $logstring, FILE_APPEND); } else { // Проект НЕ существует - создаём новый // Формируем название проекта $projectname = 'ERV ' . $policy_number . ' цифровой адвокат'; $params = array ( 'projectname' => $projectname, 'projectstatus' => 'модерация', 'projecttype' => 'ЕРВ урегулирование', // ❌ УБРАНО: linktoaccountscontacts - нет привязки к контакту 'cf_1994' => '11x67458', // Заявитель (контрагент record=67458) 'cf_1885' => $policy_number, // Номер полиса 'assigned_user_id' => '19x8' // ✅ Ответственный = пользователь с ID 8 ); // Дополнительные необязательные поля if (!empty($period_start)) { $params['cf_1887'] = $period_start; // Период страхования начало } if (!empty($period_end)) { $params['cf_1889'] = $period_end; // Период страхования конец } if (!empty($cf_2446)) { $params['cf_2446'] = $cf_2446; } $logstring = date('Y-m-d H:i:s').' Массив для создания Web Проекта: '.json_encode($params).PHP_EOL; file_put_contents($logFile, $logstring, FILE_APPEND); try { $project = vtws_create('Project', $params, $current_user); $output = substr($project['id'], 3); $isNew = true; // Проект только что создан! $logstring = date('Y-m-d H:i:s').' ✅ Создан новый Web Проект с id '.$output.PHP_EOL; file_put_contents($logFile, $logstring, FILE_APPEND); } catch (WebServiceException $ex) { $logstring = date('Y-m-d H:i:s').' ❌ Ошибка создания: '.$ex->getMessage().PHP_EOL; file_put_contents($logFile, $logstring, FILE_APPEND); throw $ex; } } // Возвращаем JSON с флагом is_new $result = array( 'project_id' => $output, 'is_new' => $isNew ); $logstring = date('Y-m-d H:i:s').' Return: '.json_encode($result).PHP_EOL; file_put_contents($logFile, $logstring, FILE_APPEND); return json_encode($result); } ?>