# Эндпоинт получения статуса обращений в суд **Файл:** `GetCourtStatus.php` **Создан:** 15 октября 2025 ## 🎯 Назначение Получение статуса обращения из системы ej.sudrf.ru через API Debexpert. Позволяет отслеживать: - Текущий статус обращения - Историю изменений статуса - Документы от суда (определения, решения) - Информацию о суде ## 📡 Использование ### Базовый запрос (с тестовым номером) ```bash curl https://crm.clientright.ru/GetCourtStatus.php ``` По умолчанию использует тестовый номер: `41RS0001-201-25-0001140` ### Запрос с конкретным номером ```bash curl "https://crm.clientright.ru/GetCourtStatus.php?registrationId=41RS0001-201-25-0001140" ``` ### Запрос с фильтрацией по датам ```bash curl "https://crm.clientright.ru/GetCourtStatus.php?registrationId=41RS0001-201-25-0001140&startDate=01.10.2025&endDate=31.10.2025" ``` ### Из браузера Просто откройте URL: ``` https://crm.clientright.ru/GetCourtStatus.php?registrationId=41RS0001-201-25-0001140 ``` ## 📥 Параметры запроса | Параметр | Тип | Обязательный | Описание | Пример | |----------|-----|--------------|----------|---------| | `registrationId` | string | Нет* | Регистрационный номер обращения | `41RS0001-201-25-0001140` | | `startDate` | string | Нет | Начальная дата (dd.mm.yyyy) | `01.10.2025` | | `endDate` | string | Нет | Конечная дата (dd.mm.yyyy) | `31.10.2025` | \* Если не указан, используется тестовый номер `41RS0001-201-25-0001140` ## 📤 Формат ответа ### Успешный ответ ```json { "status": "OK", "registrationId": "41RS0001-201-25-0001140", "data": { "data": [ { "court": { "VNKOD": "41RS0001", "ZNACHATR": "Петропавловск-Камчатский городской суд", "ADRESS": "683049, г. Петропавловск-Камчатский, ул. Звездная, д. 7", ... }, "created": "2025-10-15T16:41:20.000+03:00", "current_state_text": "Зарегистрировано в суде", "id": "process123", "number": "41RS0001-201-25-0001140", "status": 200, "status_description": "В обработке", "type": "201.01", "type_title": "Исковое заявление", "history": [ { "id": 123456, "direction": "OUT", "status_text": "Отправлено в суд", "created": "2025-10-15T16:41:20.000+03:00", "files": [] }, { "id": 123457, "direction": "IN", "status_text": "Доставлено в суд", "created": "2025-10-16T10:00:00.000+03:00", "files": [] }, { "id": 123458, "direction": "IN", "status_text": "Зарегистрировано в суде", "created": "2025-10-17T14:30:00.000+03:00", "files": [] } ] } ], "request_id": "uuid-...", "status": "200" } } ``` ### Ответ с ошибкой ```json { "status": "ERROR", "message": "Описание ошибки", "http_code": 400, "response_body": "..." } ``` ## 📊 Возможные статусы обращения - `Отправлено в суд` - документы отправлены - `Проверка ЭП пройдена` - электронная подпись проверена - `Доставлено в суд` - документы получены судом - `Зарегистрировано в суде` - обращение зарегистрировано - `Передано на рассмотрение судье` - назначен судья - `Принято к производству` - дело принято к рассмотрению - `Назначено к слушанию` - назначена дата слушания - `Отказано в принятии` - отказ в принятии обращения - И другие... ## 📁 Логирование Все запросы логируются в файл: ``` logs/court_status.log ``` Содержимое лога: - Время запроса - Регистрационный номер - Параметры fillData - HTTP статус код ответа - Тело ответа от API - Ошибки (если были) ### Просмотр логов ```bash # Последние записи tail -n 50 logs/court_status.log # В реальном времени tail -f logs/court_status.log # Поиск ошибок grep "ошибка" logs/court_status.log ``` ## 🔧 Интеграция в CRM ### Вариант 1: AJAX запрос из интерфейса ```javascript // Получить статус по номеру fetch('GetCourtStatus.php?registrationId=41RS0001-201-25-0001140') .then(response => response.json()) .then(data => { if (data.status === 'OK') { console.log('Текущий статус:', data.data.data[0].current_state_text); console.log('История:', data.data.data[0].history); } else { console.error('Ошибка:', data.message); } }); ``` ### Вариант 2: Автоматическая проверка по крону Создать скрипт, который: 1. Берёт все проекты со статусом "отправлено в суд" 2. Для каждого проекта вызывает GetCourtStatus.php 3. Обновляет статус в CRM 4. Скачивает новые документы от суда ### Вариант 3: Кнопка в интерфейсе проекта Добавить кнопку "Проверить статус в суде", которая: 1. Вызывает GetCourtStatus.php с номером из проекта 2. Показывает актуальную информацию 3. Предлагает скачать документы от суда ## 🧪 Тестирование ### Тест 1: Базовый запрос (с тестовым номером) ```bash curl https://crm.clientright.ru/GetCourtStatus.php ``` Ожидается: JSON с данными или сообщение об ошибке ### Тест 2: Запрос с реальным номером ```bash curl "https://crm.clientright.ru/GetCourtStatus.php?registrationId=41RS0001-201-25-0001140" ``` Ожидается: Информация по конкретному обращению ### Тест 3: Проверка логов ```bash tail -n 20 logs/court_status.log ``` Ожидается: Записи о запросах и ответах ## 🔄 Следующие шаги 1. **Протестировать эндпоинт** с реальным номером 2. **Определить, как часто проверять** статусы (раз в час, день?) 3. **Решить, где хранить** историю статусов в CRM 4. **Добавить функционал** скачивания документов от суда 5. **Создать уведомления** при изменении статуса ## ⚙️ Настройка ### Изменить тестовый номер Отредактируйте строку 23 в `GetCourtStatus.php`: ```php $registrationId = '41RS0001-201-25-0001140'; // <- Ваш номер ``` ### Изменить таймаут Отредактируйте строку 17 в `GetCourtStatus.php`: ```php set_time_limit(60); // секунды ``` ## 📞 Поддержка При проблемах проверьте: 1. `logs/court_status.log` - логи эндпоинта 2. Наличие cookies в `cookies.txt` 3. Корректность API ключа в функции `GetKey()` --- **Статус:** ✅ Готов к использованию **Версия:** 1.0 **Последнее обновление:** 15 октября 2025