- Добавлен сервис CrmMySQLService для прямого подключения к MySQL CRM - Обновлён метод get_draft() для получения cf_2624 напрямую из БД - Реализована блокировка полей (readonly) при contact_data_confirmed = true - Добавлен выбор банка для СБП выплат с динамической загрузкой из API - Обновлена документация по работе с cf_2624 и MySQL - Добавлен network_mode: host в docker-compose для доступа к MySQL - Обновлены компоненты формы для поддержки блокировки полей
2.1 KiB
2.1 KiB
Установка поля cf_2624 "Данные подтверждены" в n8n workflow
Обновление workflow 6mxRJ2LLHmQXyaDz
После подтверждения формы (после SMS-верификации)
Добавить ноду: HTTP Request: Set Contact Data Confirmed
Параметры:
- Method: POST
- URL:
{{ $env.CRM_WEBSERVICE_URL }}(или полный URL CRM webservice) - Body Type: form-data
Body (form-data):
operation: revise
sessionName: {{ $('Login to CRM').json.sessionName }}
id: 12x{{ JSON.parse($node['CreateWebContacКлиентправ'].json.result).contact_id }}
cf_2624: 1
Где:
cf_2624- поле "Данные подтверждены" в CRM1= "Да" (данные подтверждены)0= "Нет" (данные не подтверждены)
Альтернативный вариант: через Code Node
Если нужно более гибкое управление, можно использовать Code Node:
Название: Code: Set Contact Data Confirmed
Код:
// Получаем contact_id из CreateWebContact
const contactResult = JSON.parse($node['CreateWebContacКлиентправ'].json.result);
const contact_id = contactResult.contact_id;
// Получаем sessionName из Login to CRM
const sessionName = $('Login to CRM').json.sessionName;
// Формируем данные для обновления
return {
operation: 'revise',
sessionName: sessionName,
id: `12x${contact_id}`,
cf_2624: '1' // Устанавливаем "Да" (данные подтверждены)
};
Затем подключить к HTTP Request ноде, которая отправит эти данные в CRM.
Проверка работы:
- После SMS-верификации и подтверждения формы
- Проверить в CRM, что у контакта поле
cf_2624= "Да" - При следующей загрузке черновика поля должны быть заблокированы