HTTP API задач процесса
Перед использованием API прочитайте жизненный цикл задач процесса. Для работы из серверного кода используйте ProcessTaskService.
Класс действия: ru.bgcrm.core.task.process.struts.ProcessTaskAction.
Все ответы имеют стандартную оболочку bgcrm: status, message, data, eventList.
Временные метки передаются в миллисекундах Unix.
Создание задачи процесса
Метод: createProcessTask
URL: /user/processTask.do?action=createProcessTask
| Параметр | Обязателен | Описание |
|---|---|---|
|
Да |
ID существующего процесса |
|
Да |
ID включённого определения задачи |
|
Нет |
Конфигурация обработчика, по умолчанию пустая строка |
|
Да |
Плановое время в миллисекундах, не раньше текущего момента |
|
Нет |
Число повторных попыток, по умолчанию |
{
"status": "ok",
"data": {
"task": {
"id": 17,
"processId": 12345,
"task": {
"id": 3,
"title": "Уведомить исполнителей",
"clazz": "ru.bgcrm.dyn.NotifyExecutorsTask",
"script": null,
"enabled": true
},
"config": "channel=news",
"scheduledTime": 1791738000000,
"executedTime": null,
"status": "PENDING",
"retries": 0,
"result": null,
"maxRetries": 1,
"cancellable": true
}
},
"eventList": []
}
Отмена задачи процесса
Метод: cancelProcessTask
URL: /user/processTask.do?action=cancelProcessTask&id=:id
id — ID задачи процесса, а не определения из справочника. В data.task возвращается запись
после перевода в CANCELLED. Отмена разрешена только для PENDING.
Получение по ID
Метод: getProcessTaskById
URL: /user/processTask.do?action=getProcessTaskById&id=:id
В data.task возвращается одна задача процесса. Неизвестный ID даёт ошибку.
Поиск
Метод: searchProcessTasks
URL: /user/processTask.do?action=searchProcessTasks
| Параметр | Обязателен | Описание |
|---|---|---|
|
Нет |
ID процесса |
|
Нет |
ID определения задачи |
|
Нет |
Коды статусов через запятую |
|
Нет |
Границы планового времени, миллисекунды |
|
Нет |
Границы фактического времени, миллисекунды |
|
Нет |
Параметр принимается действием, но текущий репозиторий его не применяет |
|
Нет |
Параметры страницы |
{
"status": "ok",
"data": {
"tasks": {
"page": {
"pageIndex": 1,
"pageSize": 5,
"pageCount": 1,
"recordCount": 1
},
"list": [
{
"id": 17,
"processId": 12345,
"task": {
"id": 3,
"title": "Уведомить исполнителей",
"clazz": "ru.bgcrm.dyn.NotifyExecutorsTask",
"script": null,
"enabled": true
},
"config": "channel=news",
"scheduledTime": 1791738000000,
"executedTime": null,
"status": "PENDING",
"retries": 0,
"result": null,
"maxRetries": 1,
"cancellable": true
}
]
}
},
"eventList": []
}