Статусы заявок — UniBPM
  • Ru

Статус заявки (Ticket state)

Статус заявки — это сущность, обеспечивающая ведение модели состояний заявки и сопоставление их с событиями процесса.

  • Для работы со справочником статусов заявок необходимо выбрать пункт меню Статусы заявок в ⚙️ настройках пространства (Workflow).

  • При создании (редактировании) статуса заявки, система отправляет запрос в процессный движок, получая связанную с пространством (Workflow) и типом заявки модель процесса. Из полученной модели процесса извлекаются элементы BPMN следующих типов:

    • None Start Event;
    • None Intermediate Throw Event;
    • None End Event.

События с типами Message, Link, Signal, Error, Escalation, Compensation, Conditional, Timer и прочими специализированными BPMN Event Definition в список не включаются. Также из выборки исключаются события BPMN, не имеющие имени (Name).

  • Элементы выводятся в выпадающем списке поля Activity ID:

    • ключ - ID элемента BPMN (element/activity ID);
    • значение - имя элемента BPMN (element/activity Name).
  • Статусы настраиваются в разрезе типов заявок в нём.

Ключевые принципы

Сопоставление состояния процесса и статуса заявки

При выполнении экземпляра процесса, имеющего бизнес-ключ, процессный движок экспортирует поток событий в топик брокера сообщений Kafka, указанный в конфигурационном параметре camunda-kafka-import.change-state-topic в формате:

  • ID события (id)
  • Бизнес-ключ (businessKey)
  • ID элемента BPMN (activityID)

Значение по-умолчанию:

camunda-kafka-import:
  change-state-topic: reunico.unibpm.execution.events.prod

При получении системой сообщения из топика Kafka, выполняется присвоение статуса заявки, согласно алгоритму:

  • Поиск заявки, имеющей ID = бизнес-ключу;
  • Если заявка найдена, определяется тип заявки и пространство (Workflow);
  • Выполняется поиск статуса заявки, имеющего совпадающие: ID элемента BPMN, пространство (Workflow) и тип заявки;
  • Если статус найден, он присваивается заявке.

Атрибуты

Тип заявки (ticket type)

Ticket Type

Тип заявки - обязательный тип заявки, для которого будет применяться указанный статус. Выбирается из справочника типов заявок.

ID элемента BPMN (Activity ID)

String

ID элемента BPMN - связанный со статусом элемент BPMN. Выбирается из элементов BPMN модели процесса, связанной с пространством (Workflow) или типом заявки.

Имя (name)

String

Имя - наименование статуса, выводящееся в системе.

Завершающий статус (icon)

Boolean

Завершающий статус - признак того, что статус завершает жизненный цикл заявки.

Иконка(icon)

String

Иконка - небольшое графическое изображение, упрощающее идентификацию состояния. Выбирается из библиотеки иконок.