- Исправлена ошибка ReferenceError при загрузке черновиков - Переименована локальная переменная claimId в finalClaimId для избежания конфликта с параметром функции - Обновлена логика извлечения claim_id из разных источников (claim.claim_id, payload.claim_id, body.claim_id, claim.id) - Добавлен fallback на параметр claimId функции для надёжности
102 lines
2.3 KiB
Markdown
102 lines
2.3 KiB
Markdown
# ✅ ИТОГОВОЕ РЕШЕНИЕ: Привязка документов
|
||
|
||
## 🎯 Прямой PHP эндпоинт (рекомендуется)
|
||
|
||
**URL для n8n:**
|
||
```
|
||
POST https://crm.clientright.ru/api_attach_documents.php
|
||
```
|
||
|
||
**Почему этот вариант:**
|
||
- ✅ Нет лишних прокси-слоев
|
||
- ✅ Не зависит от backend контейнера
|
||
- ✅ Прямое взаимодействие с CRM
|
||
- ✅ Проще в отладке
|
||
|
||
---
|
||
|
||
## 📋 Формат запроса
|
||
|
||
```json
|
||
[
|
||
{
|
||
"claim_id": "CLM-2025-11-02-WNRZZZ",
|
||
"event_type": "delay_flight",
|
||
"contact_id": "320096",
|
||
"project_id": "396868",
|
||
"ticket_id": "396936",
|
||
"filename": "boarding_pass.pdf",
|
||
"file_type": "flight_delay_boarding_or_ticket",
|
||
"file": "/bucket/path/file.pdf"
|
||
}
|
||
]
|
||
```
|
||
|
||
**Обязательные поля:**
|
||
- `contact_id` - ID контакта
|
||
- `project_id` - ID проекта (полиса)
|
||
- `filename` (или `file_name`) - имя файла
|
||
- `file` (или `file_url`) - путь к файлу в S3
|
||
|
||
**Опциональные поля:**
|
||
- `ticket_id` - ID заявки (**если указан → привязка к HelpDesk, иначе → к Project**)
|
||
- `file_type` - описание типа документа
|
||
- `claim_id`, `event_type` - для логирования
|
||
|
||
---
|
||
|
||
## 📊 Ответ
|
||
|
||
```json
|
||
{
|
||
"success": true,
|
||
"total_processed": 1,
|
||
"successful": 1,
|
||
"failed": 0,
|
||
"results": [
|
||
{
|
||
"document_id": "15x396941",
|
||
"attached_to": "ticket",
|
||
"attached_to_id": "396936",
|
||
"file_name": "boarding_pass.pdf",
|
||
"...": "..."
|
||
}
|
||
],
|
||
"errors": null
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 Интеграция в n8n
|
||
|
||
### HTTP Request Node:
|
||
|
||
**Method:** `POST`
|
||
**URL:** `https://crm.clientright.ru/api_attach_documents.php`
|
||
**Authentication:** None
|
||
**Body Content Type:** JSON
|
||
|
||
**Body:**
|
||
```
|
||
{{ $json.documents }}
|
||
```
|
||
|
||
Где `$json.documents` - массив из предыдущей ноды.
|
||
|
||
---
|
||
|
||
## 🔍 Логи
|
||
|
||
```bash
|
||
tail -f /var/www/fastuser/data/www/crm.clientright.ru/logs/api_attach_documents.log
|
||
```
|
||
|
||
---
|
||
|
||
## ✅ Готово к использованию!
|
||
|
||
Эндпоинт протестирован и готов к production! 🚀
|
||
|
||
Полная документация: `/var/www/fastuser/data/www/crm.clientright.ru/API_ATTACH_DOCS_README.md`
|