Реализовано уведомление для записей реестра Обращения в статусе "Зарегистрировано", которое отображается когда один пользователь открывает обращение, которое открыто у другого пользователя. Таким образом можно исключить одновременную работу над одним документом при распределении обращений.
Для настройки данного уведомления необходимо:
1. Подключиться по ssh к виртуальной машине
2. Выполнить команду `mysql -uroot -proot`, после чего вы зайдете MySQL
3. Выбрать базу данных, выполнив команду `use synergy;`
4. Выполнить следующий запрос:
CREATE TABLE IF NOT EXISTS `opened_documents` (
`documentID` char(36),
`dataUUID` bigint(20) unsigned,
`userID` char(36),
`date` char(36),
PRIMARY KEY (`documentID`)
) ENGINE=InnoDB COMMENT='открытые документы (инциденты со статусом 1) в UI Synergy' ;
5. Перезапустить jboss
Также бывают ситуации, когда пользователь закрывает сразу же страницу браузера и тем самым документ не закрывается. В базе данных документ остается открытым под данным пользователем. Реализовано несколько API методов для работы с открытыми документами:
1. GET `/itsm/rest/document/isopen?documentID={documentID}` - возвращает информацию по документу если он открыт, пример ответа:
...
...
@@ -227,7 +207,7 @@ PRIMARY KEY (`documentID`)
}
Также для удобства реализован скрипт `closeOpenDocument.sh`, который проверяет и удаляет из базы открытые документы. Данный скрипт можно поставить в крон для автоматического удаления зависших документов (*для случаев когда событие закрытия документа из UI Synergy не может быть вызвано*). Скрипт содержит настройки, которые по необходимости изменить под потребности:
Скрипт находится в папке `/opt/synergy/apps/itsm/scripts`.
# кол-во часов, прошедших с даты открытия документа, по истечению которых нужно удалить документ из базы
...
...
@@ -244,6 +224,23 @@ mysqlDB="synergy"
mysqlHost="localhost"
Для того чтобы поставить в крон необходимо:
1. Подключиться по ssh и в терминале ввести команду