101 lines
3.8 KiB
Markdown
101 lines
3.8 KiB
Markdown
|
|
# Решение проблемы с Workflow 120 - Создание судебных событий
|
|||
|
|
|
|||
|
|
**Дата:** 17 октября 2025
|
|||
|
|
**Проблема:** Workflow не создаёт события в календаре из-за проблем с блоком обработки JSON
|
|||
|
|
|
|||
|
|
## ✅ РЕШЕНИЕ: Обход workflow через отдельный endpoint
|
|||
|
|
|
|||
|
|
Вместо того чтобы бороться с багами Workflow2, создали отдельную систему для создания событий через прямые SQL запросы.
|
|||
|
|
|
|||
|
|
## 📁 Созданные файлы
|
|||
|
|
|
|||
|
|
### 1. CreateCourtEvent_v2.php
|
|||
|
|
**Что делает:** Создаёт событие в календаре CRM через SQL
|
|||
|
|
|
|||
|
|
**Как использовать:**
|
|||
|
|
```bash
|
|||
|
|
echo '{"project_id":"364118","event_name":"Решение","event_date":"02.10.2025","event_time":"12:00"}' | php CreateCourtEvent_v2.php
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2. ParseAndCreateEvent.php
|
|||
|
|
**Что делает:** Парсит сайт суда + создаёт событие (всё в одном)
|
|||
|
|
|
|||
|
|
**Как использовать:**
|
|||
|
|
```bash
|
|||
|
|
php ParseAndCreateEvent.php project_id=364118 status="..." link1="..."
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Или через браузер:
|
|||
|
|
```
|
|||
|
|
http://crm.clientright.ru/ParseAndCreateEvent.php?project_id=364118&status=...&link1=...
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 🔧 Как обновить Workflow 120
|
|||
|
|
|
|||
|
|
### Вариант 1: Простой (рекомендуется)
|
|||
|
|
Замени вызов `courtpars.php` или `parscourt.php` на `ParseAndCreateEvent.php` с теми же параметрами.
|
|||
|
|
|
|||
|
|
### Вариант 2: Через HTTP Request
|
|||
|
|
1. Удали блоки "обрабатываем JSON" и "Создаем Событие по суду"
|
|||
|
|
2. Добавь блок "HTTP Request" (или похожий)
|
|||
|
|
3. URL: `http://crm.clientright.ru/ParseAndCreateEvent.php`
|
|||
|
|
4. Параметры:
|
|||
|
|
```
|
|||
|
|
project_id = $crmid
|
|||
|
|
status = $projectstatus
|
|||
|
|
link1 = $cf_1499
|
|||
|
|
link2 = $cf_2278
|
|||
|
|
link3 = $cf_2281
|
|||
|
|
case_number = $project_no
|
|||
|
|
uid = $cf_2490
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 📊 Что получается на выходе
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"success": true,
|
|||
|
|
"message": "Парсинг выполнен и событие создано",
|
|||
|
|
"event_created": true,
|
|||
|
|
"event_id": "4x395438",
|
|||
|
|
"event_name": "Решение",
|
|||
|
|
"event_date": "02.10.2025",
|
|||
|
|
"event_time": "12:00",
|
|||
|
|
"project_id": "364118"
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 📝 Логи
|
|||
|
|
|
|||
|
|
- `logs/create_court_event.log` - создание события
|
|||
|
|
- `logs/parse_and_create_event.log` - полный цикл парсинга и создания
|
|||
|
|
- `logs/parser.log` - парсинг сайта суда
|
|||
|
|
|
|||
|
|
## ✅ Преимущества
|
|||
|
|
|
|||
|
|
1. **Надёжно** - прямые SQL запросы вместо глючного workflow
|
|||
|
|
2. **Независимо** - не зависит от кеша Workflow2
|
|||
|
|
3. **Детальные логи** - видно что происходит на каждом этапе
|
|||
|
|
4. **Гибко** - можно вызывать из workflow, cron, или руками
|
|||
|
|
5. **Универсально** - работает с региональными и московскими судами
|
|||
|
|
|
|||
|
|
## 🧪 Тестирование
|
|||
|
|
|
|||
|
|
Проверено на проекте 364118 (московский суд):
|
|||
|
|
- ✅ Событие создано (ID: 4x395438)
|
|||
|
|
- ✅ Привязано к проекту
|
|||
|
|
- ✅ Поля cf_1682 и cf_1684 обновлены
|
|||
|
|
- ✅ Событие отображается в календаре CRM
|
|||
|
|
|
|||
|
|
## 🚀 Следующие шаги
|
|||
|
|
|
|||
|
|
1. Обнови workflow 120 (замени вызов на `ParseAndCreateEvent.php`)
|
|||
|
|
2. Протестируй на нескольких проектах
|
|||
|
|
3. Если всё работает - можно удалить старый код из workflow
|
|||
|
|
|
|||
|
|
## 📖 Подробная документация
|
|||
|
|
|
|||
|
|
См. файл `CREATE_COURT_EVENT_README.md`
|
|||
|
|
|
|||
|
|
|