Решение позволяет:
- Уведомлять о просроченных заданиях руководителей.
- Переадресовывать просроченные задания руководителям.
Достаточно частое явление, когда заказчик требует уведомлять или переадресовывать задания своих подчиненных сотрудников. Данное требование было выделено в отдельный шаблон разработки. Решение адаптировано под все типы заданий и оставлено множество вариантов для доработки.
Алгоритм фонового процесса следующий:
- Выбираются задания с нарушением срока на момент выполнения (функция «Получить задания на эскалацию»).
- Для каждого задания определяется, было ли создано задания на продление. Если задание на продление срока было стартовано, то такое задание пропускается, если же оно находится в состоянии черновика, то такое задание на продление срока будет переведено в состояние «Прекращено» (для избегания конфликтов).
- Если исполнителем задания установлен руководитель подразделения, то, если нужно (см. функцию «Следует отправлять уведомления менеджерам»), ему приходит уведомление о задержке выполнения задания и задание не переадресовывается.
- Если непосредственный руководитель исполнителя включен в роль «Руководители, не участвующие в процессе эскалации», то, если нужно (см. функцию «Следует отправлять уведомления менеджерам»), ему отправляется уведомление о задержке задания и задание не переадресовывается, если же нет, то задание на согласование переадресовывается ему (при возможности переадресации).
Уведомление об истечении срока задания выглядит так:

Состав объектов разработки:
- Фоновый процесс "Эскалация заданий".
Поскольку решение не содержит перекрытий объектов коробочного решения, конфликты при публикации не возникнут. Это позволяет использовать функциональность, как при старте нового проекта, так и в ходе сопровождения существующих инсталляций системы.
Note
Замечания и пожеланию по развитию шаблона разработки фиксируйте через Issues. При оформлении ошибки, опишите сценарий для воспроизведения. Для пожеланий приведите обоснование для описываемых изменений - частоту использования, бизнес-ценность, риски и/или эффект от реализации.
Внимание! Изменения будут вноситься только в новые версии.
- Изменить выборку заданий на эскалацию.
- Адаптировать отправку сообщений руководителям о задежке заданий (стоит отправлять или нет).
- Адаптировать переадресацию заданий под другие типы.
- Адаптировать опеределение возможности переадресации под другие типы.
Для работы требуется установленный Directum RX версии 4.1 и выше.
- Склонировать репозиторий с rx-template-assignmentescalation в папку.
- Указать в config.yml в разделе DevelopmentStudio:
GIT_ROOT_DIRECTORY: '<Папка из п.1>'
REPOSITORIES:
repository:
- '@folderName': 'work'
'@solutionType': 'Work'
'@url': https://github.com/DirectumCompany/rx-template-assignmentescalation.git'
- '@folderName': 'base'
'@solutionType': 'Base'
'@url': ''Возможные варианты:
- Сделать fork репозитория rx-template-assignmentescalation для своей учетной записи.
- Склонировать созданный в п. 1 репозиторий в папку.
- Указать в config.yml в разделе DevelopmentStudio:
GIT_ROOT_DIRECTORY: '<Папка из п.2>'
REPOSITORIES:
repository:
- '@folderName': 'work'
'@solutionType': 'Work'
'@url': https://github.com/DirectumCompany/rx-template-assignmentescalation.git'
- '@folderName': 'base'
'@solutionType': 'Base'
'@url': ''Вариант не рекомендуется, так как при выходе версии шаблона разработки не гарантируется обратная совместимость.
- Склонировать репозиторий rx-template-assignmentescalation в папку.
- Указать в config.yml в разделе DevelopmentStudio:
GIT_ROOT_DIRECTORY: '<Папка из п.1>'
REPOSITORIES:
repository:
- '@folderName': 'work'
'@solutionType': 'Work'
'@url': '<Адрес репозитория для рабочего слоя>'
- '@folderName': 'base'
'@solutionType': 'Base'
'@url': ''
- '@folderName': 'base'
'@solutionType': 'Base'
'@url': 'https://github.com/DirectumCompany/rx-template-assignmentescalation.git'Рекомендуемый вариант для проектов внедрения.
- В системе контроля версий с поддержкой git создать новый репозиторий.
- Склонировать репозиторий rx-template-assignmentescalation в папку с ключом
--mirror. - Перейти в папку из п. 2.
- Импортировать клонированный репозиторий в систему контроля версий командой:
git push –mirror <Адрес репозитория из п. 1>