Логический раутинг API. Логика прохождения документов. Пересылка документов по сценарию. | ХитМедиа
1236
single,single-post,postid-5,single-format-standard,ajax_fade,page_not_loaded,,side_area_uncovered_from_content,qode-theme-ver-7.7,wpb-js-composer js-comp-ver-4.3.5,vc_responsive

Логический раутинг API. Логика прохождения документов. Пересылка документов по сценарию.

Логический раутинг API. Логика прохождения документов. Пересылка документов по сценарию.



Routing API - это система настройки логического прохождения любых типов документов. Данный модуль подразумевается независимым от других модулей.
В связи с этим введены следующие абстрактные понятия:
Object - это пассивный участник действия (в большинстве приложений это
документ либо что-то подобное), тот над кем совершают действие.
Subject - это активный участник действия (в большинстве приложений это
пользователь), тот кто совершает действие над Object.
Модуль оперирует идентификаторами Subject и Object, а что они обозначают
в каждом конкретном случае, решает пользовательское приложение.


Специфичными для модуля понятиями являются следующие:

Route - маршрут - ориентированный граф с выделенной начальной вершиной.
Каждую вершину данного графа будем называть шагом - Step.
Ориентированные дуги, ведущие из одной вершины в другую - это события - Events.


Routing состоит в том, что Object, начав движение с начальной вершины,
движется по дугам данного графа. При этом Object переходит на следующую
вершину только под воздействием Subject и по дуге, которую выбрал Subject.
Начав routing, Object в любой момент времени может находиться только в одной
вершине и только на одном маршруте.

Заметим, что документ (Object) в каждой из вершин доступен только определенному
набору (для каждой вершины маршрута своему) пользователей (Subjects).
Только эти пользователи (Subjects) могут видеть события (в приложении они могут
интерпретироваться, например, как кнопки) доступные для Object на данном шаге,
и только они могут активировать какое-либо из этих событий.


Для иллюстрации этого опишем логику "Создание и Постановка задач"


Создание задачи ->
1. на выполнение -> сделано
2. на выполнение -> нужны доп объяснения -> на выполнение

Для этого


1)создаем шаги:
ЗАДАЧИ$ВЫПОЛНЕНИЕ (Задача находится на исполнении)
ЗАДАЧИ$ОБЪЯСНИТЬ (Исполнитель требует доп. объяснений)
ЗАДАЧИ$СДЕЛАНА (Задача полностью выполнена)

2)создаем события:
(название) (надпись на кнопке) (описание)
ЗАДАЧИ$ВЫПОЛНИТЬ [На исполнение] Отправить исполнителю на выполнение
ЗАДАЧИ$НЕПОНЯЛ [Не понял] Требуются доп. объяснения
ЗАДАЧИ$СДЕЛАЛ [Сделано] Все готово

3)создаем типы пользователей:
ЗАДАЧИ$ИСПОЛНИТЕЛЬ Исполнитель задачи
ЗАДАЧИ$ПОСТАНОВЩИК Постановщик задачи

4)создаем маршрут: ВЫПОЛНЕНИЕ ЗАДАЧ

5)настраиваем маршрут:

ЗАДАЧИ$ВЫПОЛНЕНИЕ: (Home Step)
Owners:
ЗАДАЧИ$ИСПОЛНИТЕЛЬ
Events:
ЗАДАЧИ$НЕПОНЯЛ -> ЗАДАЧИ$ОБЪЯСНИТЬ
ЗАДАЧИ$СДЕЛАЛ -> ЗАДАЧИ$СДЕЛАНА
ЗАДАЧИ$ОБЪЯСНИТЬ:
Owners:
ЗАДАЧИ$ПОСТАНОВЩИК
Events:
ЗАДАЧИ$ВЫПОЛНИТЬ -> ЗАДАЧИ$ВЫПОЛНЕНИЕ
ЗАДАЧИ$СДЕЛАНА:
Owners:
ЗАДАЧИ$ПОСТАНОВЩИК


документация на русском языке


официальный сайт www.dynamicpsp.com