Files
aiform_prod/SUMMARY_DOCUMENTS_API.md
AI Assistant 4c8fda5f55 Добавлено логирование для отладки черновиков
- Добавлены логи в frontend (ClaimForm.tsx) для отслеживания unified_id и запросов к API
- Добавлены логи в backend (claims.py) для отладки SQL запросов
- Создан лог сессии с описанием проблемы и текущего состояния
- Проблема: API возвращает 0 черновиков, хотя в БД есть данные
2025-11-19 18:46:48 +03:00

113 lines
3.8 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📎 ИТОГ: API привязки документов готов!
## ✅ Что сделано
### 1⃣ Backend Endpoint
**URL:** `POST https://crm.clientright.ru/api/n8n/documents/attach`
**Возможности:**
- ✅ Batch-обработка массива документов
- ✅ Умный парсинг S3 путей (автоматически добавляет хост)
- ✅ Поддержка двух форматов полей (`file`/`file_url`, `filename`/`file_name`)
- ✅ Привязка к HelpDesk (заявке) или Project (проекту)
- ✅ Детальная статистика по каждому документу
- ✅ Полное логирование всех операций
### 2⃣ PHP Backend
**Файл:** `/var/www/fastuser/data/www/crm.clientright.ru/upload_documents_to_crm.php`
**Доработки:**
- ✅ Поддержка `ticket_id` для привязки к HelpDesk
- ✅ Логика: если `ticket_id` → HelpDesk, иначе → Project
- ✅ Обновление S3 метаданных в базе vTiger
- ✅ Прямая привязка через `relateEntities` если webservice не работает
### 3⃣ Документация
- 📄 `DOCUMENT_ATTACH_API.md` - полная документация API
- 📄 `QUICK_START_DOCUMENTS.md` - краткая шпаргалка
- 📄 `TEST_ATTACH_DOCUMENT.md` - примеры тестирования
### 4⃣ Тесты
- 🧪 `TEST_REAL_DATA.sh` - тест с реальными данными
- 🧪 `TEST_QUICK.sh` - быстрые тесты
---
## 🚀 Формат входных данных
```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/to/file.pdf"
}
]
```
**Важно:**
- Всегда массив `[...]` (даже для одного документа)
- Поле `file` без хоста → автоматически добавится `https://s3.twcstorage.ru`
- `ticket_id` опционально (если есть → HelpDesk, иначе → Project)
---
## 📊 Формат ответа
```json
{
"success": true,
"total_processed": 1,
"successful": 1,
"failed": 0,
"results": [
{
"document_id": "15x396941",
"document_numeric_id": "396941",
"attached_to": "ticket",
"attached_to_id": "396936",
"file_name": "boarding_pass.pdf",
"file_type": "flight_delay_boarding_or_ticket",
"s3_bucket": "f9825c87-...",
"s3_key": "crm2/CRM_Active_Files/...",
"file_size": 85320,
"message": "Документ создан и привязан..."
}
],
"errors": null
}
```
---
## 🧪 Тестирование
```bash
cd /var/www/fastuser/data/www/crm.clientright.ru/erv_platform
./TEST_REAL_DATA.sh
```
---
## 📝 Git коммиты
```
ec44f43 - docs: Добавлена краткая шпаргалка для быстрого старта
efb0cd6 - feat: Поддержка batch-обработки документов и умного парсинга S3 путей
e27280e - docs: Добавлена полная документация API привязки документов
936cea6 - feat: Добавлен эндпоинт для привязки документов к проекту/заявке
d3b7b3b - feat: Добавлены все N8N webhook URLs в config.py
5f4f992 - feat: Добавлена поддержка привязки документов к HelpDesk (CRM)
```
---
## 🎯 Готово к боевому использованию!
Эндпоинт протестирован и готов к интеграции в n8n workflow! 🚀