Обновленные файлы: - crm_extensions/nextcloud_api.php (2 места) - modules/Documents/actions/NcPrepareEdit.php - crm_extensions/nextcloud_editor/js/nextcloud-editor.js - crm_extensions/file_storage/api/get_edit_urls.php - crm_extensions/file_storage/api/simple_edit.php - crm_extensions/README.md - NEXTCLOUD_EDIT_BUTTON_IMPLEMENTATION.md - crm_extensions/docs/NEXTCLOUD_EDITOR.md - test_syntax_check.html - crm_extensions/tests/test_edit_button.html Все ссылки теперь указывают на новый сервер office.clientright.ru Backup файлы и тестовые директории не изменены
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`
|
||
|
||
|