Добавлен field_label в результат переименования файлов, исправлена загрузка черновиков, обновлен формат пути S3 с project_name
This commit is contained in:
@@ -52,27 +52,28 @@ function vtws_createwebproject($policy_number, $contact_id, $period_start = '',
|
||||
// Валидация: убираем пробелы из номера полиса
|
||||
$policy_number = trim($policy_number);
|
||||
|
||||
$logstring = date('Y-m-d H:i:s').' Ищем проект по policy_number='.$policy_number.' И contact_id='.$contact_id.PHP_EOL;
|
||||
// Нормализуем contact_id: допускаем как "12x12345", так и "12345"
|
||||
$contactIdNumeric = preg_replace('/[^0-9]/', '', $contact_id);
|
||||
$contactIdWithPrefix = '12x' . $contactIdNumeric;
|
||||
|
||||
$logstring = date('Y-m-d H:i:s').' Ищем проект по policy_number='.$policy_number.' И contact_id='.$contactIdNumeric.' (raw='.$contact_id.')'.PHP_EOL;
|
||||
file_put_contents('logs/CreateWebProject.log', $logstring, FILE_APPEND);
|
||||
|
||||
global $adb, $current_user;
|
||||
|
||||
$isNew = false; // Флаг: создан ли проект сейчас
|
||||
|
||||
// Проверяем существование проекта по номеру полиса И привязке к контакту
|
||||
// (т.к. по одному полису может быть несколько застрахованных лиц)
|
||||
// Проверяем существование проекта по номеру полиса И прямой привязке к контакту
|
||||
// (без зависимости от заполнения vtiger_crmentityrel)
|
||||
$query = "SELECT p.projectid
|
||||
FROM vtiger_project p
|
||||
INNER JOIN vtiger_projectcf pcf ON p.projectid = pcf.projectid
|
||||
LEFT JOIN vtiger_crmentity e ON e.crmid = p.projectid
|
||||
LEFT JOIN vtiger_crmentityrel rel ON
|
||||
(rel.crmid = p.projectid AND rel.relcrmid = ?)
|
||||
OR (rel.relcrmid = p.projectid AND rel.crmid = ?)
|
||||
INNER JOIN vtiger_crmentity e ON e.crmid = p.projectid
|
||||
WHERE e.deleted = 0
|
||||
AND pcf.cf_1885 = ?
|
||||
AND rel.crmid IS NOT NULL
|
||||
AND p.linktoaccountscontacts = ?
|
||||
LIMIT 1";
|
||||
$result = $adb->pquery($query, array($contact_id, $contact_id, $policy_number));
|
||||
$result = $adb->pquery($query, array($policy_number, $contactIdNumeric));
|
||||
|
||||
if ($adb->num_rows($result) > 0) {
|
||||
// Проект существует - ПРОСТО ВОЗВРАЩАЕМ ID (НЕ обновляем!)
|
||||
@@ -90,7 +91,7 @@ function vtws_createwebproject($policy_number, $contact_id, $period_start = '',
|
||||
'projectname' => $projectname,
|
||||
'projectstatus' => 'модерация',
|
||||
'projecttype' => 'ерв урегулирование',
|
||||
'linktoaccountscontacts' => '12x'.$contact_id, // Привязка к контакту
|
||||
'linktoaccountscontacts' => $contactIdWithPrefix, // Привязка к контакту
|
||||
'cf_1994' => '11x67458', // Заявитель (контрагент record=67458)
|
||||
'cf_1885' => $policy_number, // Номер полиса
|
||||
'assigned_user_id' => vtws_getWebserviceEntityId('Users', $current_user->id)
|
||||
|
||||
Reference in New Issue
Block a user