kz.arta.synergy.api.rest.translation

Class TranslationService

kz.arta.synergy.api.rest.notifications

Class NotificationsService

kz.arta.synergy.api.rest.filecabinet

Class UsersService

kz.arta.synergy.api.rest.filecabinet

Class DepartmetnsService

kz.arta.synergy.api.rest.filecabinet

Class PositionsService

kz.arta.synergy.api.rest.sign

Class SignService

kz.arta.synergy.api.rest.docs

Class DocFlowService

kz.arta.synergy.api.rest.personalrecord

Class PersonalRecordService

kz.arta.synergy.api.rest.person

Class UserPhotoServlet

kz.arta.synergy.api.rest.person

Class PersonLoad

kz.arta.synergy.api.rest.person

Class PersonService

kz.arta.synergy.api.rest.report

Class ReportService

kz.arta.synergy.api.rest.diary

Class DiaryService

kz.arta.synergy.api.rest.delegation

Class DelegationService

kz.arta.synergy.api.rest.auth

Class AuthService

kz.arta.synergy.api.rest.groups

Class GroupsService

kz.arta.synergy.api.rest.storage

Class IconServlet

kz.arta.synergy.api.rest.storage

Class ASFFileServlet

kz.arta.synergy.api.rest.storage

Class FileDownloadServlet

kz.arta.synergy.api.rest.storage

Class PDFDownloadServlet

kz.arta.synergy.api.rest.storage

Class StorageService

kz.arta.synergy.api.rest.storage

Class StorageGroupsService

kz.arta.synergy.api.rest.mobile

Class MobileUtilsService

kz.arta.synergy.api.rest.asforms

Class FormPlayerIconService

kz.arta.synergy.api.rest.asforms

Class FormPlayerService

kz.arta.synergy.api.rest.asforms

Class APIFormsService

kz.arta.synergy.api.rest.registry

Class RegistryService

kz.arta.synergy.api.rest.cors

Class AccessForbiddenServlet



  • public class AccessForbiddenServlet
    extends HttpServlet
    Created by exile Date: 08.08.16 Time: 16:28 класс обрабатывает 401 ошибку
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static java.lang.String WWW_AUTHENTICATE
      наименование хедера мы меняем этот хедер чтобы браузер не показывал свое окошко с вводом логина и пароля
      static java.lang.String WWW_AUTHENTICATE_VALUE 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected void service(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • WWW_AUTHENTICATE

        public static final java.lang.String WWW_AUTHENTICATE
        наименование хедера мы меняем этот хедер чтобы браузер не показывал свое окошко с вводом логина и пароля
        See Also:
        Constant Field Values
      • WWW_AUTHENTICATE_VALUE

        public static final java.lang.String WWW_AUTHENTICATE_VALUE
        See Also:
        Constant Field Values
    • Constructor Detail

      • AccessForbiddenServlet

        public AccessForbiddenServlet()
    • Method Detail

      • service

        protected void service(HttpServletRequest httpServletRequest,
                               HttpServletResponse httpServletResponse)
                        throws ServletException,
                               java.io.IOException
        Throws:
        ServletException
        java.io.IOException
kz.arta.synergy.api.rest.bp

Class ProcessesService



  • public class ProcessesService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 12.11.13 Time: 11:31 To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      ProcessesService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response competeProcess(java.lang.String signal, java.lang.String executionID, java.lang.String locale)
      Метод отправляет сигнал блокирующему процессу для его завершения в системе и восстановления работы маршрута

      URL rest/api/processes/signal
      Method GET

      Так же метод принимает дополнительные опциональные параметры, передаваемые процессу.

      java.lang.String getHost() 
      java.lang.String getUserID() 
      Response retryBP(java.lang.String documentID)
      Метод переотправки в очередь незавершенных блок процессов в указанном документе *

      URL rest/api/processes/retry_bp *
      Method POST Пример:
      rest/api/processes/retry_bp?

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ProcessesService

        public ProcessesService()
    • Method Detail

      • competeProcess

        public Response competeProcess(java.lang.String signal,
                                       java.lang.String executionID,
                                       java.lang.String locale)

        Метод отправляет сигнал блокирующему процессу для его завершения в системе и восстановления работы маршрута

        URL rest/api/processes/signal
        Method GET

        Так же метод принимает дополнительные опциональные параметры, передаваемые процессу.
        Для того чтобы передать параметр и значение необходимо передать запросу параметры :
        paramN=название_параметра и valueN=значение_параметра, где N - порядковый номер параметра (нумерация с 1)
        Поддерживаемые параметры:

        • resolution
        • - комментарий, который будет отображаться в ходе исполнения документа для данного процесса

        Примеры:

        Успешное завершение процесса с комментарием
        rest/api/processes/signal?signal=got_agree¶m1=resolution&value1=Действие успешно выполнено&executionID=id_процесса

        Успешное завершение процесса без комментария
        rest/api/processes/signal?signal=got_agree&executionID=id_процесса

        Не успешное завершение процесса с комментарием
        rest/api/processes/signal?signal=got_refuse¶m1=resolution&value1=Действие не выполнено&executionID=id_процесса

        Не успешное завершение процесса без комментария
        rest/api/processes/signal?signal=got_refuse&executionID=id_процесса

        Parameters:
        signal - результат завершения блокирующего процесса: got_agree - успешное завершения, got_refuse - неуспешное завершение
        executionID - идентификатор процесса
        locale - локаль
        Returns:
      • retryBP

        public Response retryBP(java.lang.String documentID)
        Метод переотправки в очередь незавершенных блок процессов в указанном документе *

        URL rest/api/processes/retry_bp *
        Method POST

        Пример:


        rest/api/processes/retry_bp?documentID=document_identifier

        Parameters:
        documentID - query param ид документа
        Returns:
        сообщение о выполнении метода
      • getHost

        public java.lang.String getHost()
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.confimport

Class ImportConfigurationServlet



  • public class ImportConfigurationServlet
    extends HttpServlet
    User: Mikhail Milyutin Date: 10.08.16. Time: 10:30.

    API импорта конфигурации

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected void doPost(HttpServletRequest req, HttpServletResponse res)
      Метод импорта конфигурации URL rest/api/configuration (requires basic http authorization)
      Method POST enctype/multipart
      Запрос должен содержать следующие параметры
      data файл который необходимо импортировать
      new_version создавать новую версию для объектов типа "форма"
      delete_child_objects Удалять все дочерние объекты при замене родительского
      delete_rights Удалять права при замене объектов
      locale локаль возвращаемых сообщений

      Возвращает: json следующего вида
      {"errorCode":0,"errorMessage":""}

      error_values :
      0 - Импорт прошёл успешно
      3 - Переданы некорректные параметры
      2 - Недостаточно прав для импорта/не авторизован
      13 - В списке подписей встречаются подписи, который нет в системе
      http error 400 - Переданы некорректные параметры
      http error 403 - Недостаточно прав для импорта/не авторизован
      http error 500 - в случае любой другой ошибки
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ImportConfigurationServlet

        public ImportConfigurationServlet()
    • Method Detail

      • doPost

        protected void doPost(HttpServletRequest req,
                              HttpServletResponse res)
                       throws ServletException,
                              java.io.IOException

        Метод импорта конфигурации

        URL rest/api/configuration (requires basic http authorization)
        Method POST enctype/multipart


        Запрос должен содержать следующие параметры
        data файл который необходимо импортировать
        new_version создавать новую версию для объектов типа "форма"
        delete_child_objects Удалять все дочерние объекты при замене родительского
        delete_rights Удалять права при замене объектов
        locale локаль возвращаемых сообщений

        Возвращает: json следующего вида
        {"errorCode":0,"errorMessage":""}

        error_values :
        0 - Импорт прошёл успешно
        3 - Переданы некорректные параметры
        2 - Недостаточно прав для импорта/не авторизован
        13 - В списке подписей встречаются подписи, который нет в системе
        http error 400 - Переданы некорректные параметры
        http error 403 - Недостаточно прав для импорта/не авторизован
        http error 500 - в случае любой другой ошибки
        Parameters:
        req - - HttpServletRequest
        res - - HttpServletResponse
        Throws:
        ServletException
        java.io.IOException
kz.arta.synergy.api.rest.userchooser

Class UserChooserService

  • java.lang.Object
    • kz.arta.synergy.api.rest.userchooser.UserChooserService


  • public class UserChooserService
    extends java.lang.Object
    Created with IntelliJ IDEA. User: topa Date: 30.06.13 Time: 21:49 To change this template use File | Settings | File Templates.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response addOftenChosenUsers(java.util.List<java.lang.String> users)
      метод сохраняет последних выбранных пользователей для пользователя
      url: /rest/api/userchooser/addOftenUsers
      method: GET
      Parameters:
      userID - идентификатор пользователя (может повторяться)

      Возвращает json c полями errorCode, errorMessage, где
      - errorCode код ошибки (0, если ошибки нет)
      - errorMessage расшифровка ошибки (пустая строка, если ошибки нет)

      если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      Response checkDepartments(int pageNumber, int countInPart, java.lang.String departmentID, java.lang.String filterDepartmentID, java.lang.String filterChildDepartmentID, java.lang.String filterPositionID, java.lang.String search, boolean showChildDepartments, java.lang.String filterHrUser, java.util.List<java.lang.String> valuesToCheck, java.lang.String filterUserID, java.lang.String locale)
      проверка подходят ли переданные департаменты под указанные параметры поиска url: /rest/api/userchooser/checkDepartments method : GET
      startRecord - по умолчанию 0
      recordsCount - по умолчанию 30
      locale - локаль
      departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
      search параметр текстового поиска
      customFields не используется
      filterDepartmentID идентификатор непосредственного родительского подразделения
      filterChildDepartmentID идентификатор непосредственного родительского подразделения
      filterPositionID идентификатор непосредственного родительского подразделения
      filterUserID идентификатор пользователя чьи должности необходимо показать
      valuesToCheck проверяемые значения идентификаторов передается как valuesToCheck=identifier1&valuesToCheck=identifier2
      Response checkPositions(int startRecord, int recordsCount, boolean showAll, boolean showOnlyVacant, java.lang.String locale, java.lang.String userID, java.lang.Integer operationType, java.lang.String search, java.lang.String departmentID, java.lang.String filterDepartmentID, java.lang.String filterUserID, java.util.List<java.lang.String> valuesToCheck)
      проверка подходят ли переданные должности под переданные параметры выборки
      Response checkUsers(java.lang.String locale, boolean showAll, int levelsCount, int groupID, java.lang.String search, java.lang.Integer operationType, java.lang.Integer ownerOperationType, java.lang.String departmentID, java.lang.String userID, java.lang.String showNoPosition, java.lang.String filterPositionID, java.lang.String filterDepartmentID, java.lang.String positionType, java.util.List<java.lang.String> usersToCheck)
      проверка подходят ли данные пользователи под указанные параметры
      url: /rest/api/userchooser/search_ext
      method : GET
      locale локаль пользователя
      showAll Если значение переменной стоит true, то должны быть отображены не только подчиненные но и все пользователи
      levelsCount Количество уровней "вниз" по оргструктуре от данного пользователя
      groupID идентификатор группы.
      Response getAllPositions(int startRecord, int recordsCount, boolean showOnlyVacant, java.lang.String locale, java.lang.String userID, java.lang.String search, java.lang.String departmentID, java.lang.String filterDepartmentID, java.lang.String filterUserID)
      получение списка должностей url: /rest/api/userchooser/search_all_positions method : GET
      startRecord - по умолчанию 0
      recordsCount - по умолчанию 30
      locale - локаль
      departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
      search параметр текстового поиска
      showOnlyVacant - false по умолчанию, отображать только вакантные должности
      actorID пользователь от имени которого выполнять поиск
      filterDepartmentID идентификатор непосредственного родительского подразделения
      filterUserID идентификатор пользователя чьи должности необходимо показать
      Response getDepartments(int pageNumber, int countInPart, java.lang.String departmentID, java.lang.String filterDepartmentID, java.lang.String filterChildDepartmentID, java.lang.String filterPositionID, java.lang.String search, boolean showChildDepartments, java.lang.String filterHrUser, java.lang.String filterUserID, java.lang.String locale)
      получение списка департаментов url: /rest/api/userchooser/search_dept method : GET Параметры:
      locale - локаль
      departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
      filterDepartmentID идентификатор непосредственного родительского подразделения
      filterChildDepartmentID идентификатор непосредственного родительского подразделения
      filterPositionID идентификатор непосредственного родительского подразделения
      search параметр текстового поиска
      Описание ответа:
      массив найденных должностей
      поля возвращаемой сущности
      departmentId -идентификатор департамента
      departmentName наименование
      hasChildren имеются ли дочерние подразделения
      parentName наименование родительского департамента

      если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      Response getDepartments(java.util.List<java.lang.String> departmentIDs, java.lang.String locale)
      получение информации о должностях
      url: /rest/api/userchooser/getUserInfo
      method : GET
      Response getOftenChosenUsers(int startRecord, int recordsCount, java.lang.String locale, boolean showAll, java.lang.String search, java.lang.Integer operationType, java.lang.Integer ownerOperationType, java.lang.String filterPositionID, java.lang.String filterDepartmentID, java.lang.Integer positionType, java.util.List<java.lang.String> customFields, java.lang.String userNameDisplayType)
      получение списка часто выбираемых пользователей пользователей url: /rest/api/userchooser/getOftenChosenUsers method : GET
      startRecord C какой записи поднимать пользователей
      recordsCount Какое кол-во записей поднимать
      locale локаль пользователя
      showAll Если значение переменной стоит true, то должны быть отображены не только подчиненные но и все пользователи
      search Строка поиска
      operationType Тип действия Если данный параметр задан, то список пользователей будет подгружаться не только от имени actorID, но и от имени тех пользователей, которые делегировали ему право на operationType
      ownerOperationType Если данный параметр задан, то список пользователей в выборке ограничивается теми пользователями, которые делегировали actorID право на ownerOperationType и самим actorID
      filterPositionID UUID должности - фильтра.
      Response getOftenPositions(int startRecord, int recordsCount, boolean showAll, boolean showOnlyVacant, java.lang.String locale, java.lang.String userID, java.lang.Integer operationType, java.lang.String search, java.lang.String departmentID, java.lang.String filterDepartmentID, java.lang.String filterUserID, java.util.List<java.lang.String> customFields)
      получение списка часто выбираемых должностей
      url: /rest/api/userchooser/getOftenChosenPositions
      method : GET
      startRecord - по умолчанию 0
      recordsCount - по умолчанию 30
      showAll - false по умолчанию; отображать все должности (false - отображать подчиненные должности)
      showOnlyVacant - false по умолчанию, отображать только вакантные должности
      locale - локаль
      userID пользователь от имени которого выполнять поиск
      operationType - тип операции для получения пользователей которые делегировали права пользователю (по ним определяется максимальный уровень иерархии верх который нужно отображать и подчиненные должности)
      search параметр текстового поиска
      departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
      filterDepartmentID идентификатор непосредственного родительского подразделения
      filterUserID идентификатор пользователя чьи должности необходимо показать
      customField не используется
      Response getPositions(int startRecord, int recordsCount, boolean showAll, boolean showOnlyVacant, java.lang.String locale, java.lang.String userID, java.lang.Integer operationType, java.lang.String search, java.lang.String departmentID, java.lang.String filterDepartmentID, java.lang.String filterUserID, java.util.List<java.lang.String> customFields)
      получение списка должностей url: /rest/api/userchooser/search_pos
      startRecord - по умолчанию 0
      recordsCount - по умолчанию 30
      locale - локаль
      departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
      search параметр текстового поиска
      showAll - false по умолчанию; отображать все должности (false - отображать подчиненные должности)
      showOnlyVacant - false по умолчанию, отображать только вакантные должности
      operationType - тип операции для получения пользователей которые делегировали права пользователю (по ним определяется максимальный уровень иерархии верх который нужно отображать и подчиненные должности)
      mode - по умолчанию 0(COMMON_MODE).
      Response getPositions(java.util.List<java.lang.String> positionIDs, java.lang.String locale)
      получение информации о должностях
      url: /rest/api/userchooser/getUserInfo
      method : GET
      Response getUserCalendarStatus(java.lang.String userID, java.lang.String date, java.lang.String locale)

      url: /rest/api/userchooser/getUserCalendarStatus
      method : GET
      userID идентификатор пользователя чьи статусы нам необходимо получить
      date дата в формате yyy-MM-dd
      locale локаль Пример запроса:

      `rest/api/userchooser/getUserCalendarStatus?

      java.lang.String getUserID() 
      java.lang.String getUsers(int startRecord, int recordsCount, java.lang.String locale, boolean showAll, int levelsCount, int groupID, java.lang.String groupCode, java.lang.String search, java.lang.Integer operationType, java.lang.Integer ownerOperationType, java.lang.String departmentID, java.lang.String userID)
      Метод выполняет поиск пользователей

      URL rest/api/userchooser/search
      Method GET

      Для каждого пользователя возвращаются следующие данные
      userID - идентификатор пользователя
      name - имя пользователя в формате Фамилия И.О.

      Response getUsers(java.util.List<java.lang.String> userIDs, java.lang.String locale)
      получение информации о пользователях (группах, контактах)
      url: /rest/api/userchooser/getUserInfo
      method : GET Описание ответа: массив объектов с информацией о пользователях
      departmentName наименование департамента
      firstname имя
      lastname фамилия
      patronymic отчество
      personID идентификатор пользователя
      personName имя пользователя
      positionName наименование должности
      customFields - свойства элемента, зависят от типа элемента (смотрите пункт про определение типа сущности по идентификатору)

      Определение типа сущности по идентификатору и доп поля этой сущности
      если userID начинается
      "g-" - группа (type - groupId, id - идентификатор группы, code - код группы)
      "contact-" - контакт (contactType - организация или человек, email - почта если есть, id - идентификатор контакта, type - contact, calendarColor - цвет статуса, calendarStatusLabel - подпись статуса)
      "text-" - текст (type - text, text - true, calendarColor - цвет статуса, calendarStatusLabel - подпись статуса)
      иначе пользователь( type - person, id идентификатор пользователя, calendarType - тип календарного статуса, calendarStatus - статус, calendarColor - цвет статуса, calendarTitle - название статуса, calendarStatusLabel - подпись в чузере статуса, calendarStartDate - дата начала, calendarFinishDate - дата завершения

      если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      Response getUsersCalendarStatus(java.util.List<java.lang.String> users, java.lang.String date, java.lang.String locale)

      url: /rest/api/userchooser/getUsersCalendarStatus
      method : GET Пример ответа: { "4bd1ef2e-3271-4dd3-ac67-9a8017abe1f4": { "type": 1, "status": "free", "color": "#fecebe", "title": "ОТПУСК!!!"
      Response getUsersExt(int startRecord, int recordsCount, java.lang.String locale, boolean showAll, int levelsCount, int groupID, java.lang.String groupCode, java.lang.String search, java.lang.Integer operationType, java.lang.Integer ownerOperationType, java.lang.String departmentID, java.lang.String userID, java.lang.String showNoPosition, java.lang.String filterPositionID, java.lang.String filterDepartmentID, java.lang.String positionType, java.util.List<java.lang.String> customFields, java.lang.String userNameDisplayType, boolean showEmailContacts, boolean showGroups)
      получение списка пользователей
      url: /rest/api/userchooser/search_ext
      method : GET
      startRecord C какой записи поднимать пользователей
      recordsCount Какое кол-во записей поднимать
      locale локаль пользователя
      showAll Если значение переменной стоит true, то должны быть отображены не только подчиненные но и все пользователи
      levelsCount Количество уровней "вниз" по оргструктуре от данного пользователя
      groupID идентификатор группы.
      Response getUserStatusInPeriod(java.lang.String start, java.lang.String finish, java.lang.String type, java.lang.String locale, int startRecord, int recordsCount, java.lang.String sortByDate)
      Апи получения пользователей с назначенным календарем Метод возвращает список пользователей, назначенный период которых полностью или
      частично попадает в указанный промежуток времени.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • UserChooserService

        public UserChooserService()
    • Method Detail

      • getUsers

        public java.lang.String getUsers(int startRecord,
                                         int recordsCount,
                                         java.lang.String locale,
                                         boolean showAll,
                                         int levelsCount,
                                         int groupID,
                                         java.lang.String groupCode,
                                         java.lang.String search,
                                         java.lang.Integer operationType,
                                         java.lang.Integer ownerOperationType,
                                         java.lang.String departmentID,
                                         java.lang.String userID)

        Метод выполняет поиск пользователей

        URL rest/api/userchooser/search
        Method GET

        Для каждого пользователя возвращаются следующие данные
        userID - идентификатор пользователя
        name - имя пользователя в формате Фамилия И.О.
        position - название должности

        Примеры:
        Получение списка подчиненных пользователей

        rest/api/userchooser/search?showAll=false


        Получение списка всех пользователей (подчиненных и не подчиненных)

        rest/api/userchooser/search?showAll=true


        Получение списка всех пользователей, подчиненных user1

        rest/api/userchooser/search?showAll=true&userID=user1


        Получение списка всех пользователей (подчиненных и не подчиненных) в имени/фамилии которых содержится строка "абв"

        rest/api/userchooser/search?showAll=true&search=абв


        Получение списка всех пользователей (подчиненных и не подчиненных) в имени/фамилии которых содержится строка "абв" из департамента с идентификатором department1

        rest/api/userchooser/search?showAll=true&search=абв&departmentID=department1


        Получение списка всех пользователей, которым есть право ставить работу

        rest/api/userchooser/search?showAll=false&operationType=101


        Получение списка всех пользователей, которые делегировали право на создание работы

        rest/api/userchooser/search?showAll=true&ownerOperationType=101


        startRecord первая запись списка
        recordsCount количество записей в списке
        locale локаль пользователя
        showAll true - показывать всех пользователей, иначе - только подчиненных
        search строка поиска, вырождается в условие "содержит ли имя или фамилия пользователя эту строку".
        operationType идентификатор действия. Нужно использовать, если для получения списка пользователей необходимо учесть делегированные права на это действие. Например, для получения списка пользователей, которым можно ставить работу
        ownerOperationType - идентификатор действия для получения списка пользователей, которые делегировали данное действие текущему пользователю. Например, для получения списка пользователей, от имени которых можно создавать работы
        departmentID идентификатор департамента внутри которого необходимо осуществить поиск. По-умолчанию null - это означает, что поиск осуществляется по всей орг. структуре
        groupID id группы пользователя
        groupCode код группы пользователя
        levelsCount параметр для будущего использования
        Returns:
        список пользователей как список json
      • getUsersExt

        public Response getUsersExt(int startRecord,
                                    int recordsCount,
                                    java.lang.String locale,
                                    boolean showAll,
                                    int levelsCount,
                                    int groupID,
                                    java.lang.String groupCode,
                                    java.lang.String search,
                                    java.lang.Integer operationType,
                                    java.lang.Integer ownerOperationType,
                                    java.lang.String departmentID,
                                    java.lang.String userID,
                                    java.lang.String showNoPosition,
                                    java.lang.String filterPositionID,
                                    java.lang.String filterDepartmentID,
                                    java.lang.String positionType,
                                    java.util.List<java.lang.String> customFields,
                                    java.lang.String userNameDisplayType,
                                    boolean showEmailContacts,
                                    boolean showGroups)
        получение списка пользователей
        url: /rest/api/userchooser/search_ext
        method : GET
        startRecord C какой записи поднимать пользователей
        recordsCount Какое кол-во записей поднимать
        locale локаль пользователя
        showAll Если значение переменной стоит true, то должны быть отображены не только подчиненные но и все пользователи
        levelsCount Количество уровней "вниз" по оргструктуре от данного пользователя
        groupID идентификатор группы. Если параметр задан в чузер подтягиваются пользователи, входящие в данную группу
        groupCode код группы. Если параметр задан в чузер подтягиваются пользователи, входящие в данную группу
        search Строка поиска
        operationType Тип действия Если данный параметр задан, то список пользователей будет подгружаться не только от имени userID, но и от имени тех пользователей, которые делегировали ему право на operationType
        ownerOperationType Если данный параметр задан, то список пользователей в выборке ограничивается теми пользователями, которые делегировали userID право на ownerOperationType и самим userID
        departmentID Идентификатор подразделения. Если он задан должен отображаться список пользователей только этого подразделения
        userID Идентификатор пользователя от имени которого выполняется поиск пользователей
        showNoPosition Отображать пользователей, не назначенных на должность
        filterPositionID UUID должности - фильтра. В чузере отображаются только пользователи, занимающие данную должность
        filterDepartmentID UUID подразделения - фильра. В чузере отображаются только пользователи, занимающие должность в данном подразделении (рекурсивно)
        positionType Тип должности Если данный параметр задан, то в чузере отображаются только те пользователи, которые относятся к подразделению, в котором userID занимает должность с типом positionType


        customFields перечень дополнительных полей, которые можно подгрузить для данного пользователя (передаются параметрами с названием customField=) может принимать одно значение is_inferior
        userNameDisplayType тип отображения имени пользователя (full, short)
        showEmailContacts подтягивать контакты
        showGroups подтягивать группы о_О
        Returns:
        список пользователей с полями
        personName имя (полное в формате)
        personID идентификатор
        departmentName наименование департамента
        positionName должность
        customFields доп поля (которые запрашивались)
        lastname фамилия
        firstname имя
        patronymic отчество
      • getUsers

        public Response getUsers(java.util.List<java.lang.String> userIDs,
                                 java.lang.String locale)
        получение информации о пользователях (группах, контактах)
        url: /rest/api/userchooser/getUserInfo
        method : GET Описание ответа: массив объектов с информацией о пользователях
        departmentName наименование департамента
        firstname имя
        lastname фамилия
        patronymic отчество
        personID идентификатор пользователя
        personName имя пользователя
        positionName наименование должности
        customFields - свойства элемента, зависят от типа элемента (смотрите пункт про определение типа сущности по идентификатору)

        Определение типа сущности по идентификатору и доп поля этой сущности
        если userID начинается
        "g-" - группа (type - groupId, id - идентификатор группы, code - код группы)
        "contact-" - контакт (contactType - организация или человек, email - почта если есть, id - идентификатор контакта, type - contact, calendarColor - цвет статуса, calendarStatusLabel - подпись статуса)
        "text-" - текст (type - text, text - true, calendarColor - цвет статуса, calendarStatusLabel - подпись статуса)
        иначе пользователь( type - person, id идентификатор пользователя, calendarType - тип календарного статуса, calendarStatus - статус, calendarColor - цвет статуса, calendarTitle - название статуса, calendarStatusLabel - подпись в чузере статуса, calendarStartDate - дата начала, calendarFinishDate - дата завершения

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
        Parameters:
        userIDs - идентификаторы пользователей передаются как userID=identifier1&userID=identifier2&userID=identifier3 (смотрите пункт про определение типа сущности по идентификатору)
        locale - локаль
      • getPositions

        public Response getPositions(java.util.List<java.lang.String> positionIDs,
                                     java.lang.String locale)
        получение информации о должностях
        url: /rest/api/userchooser/getUserInfo
        method : GET
        Parameters:
        positionIDs - идентификаторы должностей передаются как positionID=identifier1&positionID=identifier2&positionID=identifier3
        locale -
        Returns:

        code код
        departmentName наименование департамента
        elementID идентификатор должности
        elementName наименование должности
        id идентификатор должности
        info наименование департамента
        name наименование должности
        translation не используется
        type не используется

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getDepartments

        public Response getDepartments(java.util.List<java.lang.String> departmentIDs,
                                       java.lang.String locale)
        получение информации о должностях
        url: /rest/api/userchooser/getUserInfo
        method : GET
        Parameters:
        departmentIDs - идентификаторы должностей передаются как positionID=identifier1&positionID=identifier2&positionID=identifier3
        locale -
        Returns:

        departmentId - идентификатор департамента
        departmentName наименование
        parentName наименование родительского департамента
        hasChildren - имеет ли департамент дочерние департаменты

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getUsersCalendarStatus

        public Response getUsersCalendarStatus(java.util.List<java.lang.String> users,
                                               java.lang.String date,
                                               java.lang.String locale)

        url: /rest/api/userchooser/getUsersCalendarStatus
        method : GET Пример ответа:
          {
              "4bd1ef2e-3271-4dd3-ac67-9a8017abe1f4": {
                  "type": 1,
                  "status": "free",
                  "color": "#fecebe",
                  "title": "ОТПУСК!!!",
                  "statusLabel": "отпуск",
                  "startDate": 1456423200000,
                  "finishDate": 1474480800000
              },
              "1": {
                  "type": 1,
                 "status": "free",
                  "color": "#456789",
                  "title": "Командировка",
                  "statusLabel": "Командировка",
                  "startDate": 1456423200000,
                  "finishDate": 1474480800000
              }
          }
         


        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
        Parameters:
        users - несколько пользователей userID=userid1&userID=userid2
        date - дата в формате yyy-MM-dd
        locale - локаль
      • getUserCalendarStatus

        public Response getUserCalendarStatus(java.lang.String userID,
                                              java.lang.String date,
                                              java.lang.String locale)

        url: /rest/api/userchooser/getUserCalendarStatus
        method : GET
        userID идентификатор пользователя чьи статусы нам необходимо получить
        date дата в формате yyy-MM-dd
        locale локаль Пример запроса:

        `rest/api/userchooser/getUserCalendarStatus?userID=407d94f5-c8dd-469d-8328-ae426f04dbd4`

        Пример возвращаемого объекта JSON: [ { "type": 3, "status": "free", "color": "green", "title": "Ежегодный оплачиваемый отпуск", "statusLabel": "В отпуске с 28.12.16 по 04.01.17", "startDate": "2016-12-28", "finishDate": "2017-01-04", "makeVacant": 0 }, { "type": 3, "status": "free", "color": "green", "title": "Ежегодный оплачиваемый отпуск", "statusLabel": "В отпуске с 26.12.16 по 29.12.16", "startDate": "2016-12-26", "finishDate": "2016-12-29", "makeVacant": 0 } ]

      • getUserStatusInPeriod

        public Response getUserStatusInPeriod(java.lang.String start,
                                              java.lang.String finish,
                                              java.lang.String type,
                                              java.lang.String locale,
                                              int startRecord,
                                              int recordsCount,
                                              java.lang.String sortByDate)

        Апи получения пользователей с назначенным календарем

        Метод возвращает список пользователей, назначенный период которых полностью или
        частично попадает в указанный промежуток времени.
        URL метода: /rest/api/userchooser/getUserStatusInPeriod
        method : GET
        Parameters:
        start - дата начала периода, в формате `YYYY-MM-DD` (обяз.)
        finish - дата завершения периода, в формате `YYYY-MM-DD` (обяз.);
        type - тип назначенного статуса, соответствует полю type справочника "Назначение календаря" c кодом calendar_types (необяз.). Если задан данный параметр, то возвращаются пользователи, тип периода которых соответствует указанному значению, может принимать только целые положительные значения;
        locale - локаль;
        startRecord - номер записи результатов, начиная с которой будут возвращены записи (по умолчанию 0)
        recordsCount - количество результатов, которое необходимо вернуть (по умолчанию 30). Максимальное значение параметра 100
        sortByDate - направление сортировки результатов по выходному параметру дате начала периода start. Тип сортировки - дата. Принимает следующие значения (необяз.):
        • asc - записи отсортируются по возрастанию;
        • desc- записи отсортируются по убыванию.
        По умолчанию параметр принимает значение asc, любое другое значение,
        несоответствующее ни одному из возможных значений, будет интерпретировано
        как asc.
        Returns:
        В случае успешного выполнения метод возвращает массив объектов JSON, состоящий из следующих полей:
        • userID - идентификатор пользователя;
        • start - дата начала периода;
        • finish - дата завершения периода;
        • type - тип статуса;
        • title - название статуса;
        • statusLabel - название текущего статуса сотрудника;
        • color - цвет статуса;
        • busyStatus - тип занятости в данный период. Принимает следующие значения:
          • busy - занят в каждый день периода,
          • standart - обычное рабочее время,
          • free - свободен в каждый день периода.
        • makeVacant - признак занятости штатной единицы. Принимает следующие значения:
          • 0 - пользователь с таким статусом занимает штатную единицу на период действия статуса;
          • 1 - пользователь с таким статусом не занимает штатную единицу на период действия статуса.

          Примечание. Пользователь может возвращаться в списке результатов несколько раз, так как пользователю может быть назначено несколько статусов в разные периоды времени.

          Для пользователя может быть несколько статусов в течение выбранного периода времени
          Пример ответа: ```javascript

          [
          {
          "userID": "8f85e270-ebf1-11e5-835c-525400bb7fc6",
          "start": "2016-02-05",
          "finish": "2016-02-25",
          "calendarType":
          {
          "type": "0",
          "title": "Отпуск",
          "statusLabel": "В отпуске с {date.start} по {date.finish}",
          "color": "#5462ef",
          "busyStatus": "free",
          "makeVacant": "0"
          }
          },
          {
          "userID": "59377550-ea78-11e5-835c-525400bb7fc6",
          "start": "2016-02-15",
          "finish": "2017-02-15",
          "calendarType":
          {
          "type": "2",
          "title": "Декретный отпуск",
          "stateLabel": "В декретном отпуске с {date.start} по {date.finish}",
          "color": "#5462ef",
          "busyStatus": "free",
          "makeVacant": "1"
          }
          },
          {
          "userID": "8f85e270-ebf1-11e5-835c-525400bb7fc6",
          "start": "2016-02-28",
          "finish": "2016-03-05",
          "calendarType":
          {
          "type": "1",
          "title": "Командировка",
          "statusLabel": "В командировке с {date.start} по {date.finish}",
          "color": "#5462ef",
          "busyStatus": "busy",
          "makeVacant": "0"
          }
          },
          {
          "userID": "08c164b0-e775-11e5-835c-525400bb7fc6",
          "start": "2016-03-17",
          "finish": "2016-03-23",v "calendarType":
          {
          "type": "1",
          "title": "Командировка",
          "stateLabel": "В командировке с {date.start} по {date.finish}",
          "color": "#5462ef",
          "busyStatus": "busy",
          "makeVacant": "0"
          }
          }
          ]

          В случае передачи неверных параметров или внутренней ошибки сервера будет
          возвращен массив следующего содержания (сообщение об ошибке будет менятся):

           {
          "errorCode": 13,
          "errorMessage": "Передан некорректный параметр start"
          }
          Код ответа для внутренней ошибки - HTTP 500(INTERNAL_SERVER_ERROR), для неверных параметров - HTTP 400(BAD_REQUEST)
      • checkUsers

        public Response checkUsers(java.lang.String locale,
                                   boolean showAll,
                                   int levelsCount,
                                   int groupID,
                                   java.lang.String search,
                                   java.lang.Integer operationType,
                                   java.lang.Integer ownerOperationType,
                                   java.lang.String departmentID,
                                   java.lang.String userID,
                                   java.lang.String showNoPosition,
                                   java.lang.String filterPositionID,
                                   java.lang.String filterDepartmentID,
                                   java.lang.String positionType,
                                   java.util.List<java.lang.String> usersToCheck)
        проверка подходят ли данные пользователи под указанные параметры
        url: /rest/api/userchooser/search_ext
        method : GET
        locale локаль пользователя
        showAll Если значение переменной стоит true, то должны быть отображены не только подчиненные но и все пользователи
        levelsCount Количество уровней "вниз" по оргструктуре от данного пользователя
        groupID идентификатор группы. Если параметр задан в чузер подтягиваются пользователи, входящие в данную группу
        search Строка поиска
        operationType Тип действия Если данный параметр задан, то список пользователей будет подгружаться не только от имени userID, но и от имени тех пользователей, которые делегировали ему право на operationType
        ownerOperationType Если данный параметр задан, то список пользователей в выборке ограничивается теми пользователями, которые делегировали userID право на ownerOperationType и самим userID
        departmentID Идентификатор подразделения. Если он задан должен отображаться список пользователей только этого подразделения
        userID Идентификатор пользователя от имени которого выполняется поиск пользователей
        showNoPosition Отображать пользователей, не назначенных на должность
        filterPositionID UUID должности - фильтра. В чузере отображаются только пользователи, занимающие данную должность
        filterDepartmentID UUID подразделения - фильра. В чузере отображаются только пользователи, занимающие должность в данном подразделении (рекурсивно)
        userToCheck Список идентификаторов пользователей. Это поле используется если задан один из параметров фильтра (должность или подразделение)
        positionType Тип должности
        customFields перечень дополнительных полей, которые можно подгрузить для данного пользователя (передаются параметрами с названием customField=) может принимать одно значение is_inferior
        userNameDisplayType тип отображения имени пользователя (full, short)
        Returns:
        возвращается первый подходящий по параметры поиска пользователь среди переданных, если таковых нет, то возвращается первый из выборки
        personName имя (полное в формате)
        personID идентификатор
        departmentName наименование департамента
        positionName должность
        customFields доп поля (которые запрашивались)
        lastname фамилия
        firstname имя
        patronymic отчество

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • checkPositions

        public Response checkPositions(int startRecord,
                                       int recordsCount,
                                       boolean showAll,
                                       boolean showOnlyVacant,
                                       java.lang.String locale,
                                       java.lang.String userID,
                                       java.lang.Integer operationType,
                                       java.lang.String search,
                                       java.lang.String departmentID,
                                       java.lang.String filterDepartmentID,
                                       java.lang.String filterUserID,
                                       java.util.List<java.lang.String> valuesToCheck)
        проверка подходят ли переданные должности под переданные параметры выборки
        Parameters:
        startRecord - первая позиция выборки (по умолчанию 0)
        recordsCount - количество в выборке (по умолчанию 30)
        showAll - показывать все должности, по умолчанию нет (если нет - то отображаются только подчиненные должности)
        showOnlyVacant - отображать только вакантные должности, по умолчанию нет
        locale - локаль
        userID - идентификатор пользователя от имени которого нужно выполнять поиск
        operationType - - тип операции для получения пользователей которые делегировали права пользователю (по ним определяется максимальный уровень иерархии верх который нужно отображать и подчиненные должности)
        search - текстовый поиск
        departmentID - идентификатор департамента, чьи дочерние должности (всю иерархию) необходимо отображать для всей иерархии
        filterDepartmentID - идентификатор департамента чьи непосредственные должности нужно отображать
        filterUserID - идентификатор пользователя чьи должности необходимо отображать
        valuesToCheck - проверяемые значения идентификаторов должностей передается как valuesToCheck=identifier1&valuesToCheck=identifier2
        Returns:
        возвращается массив, который содержит один элемент: первый подходящий по параметры поиска пользователь среди переданных, если таковых нет, то возвращается первый из выборки поля возвращаемой сущности
        code код
        departmentName наименование департамента
        elementID идентификатор должности
        elementName наименование должности
        translation не используется
        type не используется

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • addOftenChosenUsers

        public Response addOftenChosenUsers(java.util.List<java.lang.String> users)
        метод сохраняет последних выбранных пользователей для пользователя
        url: /rest/api/userchooser/addOftenUsers
        method: GET
        Parameters:
        userID - идентификатор пользователя (может повторяться)

        Возвращает json c полями errorCode, errorMessage, где
        - errorCode код ошибки (0, если ошибки нет)
        - errorMessage расшифровка ошибки (пустая строка, если ошибки нет)

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getOftenChosenUsers

        public Response getOftenChosenUsers(int startRecord,
                                            int recordsCount,
                                            java.lang.String locale,
                                            boolean showAll,
                                            java.lang.String search,
                                            java.lang.Integer operationType,
                                            java.lang.Integer ownerOperationType,
                                            java.lang.String filterPositionID,
                                            java.lang.String filterDepartmentID,
                                            java.lang.Integer positionType,
                                            java.util.List<java.lang.String> customFields,
                                            java.lang.String userNameDisplayType)
        получение списка часто выбираемых пользователей пользователей url: /rest/api/userchooser/getOftenChosenUsers method : GET
        startRecord C какой записи поднимать пользователей
        recordsCount Какое кол-во записей поднимать
        locale локаль пользователя
        showAll Если значение переменной стоит true, то должны быть отображены не только подчиненные но и все пользователи
        search Строка поиска
        operationType Тип действия Если данный параметр задан, то список пользователей будет подгружаться не только от имени actorID, но и от имени тех пользователей, которые делегировали ему право на operationType
        ownerOperationType Если данный параметр задан, то список пользователей в выборке ограничивается теми пользователями, которые делегировали actorID право на ownerOperationType и самим actorID
        filterPositionID UUID должности - фильтра. В чузере отображаются только пользователи, занимающие данную должность
        filterDepartmentID UUID подразделения - фильра. В чузере отображаются только пользователи, занимающие должность в данном подразделении (рекурсивно)
        positionType Тип должности
        customFields перечень дополнительных полей, которые можно подгрузить для данного пользователя (передаются параметрами с названием customField=) может принимать одно значение is_inferior
        userNameDisplayType тип отображения имени пользователя (full, short)
        Returns:
        список пользователей с полями
        personName имя (полное в формате)
        personID идентификатор
        departmentName наименование департамента
        positionName должность
        customFields доп поля (которые запрашивались)
        lastname фамилия
        firstname имя
        patronymic отчество

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getPositions

        public Response getPositions(int startRecord,
                                     int recordsCount,
                                     boolean showAll,
                                     boolean showOnlyVacant,
                                     java.lang.String locale,
                                     java.lang.String userID,
                                     java.lang.Integer operationType,
                                     java.lang.String search,
                                     java.lang.String departmentID,
                                     java.lang.String filterDepartmentID,
                                     java.lang.String filterUserID,
                                     java.util.List<java.lang.String> customFields)
        получение списка должностей url: /rest/api/userchooser/search_pos
        startRecord - по умолчанию 0
        recordsCount - по умолчанию 30
        locale - локаль
        departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
        search параметр текстового поиска
        showAll - false по умолчанию; отображать все должности (false - отображать подчиненные должности)
        showOnlyVacant - false по умолчанию, отображать только вакантные должности
        operationType - тип операции для получения пользователей которые делегировали права пользователю (по ним определяется максимальный уровень иерархии верх который нужно отображать и подчиненные должности)
        mode - по умолчанию 0(COMMON_MODE). Если 1(OFTEN_CHOSEN_MODE)
        actorID пользователь от имени которого выполнять поиск
        customFields не используется
        filterDepartmentID идентификатор непосредственного родительского подразделения
        filterUserID идентификатор пользователя чьи должности необходимо показать массив найденных должностей поля возвращаемой сущности
        code код
        departmentName наименование департамента
        elementID идентификатор должности
        elementName наименование должности
        translation не используется
        type не используется
        customFields не используется

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getAllPositions

        public Response getAllPositions(int startRecord,
                                        int recordsCount,
                                        boolean showOnlyVacant,
                                        java.lang.String locale,
                                        java.lang.String userID,
                                        java.lang.String search,
                                        java.lang.String departmentID,
                                        java.lang.String filterDepartmentID,
                                        java.lang.String filterUserID)
        получение списка должностей url: /rest/api/userchooser/search_all_positions method : GET
        startRecord - по умолчанию 0
        recordsCount - по умолчанию 30
        locale - локаль
        departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
        search параметр текстового поиска
        showOnlyVacant - false по умолчанию, отображать только вакантные должности
        actorID пользователь от имени которого выполнять поиск
        filterDepartmentID идентификатор непосредственного родительского подразделения
        filterUserID идентификатор пользователя чьи должности необходимо показать
        Returns:
        массив найденных должностей поля возвращаемой сущности
        code код
        departmentName наименование департамента
        elementID идентификатор должности
        elementName наименование должности
        translation не используется
        type не используется
        customFields не используется

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getOftenPositions

        public Response getOftenPositions(int startRecord,
                                          int recordsCount,
                                          boolean showAll,
                                          boolean showOnlyVacant,
                                          java.lang.String locale,
                                          java.lang.String userID,
                                          java.lang.Integer operationType,
                                          java.lang.String search,
                                          java.lang.String departmentID,
                                          java.lang.String filterDepartmentID,
                                          java.lang.String filterUserID,
                                          java.util.List<java.lang.String> customFields)
        получение списка часто выбираемых должностей
        url: /rest/api/userchooser/getOftenChosenPositions
        method : GET
        startRecord - по умолчанию 0
        recordsCount - по умолчанию 30
        showAll - false по умолчанию; отображать все должности (false - отображать подчиненные должности)
        showOnlyVacant - false по умолчанию, отображать только вакантные должности
        locale - локаль
        userID пользователь от имени которого выполнять поиск
        operationType - тип операции для получения пользователей которые делегировали права пользователю (по ним определяется максимальный уровень иерархии верх который нужно отображать и подчиненные должности)
        search параметр текстового поиска
        departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
        filterDepartmentID идентификатор непосредственного родительского подразделения
        filterUserID идентификатор пользователя чьи должности необходимо показать
        customField не используется
        Returns:
        массив найденных должностей поля возвращаемой сущности
        code код
        departmentName наименование департамента
        elementID идентификатор должности
        elementName наименование должности
        translation не используется
        type не используется

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getDepartments

        public Response getDepartments(int pageNumber,
                                       int countInPart,
                                       java.lang.String departmentID,
                                       java.lang.String filterDepartmentID,
                                       java.lang.String filterChildDepartmentID,
                                       java.lang.String filterPositionID,
                                       java.lang.String search,
                                       boolean showChildDepartments,
                                       java.lang.String filterHrUser,
                                       java.lang.String filterUserID,
                                       java.lang.String locale)
        получение списка департаментов url: /rest/api/userchooser/search_dept method : GET Параметры:
        locale - локаль
        departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
        filterDepartmentID идентификатор непосредственного родительского подразделения
        filterChildDepartmentID идентификатор непосредственного родительского подразделения
        filterPositionID идентификатор непосредственного родительского подразделения
        search параметр текстового поиска
        Описание ответа:
        массив найденных должностей
        поля возвращаемой сущности
        departmentId -идентификатор департамента
        departmentName наименование
        hasChildren имеются ли дочерние подразделения
        parentName наименование родительского департамента

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
        Parameters:
        pageNumber - номер страницы результата (0 по умолчанию)
        countInPart - количество департаментов в ответе (30 по умолчанию)
        showChildDepartments - показывать ли дочерние подразделения
        filterHrUser - Фильтр ограничивает департаменты теми, к которым имеет доступ hr-пользователь
        filterUserID - идентификатор пользователя чьи должности необходимо показать
      • checkDepartments

        public Response checkDepartments(int pageNumber,
                                         int countInPart,
                                         java.lang.String departmentID,
                                         java.lang.String filterDepartmentID,
                                         java.lang.String filterChildDepartmentID,
                                         java.lang.String filterPositionID,
                                         java.lang.String search,
                                         boolean showChildDepartments,
                                         java.lang.String filterHrUser,
                                         java.util.List<java.lang.String> valuesToCheck,
                                         java.lang.String filterUserID,
                                         java.lang.String locale)
        проверка подходят ли переданные департаменты под указанные параметры поиска url: /rest/api/userchooser/checkDepartments method : GET
        startRecord - по умолчанию 0
        recordsCount - по умолчанию 30
        locale - локаль
        departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
        search параметр текстового поиска
        customFields не используется
        filterDepartmentID идентификатор непосредственного родительского подразделения
        filterChildDepartmentID идентификатор непосредственного родительского подразделения
        filterPositionID идентификатор непосредственного родительского подразделения
        filterUserID идентификатор пользователя чьи должности необходимо показать
        valuesToCheck проверяемые значения идентификаторов передается как valuesToCheck=identifier1&valuesToCheck=identifier2
        Returns:
        массив найденных департаментов поля возвращаемой сущности
        departmentId -идентификатор департамента
        departmentName наименование
        hasChildren имеются ли дочерние подразделения
        parentName наименование родительского департамента

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.logger

Class LoggerService

  • java.lang.Object
    • kz.arta.synergy.api.rest.logger.LoggerService


  • public class LoggerService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 26.07.13 Time: 17:40 To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      LoggerService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String addLog(java.lang.String providerID, int actionType, java.lang.String log)
      Метод добавляет запись в журнал логов системы

      URL rest/api/logger/add
      Method POST

      Все параметры запроса должны быть параметрами формы

      java.lang.String getHost() 
      java.lang.String getUserID() 
      java.lang.String log(LogDTO log) 
      java.lang.String start(java.util.HashMap<java.lang.String,java.lang.Object> options) 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • LoggerService

        public LoggerService()
    • Method Detail

      • addLog

        public java.lang.String addLog(java.lang.String providerID,
                                       int actionType,
                                       java.lang.String log)

        Метод добавляет запись в журнал логов системы


        URL rest/api/logger/add
        Method POST

        Все параметры запроса должны быть параметрами формы

        Parameters:
        providerID - идентификатор источника логов
        actionType - код действия
        log - текст лога
        Returns:
        json объект:
        errorCode код выполнения, 0 - успешно, иначе - произошла ошибка
        errorMessage сообщение о результате выполнения (в случае не успешного выполнения)
      • start

        public java.lang.String start(java.util.HashMap<java.lang.String,java.lang.Object> options)
      • log

        public java.lang.String log(LogDTO log)
      • getHost

        public java.lang.String getHost()
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.dictionary

Class DictionariesService

  • java.lang.Object
    • kz.arta.synergy.api.rest.dictionary.DictionariesService


  • public class DictionariesService
    extends java.lang.Object
    Created by: Abzal Kultayev Date: 21.06.16 Time: 12:45
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response getDictionariesList(boolean getHidden, java.lang.String locale)
      Получение списка справочников

      URL rest/api/dictionaries
      Method GET Метод принимает следующие входные параметры:

      Response getDictionaryInfo(java.lang.String code, boolean getColumns, boolean getItems, java.lang.String locale)
      Получение описания и/или записей справочника

      URL rest/api/dictionaries/{code}
      Method GET

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DictionariesService

        public DictionariesService()
    • Method Detail

      • getDictionariesList

        public Response getDictionariesList(boolean getHidden,
                                            java.lang.String locale)

        Получение списка справочников

        URL rest/api/dictionaries
        Method GET

        Метод принимает следующие входные параметры:

        Parameters:
        getHidden - возвращать ли скрытые справочники, true/false (не обяз., по умолчанию false)
        locale - код локали (не обяз., по умолчанию ru)
        Returns:
        Данные в JSON формате

        Пример возвращаемого массива:

                [
                    {
                    "id": "eb77639e-60b8-4a50-8327-0482063e8935",
                    "code": "resolution_work_types",
                    "name": "Типы работ по резолюции",
                    "comment": "Значения выпадающего списка типа работы при наложении резолюции"
                    },
                    {
                    "id": "467d3eac-252c-427e-bd27-ba8704587257",
                    "code": "calendar_types",
                    "name": "Назначения календаря",
                    "comment": "Статусы сотрудников"
                    },
                    {
                    "id": "7b953be8-bddb-4ce4-bbfd-ae9548f69c7f",
                    "code": "BookPointer",
                    "name": "Уровень проведения тренингов",
                    "comment": ""
                    },
                    {
                    "id": "a830ed90-1ef5-4829-b3a4-efa8d087ed6a",
                    "code": "BookPointer2",
                    "name": "Уровень корпоративного духа",
                    "comment": ""
                    },
                    {
                    "id": "9b077c41-4efa-48ce-8ce9-af2fe6145e96",
                    "code": "send_items",
                    "name": "Пункты меню отправки",
                    "comment": "Пункты меню отправки документа/работы"
                    },
                    {
                    "id": "f75e8f6a-7b5a-493b-946b-ac35a628624f",
                    "code": "Vid_otpuska",
                    "name": "Виды отпусков",
                    "comment": ""
                    },
                    {
                    "id": "dfb986ca-6dd2-415f-9304-bfab19d6d4af",
                    "code": "nazionalnost",
                    "name": "Национальности",
                    "comment": ""
                    },
                    {
                    "id": "a0b8ee66-2820-4fb7-991d-4723955ccef5",
                    "code": "action_progress",
                    "name": "Подписи прогресса поручений",
                    "comment": "Подписи прогресса поручений"
                    },
                    {
                    "id": "2d7729d7-1230-4c1c-a952-ebb4cf65278a",
                    "code": "resolution",
                    "name": "Тексты резолюций",
                    "comment": "Справочник стандартных текстов резолюций"
                    },
                    {
                    "id": "b08289f0-fd6b-4b3c-bc99-fae8d4296acb",
                    "code": "obrazovanie",
                    "name": "Образование",
                    "comment": ""
                    }
                ]
         
      • getDictionaryInfo

        public Response getDictionaryInfo(java.lang.String code,
                                          boolean getColumns,
                                          boolean getItems,
                                          java.lang.String locale)

        Получение описания и/или записей справочника

        URL rest/api/dictionaries/{code}
        Method GET

        Parameters:
        code - код справочника.
        getColumns - возвращать ли описание справочника, true/false (не обяз., по умолчанию true)
        getItems - возвращать ли записи справочника, true/false (не обяз., по умолчанию true)
        locale - код локали (не обяз., по умолчанию ru)
        Returns:
        Данные в JSON формате.

        Метод должен возвращать массив с параметрами:

        • id - идентификатор справочника
        • code - код справочника
        • name - имя справочника
        • comment - комментарий к справочнику
        • columns - список столбцов справочника (для getColumns = true)
        • items - список значений справочника (для getItems = true)

        Для каждого столбца справочника (columns) передается:

        • id - идентификатор столбца
        • code - код столбца
        • name - имя столбца
        • comment - комментарий столбца
        • translate - переводить ли значение столбца, true/false
        Примечание: Каждый столбец из columns определяется ключом, который соответствует значению кода столбца (поле code).

        Для каждой записи справочника (items) передаются значения кода столбца, а внутри каждого столбца - непосредственно значения записи

        • id - идентификатор значения
        • value - значение
        • translation - перевод значения согласно локали пользователя; может отсутствовать (соответствует значению null), тогда в качестве значения для данного столбца надо использовать значение поля value
        Примечание

        Каждая запись из items определяется ключом, который соответствует значению идентификатора значения (поле id)

        В свою очередь, внутри записи каждый вложенный массив определяется ключом, который соответствует значению кода столбца (поле code)

        Пример возвращаемого массива
                {
                    "id": "eb77639e-60b8-4a50-8327-0482063e8935",
                    "code": "send_items",
                    "name": "Пункты меню отправки",
                    "comment": "Пункты меню отправки документа/работы",
                    "columns": {
                        "item_number": {
                            "id": "e5d3ce83-25d1-46ae-94f9-c33930fc1565",
                            "code": "item_number",
                            "name": "Порядковый номер",
                            "comment": "Используется для задания порядка пунктов меню отправки",
                            "translate": false
                        },
                        "item_name": {
                            "id": "03e23318-71ec-4ced-a54c-73affaf43079",
                            "code": "item_name",
                            "name": "Название пункта меню отправки",
                            "comment": "Текст, который будет отображаться в соответствующем пункте меню",
                            "translate": true
                        },
                        "item_process": {
                            "id": "27f3090b-0a57-4c1f-8343-c56e8d39117d",
                            "code": "item_process",
                            "name": "Действие, которое осуществляет пункт",
                            "comment": "",
                            "translate": false
                        }
                    },
                    "items": {
                        "b7c8861f-37df-4fe4-9f67-4f1cb243b008": {
                            "item_number": {
                                "id": "b7c8861f-37df-4fe4-9f67-4f1cb243b008",
                                "value": "3",
                                "translation": null
                            },
                            "item_name": {
                                "id": "b7c8861f-37df-4fe4-9f67-4f1cb243b008",
                                "value": "Перепоручить",
                                "translation": "Перепоручить"
                            },
                            "item_process": {
                                "id": "b7c8861f-37df-4fe4-9f67-4f1cb243b008",
                                "value": "assignment",
                                "translation": null
                            }
                        },
                        "80c92a72-988f-422a-92b9-70cd37f15dbc": {
                            "item_number": {
                                "id": "80c92a72-988f-422a-92b9-70cd37f15dbc",
                                "value": "6",
                                "translation": null
                            },
                            "item_name": {
                                "id": "80c92a72-988f-422a-92b9-70cd37f15dbc",
                                "value": "На утверждение",
                                "translation": "На утверждение"
                            },
                            "item_process": {
                                "id": "80c92a72-988f-422a-92b9-70cd37f15dbc",
                                "value": "approval",
                                "translation": null
                            }
                        }
                    }
                }
         

        Альтернативный поток событий. Передан некорректный параметр code: справочника с таким кодом не существует. Сервер возвращает следующий ответ (с HTTP-кодом 200):

                {
                    "errorCode": "13",
                    "errorMessage": "Справочник с кодом %значение% не найден"
                }
         
kz.arta.synergy.api.rest.dictionary

Class DictionaryService

  • java.lang.Object
    • kz.arta.synergy.api.rest.dictionary.DictionaryService


  • public class DictionaryService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 31.10.13 Time: 14:34 To change this template use File | Settings | File Templates.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String addRecord(DictionaryRecord record)
      Добавляет запись справочника

      URL rest/api/dictionary/record/add
      Method POST

      Вызывать метод можно только от имени пользователя с ролью "Методолог"

      "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате { "dictCode": "apitest", "itemID": null, "columns": [ { "code": "number", "value": "42", "valueKZ": null, "valueRU": null, "valueEN": null }, { "code": "field_name", "value": "Поле с переводами", "valueKZ": "казахский", "valueRU": "русский", "valueEN": "английский" }, { "code": "field_desc", "value": "Тест переводов", "valueKZ": null, "valueRU": null, "valueEN": null } ] } , где
      dictCode - код справочника
      itemID - идентификатор записи справочника (в данном методе не используется)
      columns - список столбцов справочника, где code - код столбца справочника value - значение столбца справочника valueKZ, valueRU, valueEN - локализованные значения столбца справочника

      java.lang.String editRecord(DictionaryRecord record)
      Изменяет запись справочника

      URL rest/api/dictionary/record/edit
      Method POST

      Вызывать метод можно только от имени пользователя с ролью "Методолог"

      "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате { "dictCode": "apitest", "itemID": "195af529-35ee-4bd7-a2b8-bcc04c731283", "columns": [ { "code": "number", "value": "42", "valueKZ": null, "valueRU": null, "valueEN": null }, { "code": "field_name", "value": "Поле с переводами", "valueKZ": "казахский", "valueRU": "русский", "valueEN": "английский" }, { "code": "field_desc", "value": "Тест переводов", "valueKZ": null, "valueRU": null, "valueEN": null } ] } , где
      dictCode - код справочника
      itemID - идентификатор редактируемой записи справочника
      columns - список столбцов справочника, где code - код столбца справочника value - значение столбца справочника valueKZ, valueRU, valueEN - локализованные значения столбца справочника

      Response editRecords(DictionaryRecord[] records)
      Изменяет запись справочника

      URL rest/api/dictionary/record/edit
      Method POST

      Вызывать метод можно только от имени пользователя с ролью "Методолог"

      "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате { "dictCode": "apitest", "itemID": "195af529-35ee-4bd7-a2b8-bcc04c731283", "columns": [ { "code": "number", "value": "42", "valueKZ": null, "valueRU": null, "valueEN": null }, { "code": "field_name", "value": "Поле с переводами", "valueKZ": "казахский", "valueRU": "русский", "valueEN": "английский" }, { "code": "field_desc", "value": "Тест переводов", "valueKZ": null, "valueRU": null, "valueEN": null } ] } , где
      dictCode - код справочника
      itemID - идентификатор редактируемой записи справочника
      columns - список столбцов справочника, где code - код столбца справочника value - значение столбца справочника valueKZ, valueRU, valueEN - локализованные значения столбца справочника

      java.util.Collection<DictionaryItem> findDictionaryItems(java.lang.String organizationRecordIdColumnId, java.lang.String orgID) 
      java.util.Dictionary getDictionaryByCode(java.lang.String fieldsDictionaryCode, boolean loadItems) 
      java.lang.String getDictionaryValues(java.lang.String locale, java.lang.String dictionaryCode)
      Возвращает информацию о справочнике по его коду: столбцы, значения

      URL rest/api/dictionary/get_by_code
      Method GET


      Метод возвращает json с полями:
      dictionary_code - код справочника
      dictionaryID - идентификатор справочника
      columns - список столбцов справочника
      items - список значений справочника

      Для каждого столбца (columns) передается:
      columnID идентификатор столбца
      code код столбца

      Для каждого значения (items) передаются:
      itemID - идентификатор значения
      values - список значений каждого столбца.

      java.lang.String getHost() 
      java.lang.String getUserID() 
      java.lang.String removeRecord(DictionaryRecord record)
      Удаляет запись справочника

      URL rest/api/dictionary/record/remove
      Method POST

      Вызывать метод можно только от имени пользователя с ролью "Методолог"

      "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате { "dictCode": "apitest", "itemID": "195af529-35ee-4bd7-a2b8-bcc04c731283", } , где
      dictCode - код справочника
      itemID - идентификатор удаляемой записи справочника

      java.lang.String saveItem(DictionaryItem item) 
      java.lang.String saveTranslations(java.lang.String id, java.lang.String nameId, java.lang.String mapJS) 
      Response updateDictionary(DictionaryDefinitionJson json) 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DictionaryService

        public DictionaryService()
    • Method Detail

      • getDictionaryValues

        public java.lang.String getDictionaryValues(java.lang.String locale,
                                                    java.lang.String dictionaryCode)

        Возвращает информацию о справочнике по его коду: столбцы, значения

        URL rest/api/dictionary/get_by_code
        Method GET


        Метод возвращает json с полями:
        dictionary_code - код справочника
        dictionaryID - идентификатор справочника
        columns - список столбцов справочника
        items - список значений справочника

        Для каждого столбца (columns) передается:
        columnID идентификатор столбца
        code код столбца

        Для каждого значения (items) передаются:
        itemID - идентификатор значения
        values - список значений каждого столбца. Для каждого значения передаются:
        columnID - идентификатор столбца
        value - значение
        translation - перевод значения согласно локали пользователя (перевод может отсутствовать. Если перевод присутствует, значит в качестве значения для данного столбца надо брать его, если отсутствует - значение поля value)


        Рассмотрим пример справочника форм завершения с кодом work_completion:

         {"dictionary_code" : "work_completion", "dictionaryID": "0b247762-f049-49e7-93e5-fa7c93a779d7", "columns": [
         {
         "columnID": "27e8d020-5db5-4b05-a3e2-ba364453a940",
         "code": "form_type"
         },
         {
         "columnID": "5b3ab9bc-ea13-4fce-a37c-a83298dee427",
         "code": "form_type_name"
         },
         {
         "columnID": "9f7778ba-c3b9-4653-ba4e-560ddb800ded",
         "code": "is_result_free"
         },
         {
         "columnID": "3b359c6b-5f17-4324-a6c2-3a3bc2e400b6",
         "code": "additional_params"
         }
         ], "items": [
         {
         "itemID": "36826cf9-5da9-49bf-9b79-3e3f9c0873a1",
         "values": [
         {
         "value": "child=true",
         "columnID": "3b359c6b-5f17-4324-a6c2-3a3bc2e400b6"
         },
         {
         "value": "0",
         "columnID": "9f7778ba-c3b9-4653-ba4e-560ddb800ded"
         },
         {
         "value": "2",
         "columnID": "27e8d020-5db5-4b05-a3e2-ba364453a940"
         },
         {
         "value": "Документ",
         "columnID": "5b3ab9bc-ea13-4fce-a37c-a83298dee427" ,
         "translation": "Документ"
         }
         ]
         },
         {
         "itemID": "55dad228-2653-47c2-898a-ad263c2e7def",
         "values": [
         {
         "value": "0",
         "columnID": "9f7778ba-c3b9-4653-ba4e-560ddb800ded"
         },
         {
         "value": "0",
         "columnID": "27e8d020-5db5-4b05-a3e2-ba364453a940"
         },
         {
         "value": "Комментарий",
         "columnID": "5b3ab9bc-ea13-4fce-a37c-a83298dee427" ,
         "translation": "Комментарий"
         }
         ]
         },
         {
         "itemID": "5a753b31-db44-4e56-b922-fabeb29502ff",
         "values": [
         {
         "value": "1",
         "columnID": "27e8d020-5db5-4b05-a3e2-ba364453a940"
         },
         {
         "value": "Файл",
         "columnID": "5b3ab9bc-ea13-4fce-a37c-a83298dee427" ,
         "translation": "Файл"
         }
         ]
         }
         ]}
         

        В табличном виде значения данного справочника можно отобразить следующим образом:
             ____________________________________________________________________________________________________________________________
             |form_type       |form_type_name         | is_result_free        |additional_params  | Идентификатор значения              |
             |2               |Документ               |0                      |child=true         |36826cf9-5da9-49bf-9b79-3e3f9c0873a1 |
             |0               |Комментарий            |0                      |                   |55dad228-2653-47c2-898a-ad263c2e7def |
             |1               |Файл                   |                       |                   |5a753b31-db44-4e56-b922-fabeb29502ff |
             ____________________________________________________________________________________________________________________________
         


        Parameters:
        locale - локаль пользователя
        dictionaryCode - код справочника
        Returns:
        json с полями описанными выше
      • addRecord

        public java.lang.String addRecord(DictionaryRecord record)
        Добавляет запись справочника

        URL rest/api/dictionary/record/add
        Method POST

        Вызывать метод можно только от имени пользователя с ролью "Методолог"

        "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате

         {
         "dictCode": "apitest",
         "itemID": null,
         "columns": [
          {
              "code": "number",
              "value": "42",
              "valueKZ": null,
              "valueRU": null,
              "valueEN": null
          },
          {
              "code": "field_name",
              "value": "Поле с переводами",
              "valueKZ": "казахский",
              "valueRU": "русский",
              "valueEN": "английский"
          },
          {
              "code": "field_desc",
              "value": "Тест переводов",
              "valueKZ": null,
              "valueRU": null,
              "valueEN": null
          }
         ]
         }
         
        , где
        dictCode - код справочника
        itemID - идентификатор записи справочника (в данном методе не используется)
        columns - список столбцов справочника, где
            code - код столбца справочника
            value - значение столбца справочника
            valueKZ, valueRU, valueEN - локализованные значения столбца справочника

        Parameters:
        record - запись справочника в формате JSON
        Returns:
        JSON с результатом выполнения
      • editRecord

        public java.lang.String editRecord(DictionaryRecord record)
        Изменяет запись справочника

        URL rest/api/dictionary/record/edit
        Method POST

        Вызывать метод можно только от имени пользователя с ролью "Методолог"

        "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате

         {
         "dictCode": "apitest",
         "itemID": "195af529-35ee-4bd7-a2b8-bcc04c731283",
         "columns": [
          {
              "code": "number",
              "value": "42",
              "valueKZ": null,
              "valueRU": null,
              "valueEN": null
          },
          {
              "code": "field_name",
              "value": "Поле с переводами",
              "valueKZ": "казахский",
              "valueRU": "русский",
              "valueEN": "английский"
          },
          {
              "code": "field_desc",
              "value": "Тест переводов",
              "valueKZ": null,
              "valueRU": null,
              "valueEN": null
          }
         ]
         }
         
        , где
        dictCode - код справочника
        itemID - идентификатор редактируемой записи справочника
        columns - список столбцов справочника, где
            code - код столбца справочника
            value - значение столбца справочника
            valueKZ, valueRU, valueEN - локализованные значения столбца справочника

        Parameters:
        record - запись справочника в формате JSON
        Returns:
        JSON с результатом выполнения
      • editRecords

        public Response editRecords(DictionaryRecord[] records)
        Изменяет запись справочника

        URL rest/api/dictionary/record/edit
        Method POST

        Вызывать метод можно только от имени пользователя с ролью "Методолог"

        "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате

         {
         "dictCode": "apitest",
         "itemID": "195af529-35ee-4bd7-a2b8-bcc04c731283",
         "columns": [
          {
              "code": "number",
              "value": "42",
              "valueKZ": null,
              "valueRU": null,
              "valueEN": null
          },
          {
              "code": "field_name",
              "value": "Поле с переводами",
              "valueKZ": "казахский",
              "valueRU": "русский",
              "valueEN": "английский"
          },
          {
              "code": "field_desc",
              "value": "Тест переводов",
              "valueKZ": null,
              "valueRU": null,
              "valueEN": null
          }
         ]
         }
         
        , где
        dictCode - код справочника
        itemID - идентификатор редактируемой записи справочника
        columns - список столбцов справочника, где
            code - код столбца справочника
            value - значение столбца справочника
            valueKZ, valueRU, valueEN - локализованные значения столбца справочника

        Parameters:
        record - запись справочника в формате JSON
        Returns:
        JSON с результатом выполнения
      • removeRecord

        public java.lang.String removeRecord(DictionaryRecord record)
        Удаляет запись справочника

        URL rest/api/dictionary/record/remove
        Method POST

        Вызывать метод можно только от имени пользователя с ролью "Методолог"

        "Content-type" запроса должен быть "application/json; charset=utf-8" и в теле запроса JSON в следующем формате

         {
         "dictCode": "apitest",
         "itemID": "195af529-35ee-4bd7-a2b8-bcc04c731283",
         }
         
        , где
        dictCode - код справочника
        itemID - идентификатор удаляемой записи справочника

        Parameters:
        record - запись справочника в формате JSON
        Returns:
        JSON с результатом выполнения
      • getHost

        public java.lang.String getHost()
      • getUserID

        public java.lang.String getUserID()
      • findDictionaryItems

        public java.util.Collection<DictionaryItem> findDictionaryItems(java.lang.String organizationRecordIdColumnId,
                                                                        java.lang.String orgID)
      • saveItem

        public java.lang.String saveItem(DictionaryItem item)
      • saveTranslations

        public java.lang.String saveTranslations(java.lang.String id,
                                                 java.lang.String nameId,
                                                 java.lang.String mapJS)
      • getDictionaryByCode

        public java.util.Dictionary getDictionaryByCode(java.lang.String fieldsDictionaryCode,
                                                        boolean loadItems)
kz.arta.synergy.api.rest.ab

Class AddressBookService

  • java.lang.Object
    • kz.arta.synergy.api.rest.ab.AddressBookService


  • public class AddressBookService
    extends java.lang.Object
    User: Mikhail Milyutin Date: 21.10.14. Time: 13:39.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String getAddressBookItem(java.lang.String itemID, java.lang.String locale)
      Получение данных об объекте из адресной книги по id
      Тип: GET
      URL: rest/api/addressbook/get_addressbook_item
      Response getAddressBookItems(int countInPart, int pageNumber, java.lang.String search, java.lang.String startLetter, int itemType, java.lang.String userID, java.lang.String locale) 
      java.lang.String getUserID() 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AddressBookService

        public AddressBookService()
    • Method Detail

      • getAddressBookItem

        public java.lang.String getAddressBookItem(java.lang.String itemID,
                                                   java.lang.String locale)
        Получение данных об объекте из адресной книги по id
        Тип: GET
        URL: rest/api/addressbook/get_addressbook_item
        Parameters:
        itemID - - id объекта
        locale - - локаль
        Returns:
        - json с данными


        Пример персона
        {
        "type": "person",
        "lastName": "Иванов",
        "firstName": "Иван",
        "patronymic": "Иванович",
        "birthDate": "1993-10-12",
        "isPublic": "false",
        "photoUrl": "contact_photo?itemID=6de27bc6-1da0-4fec-b03f-5d917c3f3413",
        "note": "Пример примечания",
        "tags": "Ключевое слово1, Ключевое слово2",
        "formUUID": "null",
        "formCode": "",
        "phone": [
        "230101"
        ],
        "im": [
        "i.ivanov@jabber.arta.kz"
        ],
        "mail": [
        "ivanov_ivan@ivan.ru"
        ],
        "mobile": [
        "87022301010",
        "87012301010"
        ],
        "url": [
        "http://ww.kz"
        ]
        }
        Поле photoUrl - относительная ссылка на фото, добавляется к url, пример: http://127.0.0.1:8080/Synergy/contact_photo?itemID=6de27bc6-1da0-4fec-b03f-5d917c3f3413

      • getAddressBookItems

        public Response getAddressBookItems(int countInPart,
                                            int pageNumber,
                                            java.lang.String search,
                                            java.lang.String startLetter,
                                            int itemType,
                                            java.lang.String userID,
                                            java.lang.String locale)
        Parameters:
        countInPart - сколько элементов в одной странице, по умолчанию 15
        pageNumber - номер страницы, по умолчанию 0
        search - текст поска
        startLetter - точно не знаю
        itemType - 0 искать по пользователям, 1 искать по организациям по умолчанию 0.
        userID - пользователь, чья адресная книга просматривается
        locale - локаль
        Returns:
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.app

Class ApplicationExportServlet

  • java.lang.Object
    • HttpServlet
      • kz.arta.synergy.api.rest.app.ApplicationExportServlet


  • public class ApplicationExportServlet
    extends HttpServlet
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected void doGet(HttpServletRequest req, HttpServletResponse res) 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ApplicationExportServlet

        public ApplicationExportServlet()
    • Method Detail

      • doGet

        protected void doGet(HttpServletRequest req,
                             HttpServletResponse res)
                      throws ServletException,
                             java.io.IOException
        Throws:
        ServletException
        java.io.IOException
kz.arta.synergy.api.rest.app

Class ApplicationImportServlet

  • java.lang.Object
    • HttpServlet
      • kz.arta.synergy.api.rest.app.ApplicationImportServlet


  • public class ApplicationImportServlet
    extends HttpServlet
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected void doPost(HttpServletRequest req, HttpServletResponse res) 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ApplicationImportServlet

        public ApplicationImportServlet()
    • Method Detail

      • doPost

        protected void doPost(HttpServletRequest req,
                              HttpServletResponse res)
                       throws ServletException,
                              java.io.IOException
        Throws:
        ServletException
        java.io.IOException
kz.arta.synergy.api.rest.admin

Class FormIndexService

  • java.lang.Object
    • kz.arta.synergy.api.rest.admin.FormIndexService


  • public class FormIndexService
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor and Description
      FormIndexService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response getMaxVersion(java.lang.String locale, boolean continueLast, long sleepTime)
      Начинает индекс форм URL: /rest/api/admin/forms/index Тип: POST Данный метод доступен только пользователям с правами суперадминистратора.
      Response getState(java.lang.String locale, boolean getMessages)
      Статус текущего индексирования URL: /rest/api/admin/forms/index Тип: GET Данный метод доступен только пользователям с правами суперадминистратора.
      java.lang.String getUserID() 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • FormIndexService

        public FormIndexService()
    • Method Detail

      • getMaxVersion

        public Response getMaxVersion(java.lang.String locale,
                                      boolean continueLast,
                                      long sleepTime)

        Начинает индекс форм

        URL: /rest/api/admin/forms/index

        Тип: POST

        Данный метод доступен только пользователям с правами суперадминистратора.

        continue(true, false) - продолжить предыдущий индекс, по умолчанию false

        interval(число) - время между индексом на отдельные данные форм

        Returns:
        Возвращает 200, если индексирование началось. Json объект в противном случае: { "errorCode": 13, "errorMessage":"Индексирование уже начато" }
      • getState

        public Response getState(java.lang.String locale,
                                 boolean getMessages)

        Статус текущего индексирования

        URL: /rest/api/admin/forms/index

        Тип: GET

        Данный метод доступен только пользователям с правами суперадминистратора.

        messages(true, false) - возвращать ли сообщения индексирования

        Returns:
        Возвращает 200, если индексирование началось. Json объект в противном случае. { "running": true, "messages": ["first messages", "second message"] }
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.admin

Class DBService

  • java.lang.Object
    • kz.arta.synergy.api.rest.admin.DBService


  • public class DBService
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor and Description
      DBService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String getDbVersion()

      Текущая версия базы данных

      URL: rest/api/admin/db/current_version

      Type: GET

      java.lang.String getMaxVersion()

      Максимальная версия базы данных, на которую можно обновиться

      URL: rest/api/admin/db/max_version

      Type: GET

      java.lang.String getMessages()

      Сообщении об выполнения обновления базы данных.

      java.lang.String getUserID() 
      java.lang.String onDbUpdated()

      Обнуляет статическую карту с правилами, для того чтобы при последующем использовании она была перезагружена.

      java.lang.String startUpdate()

      Запуск обновления базы данных.

      java.lang.String updatingIsCompleted()

      Проверка статуса выполнения обновление базы.

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DBService

        public DBService()
    • Method Detail

      • getMaxVersion

        public java.lang.String getMaxVersion()

        Максимальная версия базы данных, на которую можно обновиться

        URL: rest/api/admin/db/max_version

        Type: GET

        Returns:
        json данные об статусе выполнения запроса и с версией базы данных
        Пример возвращаемых данных метода, при успешном выполнении
        {
        "errorCode": 0,
        "errorMessage": "Success",
        "data": "270",
        }


        Пример возвращаемых данных метода, в случае ошибки
        {
        "errorCode": 13,
        "errorMessage": "Ошибка исполнения",
        "data": null,
        }
      • getDbVersion

        public java.lang.String getDbVersion()

        Текущая версия базы данных

        URL: rest/api/admin/db/current_version

        Type: GET

        Returns:
        json данные об статусе выполнения запроса и с текущей версией базы данных
        Пример возвращаемых данных метода, при успешном выполнении
        {
        "errorCode": 0,
        "errorMessage": "Success",
        "data": "263",
        }


        Пример возвращаемых данных метода, в случае ошибки
        {
        "errorCode": 13,
        "errorMessage": "Ошибка исполнения",
        "data": null,
        }
      • startUpdate

        public java.lang.String startUpdate()

        Запуск обновления базы данных. Статус выполнения обновления можно проверить с помощью методов /rest/api/admin/db/messages или /rest/api/admin/db/updating_is_completed

        Процесс обновления базы данных:

        1. /rest/api/admin/db/current_version - получаем текущую версию базы
        2. /rest/api/admin/db/max_version - получаем доступную версию
        3. Сравниваем полученные версии, если текущая версия базы меньше чем доступное, то запускаем обновление /rest/api/admin/db/start_update
        4. Периодический проверяем статус обновления /rest/api/admin/db/updating_is_completed
        5. После завершения обновления выполняем метод /rest/api/admin/db/on_db_updated
        Returns:
        json данные об статусе выполнения запроса
        Пример возвращаемых данных метода, при успешном выполнении
        {
        "errorCode": 0,
        "errorMessage": "Success"
        }


        Пример возвращаемых данных метода, в случае ошибки
        {
        "errorCode": 13,
        "errorMessage": "Ошибка исполнения"
        }
        See Also:

        URL: rest/api/admin/db/start_update

        Type: GET

      • getMessages

        public java.lang.String getMessages()

        Сообщении об выполнения обновления базы данных. Если в сообщениях присутствует сообщение с типом "-1" ("type": -1) то обновление завершено.

        URL: rest/api/admin/db/messages

        Type: GET

        Returns:
        json данные об статусе выполнения запроса и с версией базы данных
        Пример возвращаемых данных метода
        {
        "errorCode": 0,
        "errorMessage": "Success",
        "data": [{
        "message": "Creating indexes",
        "type": 0,
        "date": 1416196612376
        }, {
        "message": "reports indexes created",
        "type": 0,
        "date": 1416196612378
        }, {
        "message": "Обновление завершено",
        "type": -1,
        "date": 1416196612378
        }]
        }
      • updatingIsCompleted

        public java.lang.String updatingIsCompleted()

        Проверка статуса выполнения обновление базы.

        URL: rest/api/admin/db/updating_is_completed

        Type: GET

        Returns:
        json данные об выполнении обновления базы
        Пример возвращаемых данных метода, если обновление уже завершено
        {
        "errorCode": 0,
        "errorMessage": "Success",
        "data": true
        }


        Пример возвращаемых данных метода, если обновление еще не завершено
        {
        "errorCode": 0,
        "errorMessage": "Success",
        "data": false
        }
      • onDbUpdated

        public java.lang.String onDbUpdated()

        Обнуляет статическую карту с правилами, для того чтобы при последующем использовании она была перезагружена. Вызывается после обновления базы.

        URL: rest/api/admin/db/on_db_updated

        Type: GET

        Returns:
        json данные об статусе выполнения запроса и с версией базы данных
        Пример возвращаемых данных метода, при успешном выполнении
        {
        "errorCode": 0,
        "errorMessage": "Success"
        }


        Пример возвращаемых данных метода, в случае ошибки
        {
        "errorCode": 13,
        "errorMessage": "Ошибка исполнения"
        }
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.admin

Class UsersService

  • java.lang.Object
    • kz.arta.synergy.api.rest.admin.UsersService


  • public class UsersService
    extends java.lang.Object
    User: vsl Date: 3/25/16 Time: 9:04 AM апи для управления сессиями пользователя
    • Constructor Summary

      Constructors 
      Constructor and Description
      UsersService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String getUserID() 
      Response listLoggedInUsers(java.lang.String showIdsStr) 
      Response logout(java.util.List<java.lang.String> users) 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • UsersService

        public UsersService()
    • Method Detail

      • logout

        public Response logout(java.util.List<java.lang.String> users)
      • listLoggedInUsers

        public Response listLoggedInUsers(java.lang.String showIdsStr)
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.admin

Class ActionsIndexService

  • java.lang.Object
    • kz.arta.synergy.api.rest.admin.ActionsIndexService


  • public class ActionsIndexService
    extends java.lang.Object
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response getMaxVersion(java.lang.String locale, boolean continueLast, long sleepTime)
      Начинает индекс работ URL: /rest/api/admin/actions/index Тип: POST Данный метод доступен только пользователям с правами суперадминистратора.
      Response getState(java.lang.String locale, boolean getMessages)
      Статус текущего индексирования URL: /rest/api/admin/actions/index Тип: GET Данный метод доступен только пользователям с правами суперадминистратора.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ActionsIndexService

        public ActionsIndexService()
    • Method Detail

      • getMaxVersion

        public Response getMaxVersion(java.lang.String locale,
                                      boolean continueLast,
                                      long sleepTime)

        Начинает индекс работ

        URL: /rest/api/admin/actions/index

        Тип: POST

        Данный метод доступен только пользователям с правами суперадминистратора.

        continue(true, false) - продолжить предыдущий индекс, по умолчанию false

        interval(число) - время между индексом на отдельные данные форм

        Returns:
        Возвращает 200, если индексирование началось. Json объект в противном случае: { "errorCode": 13, "errorMessage":"Индексирование уже начато" }
      • getState

        public Response getState(java.lang.String locale,
                                 boolean getMessages)

        Статус текущего индексирования

        URL: /rest/api/admin/actions/index

        Тип: GET

        Данный метод доступен только пользователям с правами суперадминистратора.

        messages(true, false) - возвращать ли сообщения индексирования

        Returns:
        Возвращает 200, если индексирование началось. Json объект в противном случае. { "running": true, "messages": ["first messages", "second message"] }
kz.arta.synergy.api.rest.admin

Class DocumentIndexService

  • java.lang.Object
    • kz.arta.synergy.api.rest.admin.DocumentIndexService


  • public class DocumentIndexService
    extends java.lang.Object
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response getMaxVersion(java.lang.String locale, boolean continueLast, long sleepTime)
      Начинает индекс документов URL: /rest/api/admin/docs/index Тип: POST Данный метод доступен только пользователям с правами суперадминистратора.
      Response getState(java.lang.String locale, boolean getMessages)
      Статус текущего индексирования URL: /rest/api/admin/docs/index Тип: GET Данный метод доступен только пользователям с правами суперадминистратора.
      java.lang.String getUserID() 
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DocumentIndexService

        public DocumentIndexService()
    • Method Detail

      • getMaxVersion

        public Response getMaxVersion(java.lang.String locale,
                                      boolean continueLast,
                                      long sleepTime)

        Начинает индекс документов

        URL: /rest/api/admin/docs/index

        Тип: POST

        Данный метод доступен только пользователям с правами суперадминистратора.

        continue(true, false) - продолжить предыдущий индекс, по умолчанию false

        interval(число) - время между индексом на отдельные данные форм

        Returns:
        Возвращает 200, если индексирование началось. Json объект в противном случае: { "errorCode": 13, "errorMessage":"Индексирование уже начато" }
      • getState

        public Response getState(java.lang.String locale,
                                 boolean getMessages)

        Статус текущего индексирования

        URL: /rest/api/admin/docs/index

        Тип: GET

        Данный метод доступен только пользователям с правами суперадминистратора.

        messages(true, false) - возвращать ли сообщения индексирования

        Returns:
        Возвращает 200, если индексирование началось. Json объект в противном случае. { "running": true, "messages": ["first messages", "second message"] }
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.api.rest.events

Class EventsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.events.EventsService


  • public class EventsService
    extends java.lang.Object
    Created by vitaliy.zaretskiy on 12.12.14.
    • Constructor Summary

      Constructors 
      Constructor and Description
      EventsService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String createEvent(java.lang.String eventName, java.lang.String eventMsg)
      Метод добавляет событие

      URL rest/api/events/create
      Method POST

      Все параметры запроса должны быть параметрами формы

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • EventsService

        public EventsService()
    • Method Detail

      • createEvent

        public java.lang.String createEvent(java.lang.String eventName,
                                            java.lang.String eventMsg)

        Метод добавляет событие


        URL rest/api/events/create
        Method POST

        Все параметры запроса должны быть параметрами формы

        Parameters:
        eventName - название события
        eventMsg - набор параметров события
        Returns:
        json объект:
        errorCode код выполнения, 0 - успешно, иначе - произошла ошибка
        errorMessage сообщение о результате выполнения (в случае не успешного выполнения)
kz.arta.synergy.api.rest.works

Class WorkFlowService

  • java.lang.Object
    • kz.arta.synergy.api.rest.works.WorkFlowService


  • public class WorkFlowService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 5/24/13 Time: 1:05 PM To change this template use File | Settings | File Templates.
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static java.lang.String DOCUMENT
      Комментарии для документа
      static java.lang.String PERSONAL
      Личные комментарии
      static java.lang.String WORK
      Комментарии для работы
    • Constructor Summary

      Constructors 
      Constructor and Description
      WorkFlowService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods Deprecated Methods 
      Modifier and Type Method and Description
      Response acceptWorkResult(java.lang.String workID, java.lang.String resultID, java.lang.String locale)
      Метод подтверждает результат работы

      URL rest/api/workflow/work/accept_result
      Method GET

      java.lang.String addAttachment(java.lang.String workID, MultipartFormDataInput input, java.lang.String path, java.lang.String locale)
      Deprecated. 
      используйте StorageService#startUploadFile и createAttachment
      java.lang.String addComment(java.lang.String workID, java.lang.String commentID, java.lang.String comment, java.lang.String type, java.lang.String locale)
      Добавляет/изменяет комментарий к работе

      URL rest/api/workflow/work/{workID}/comments/save
      Method POST

      java.lang.String createAttachment(java.lang.String workID, java.lang.String path, java.lang.String fileName, java.lang.String filePath, java.lang.String locale)
      Метод добавляет вложение к работе из временного файла, загруженного на сервер с помощью API хранилища

      URL work/{workID}/attachment/create
      Method POST

      Response createWork(java.lang.String name, java.lang.String startDate, java.lang.String finishDate, java.lang.String userID, java.lang.String authorID, java.util.List<java.lang.String> resUserID, java.lang.String priority, java.lang.String completionFormID, java.lang.String completionFormCode, boolean force, java.lang.String moduleID, java.lang.String comment, java.lang.String repeat, java.util.HashSet<java.lang.String> path, java.lang.String locale)

      Создает новую работу и возвращает полную информацию о ней

      URL rest/api/workflow/work/create
      POST POST

      Обязательные для создания работы поля, в списке ниже отмечены *

      java.lang.String deleteAttachment(java.lang.String nodeUUID, java.lang.String locale)

      Удаляет файл вложений к работе

      URL rest/api/workflow/work/remove_file
      Method GET

      java.lang.String deleteComment(java.lang.String commentID, java.lang.String locale)
      Удаляет комментарий

      URL rest/api/workflow/work/comments/remove
      Method GET

      Пример удаления комментария


      java.lang.String deleteWork(java.lang.String locale, java.lang.String workID)

      Удаляет работу

      URL rest/api/workflow/work/delete
      GET

      Response dismissTimer(java.lang.String id)
      Метод API для прерывания таймера URL: rest/api/workflow/dismiss_timer
      Method POST
      Метод принимает следующие входные параметры:

      id - ид таймера В случае успешного выполнения json со следующими полями: errorCode = 0 errorMessage = Таймер прерван в случае ошибки вернет json со следующими полями errorCode = код ошибки errorMessage = сообщение Пример возвращаемого json-объекта при успешном выполнении метода: { "errorCode": 0, "errorMessage": "Таймер прерван" }
      Пример возвращаемого json-объекта при ошибке: { "errorCode": 0, "errorMessage": "Таймер прерван" }
      { "errorCode": 3, "errorMessage": "Не передан либо передан некорректный параметр id" }
      { "errorCode": 2, "errorMessage": "Пользователь не авторизован, или у пользователя недостаточно прав для изменения." }
      { "errorCode": 13, "errorMessage": "Таймер с кодом %значение% не найден. " }
      java.lang.String doCreateAttachment(java.lang.String workID, java.lang.String path, java.lang.String fileName, java.lang.String filePath, java.lang.String locale, int successResult, java.lang.String successMessage) 
      Response finishProcess(java.lang.String procInstID, java.lang.String signal, java.lang.String comment, java.lang.String rawdata, java.lang.String signdata, java.lang.String certificate, java.lang.String certID, boolean addSignature, java.lang.String locale)
      Метод завершает процесс согласования/утверждения/ознакомления

      URL rest/api/workflow/finish_process
      Method POST

      java.lang.String getAttachments(java.lang.String workID, int count, boolean getCounters, java.lang.String locale)

      Возвращает отсортированный в обратном порядке по дате добавления список файлов работы (из вложений и прочих)

      URL rest/api/workflow/work/{workID}/last_attachments
      Method GET



      Возвращает информацию о вложениях как список json.

      java.lang.String getComments(java.lang.String workID, int start, int count, boolean getCounters, java.lang.String type, java.lang.String locale)
      Возвращает комментарии к работе отсортированные в обратном порядке по дате добавления

      URL rest/api/workflow/work/{workID}/comments
      Method GET

      Возвращает информацию о комментариях как список json
      Поля одного комментария

      commentID - uuid комментария
      comment - текст комментария
      author - автор
      author.userID - uuid автора
      author.name - имя автора же
      created - дата создания
      comment_icon_type - тип иконки комментария
      created_label - время от даты создания либо время создания
      type - тип, константы в arta.synergy.web.common.client.constants.CommentType
      is_editable - возможно ли редактирование данного комментария
      is_deletable - возможно ли удаление данного комментария

      Пример получения последних трех комментариев
      http://хост:порт/Synergy/rest/api/workflow/work/uuid_работы/comments?

      java.lang.String getCounters()
      Метод возвращает информацию о счетчиках работ

      URL rest/api/workflow/get_counters
      Method GET

      Метод список элементов json следующего формата:
      key - идентификатор фильтра,
      value - значение фильтра
      Идентификатор фильтра строится по следующему правилу
      для общего количества работ в фильтре: {тип фильтра}_{uuid фильтра}_{uuid объекта}
      для новых работ в фильтре: {тип фильтра}_{uuid фильтра}_{uuid объекта}_
      Если для данного фильтра uuid фильтра или uuid объекта отсутствуют, то вместо них подставляется null

      Примеры

      Идентификатор для фильтра "На исполнении" OWN_WORKS_null_null - общее количество работ и OWN_WORKS_null_null_ - количество новых работ
      Если в списке будет возвращено
      { "key": "OWN_WORKS_null_null", "value": "198"}, { "key": "OWN_WORKS_null_null_", "value": "2"},
      значит у пользователя На исполнении 198 работ и из них 2 новых.

      java.lang.String getDefaultWorkFields(java.lang.String locale)

      Возвращает значения по умолчанию для создания новой работы в формате yyyy-MM-dd HH:mm

      URL rest/api/workflow/work/create_defaults
      Method GET

      java.lang.String getExecutionProcess(java.lang.String locale, java.lang.String documentID, java.lang.String workID)
      Метод возвращает ход исполнения по документу

      URL rest/api/workflow/get_execution_process
      Method GET

      java.lang.String getFilters(java.lang.String filterType, java.lang.String parentID, java.lang.String parentObjectID, boolean getCounters, java.lang.String locale, java.lang.String userID)
      Возвращает список фильтров пользователя.
      Response getFinishDate(java.lang.String startDate, java.lang.String duration)
      Метод возвращает дату завершения по дате начала и длительности

      URL: rest/api/workflow/get_finish_date
      Тип: GET
      Response getFormForCompletionResult(java.lang.String formUUID, java.lang.String formCode, java.lang.String workID, java.lang.String locale)
      Создает форму для создания результата по форме завершения "форма"

      URL rest/api/workflow/work/get_form_for_result
      Method GET

      java.lang.String getFullAttachments(java.lang.String workID, java.lang.String locale)

      Возвращает все файлы данной работы по двум группам - вложения и прочие

      URL rest/api/workflow/work/{workID}/attachments
      Method GET



      Возвращает информацию о файлах как объект json:

      [{attachments: [..list of attachments ..]}, {work_files: [..list of work files ..]}]

      java.lang.String getHost() 
      java.lang.String getProcessFinishInfo(java.lang.String workID, java.lang.String locale)
      Возвращает информацию, необходимую для построения диалога завершения работы по согласованию/утверждению/ознакомлению

      URL rest/api/workflow/process_info
      GET

      Поля для описания экрана завершения работы:
      need_comment_input - необходимо ли наличие поля ввода для комментария
      need_enter_positive_comment - обязателен ли ввод комментария при согласии/утверждении
      need_enter_negative_comment - обязателен ли ввод комментария при отказе
      rawdata - Base64 закодированная строка для идентификации подписываемых данных
      demandSign - требовать подписи
      Для каждой кнопки:
      label - Название кнопки
      signal - результат завершения
      color - цвет (значение из ActionColor)

      Route getResponsibleRoute(java.lang.String userID, java.lang.String name, java.util.Date finishDate, java.lang.String completionFormCode) 
      java.lang.String getSendWorkInfo(java.lang.String workID, java.lang.String documentID, java.lang.String actionType, java.lang.String operationType, java.lang.String locale)
      Возвращает информацию необходимую для построения диалога отправки работы на согласование/утверждение/ознакомление/перепоручение/передача

      URL rest/api/workflow/send_work_info
      GET

      Поля для описания экрана завершения работы:
      name - название отправляемой работы
      finish_date - дата завершения отправляемой работы по-умолчанию (в формате yyyy-MM-dd HH:mm:ss)
      button_name - название кнопки действия
      screen_name - название экрана
      button_color - цвет кнопки действия (константа из ActionColor)
      show_all - true - отображать всех пользователей, false - только подчиненных

      Response getSubWorks(java.lang.String workID, int startRecord, int recordsCount, java.lang.String locale)

      Возвращает работы дочерние для данной работы

      URL rest/api/workflow/subworks/{workID}
      GET Возвращает список дочерних работ

      java.lang.String getUserID() 
      java.lang.String getWorkActions(java.lang.String workID, java.lang.String locale)
      Deprecated. 
      этот метод считается устаревшим, используйте rest/api/workflow/work_actions
      java.lang.String getWorkCompletionData(java.lang.String workID, java.lang.String locale)
      Метод возвращает информацию о результате завершения данной работы и список подтвержденных результатов дочерних работ

      URL rest/api/workflow/work/get_completion_data
      Method GET

      java.lang.String getWorkCompletionResult(java.lang.String workID, java.lang.String locale)
      Метод возвращает информацию о результате завершения данной работы

      URL rest/api/workflow/work/completion_result
      Method GET

      java.lang.String getWorkDialogs(java.lang.String uuid, java.lang.String type, java.lang.String locale)
      Метод возвращает описание диалога по его uuid

      URL: rest/api/workflow/get_dialog_info
      Тип: GET
      java.lang.String getWorkDocumentInfo(java.lang.String workID, java.lang.String locale)

      Возвращает информацию о документе, соответствующем данной работе

      URL rest/api/workflow/work/{workID}/document
      Method GET


      java.lang.String getWorkItems(java.lang.String workID, java.lang.String locale)
      Метод возвращает набор действий, которые может совершить авторизованный пользователь над работой

      URL: rest/api/workflow/work_actions
      Тип: GET

      Каждое действие характеризуется следующими полями:
      action - идентификатор действия, значение из WorkActionType
      operation - идентификатор операции, значение из WorkActionSubType (может отсутствовать)
      label - название действия
      color - идентификатор цвета, значение из ActionColor
      Response getWorks(int startRecord, int recordsCount, java.lang.String search, java.lang.String filterType, java.lang.String filterID, java.lang.String objectID, java.lang.String sortColumn, boolean isAscSort, boolean hasExtSearchParams, int periodType, java.lang.String extStartDate, java.lang.String extFinishDate, boolean extShowCompleted, boolean extShowDeleted, int extDateSearchType, java.lang.String userID, java.lang.String locale)
      Возвращает список работ пользователя userID.
      Response getWorksByFilterCode(int startRecord, int recordsCount, java.lang.String search, java.lang.String filterType, java.lang.String filterCode, java.lang.String sortColumn, boolean isAscSort, boolean hasExtSearchParams, int periodType, java.lang.String extStartDate, java.lang.String extFinishDate, boolean extShowCompleted, boolean extShowDeleted, int extDateSearchType, java.lang.String userID, java.lang.String locale)
      Возвращает список работ пользователя userID с общим числом работ, удовлетворяющих условиям поиска

      URL rest/api/workflow/works/list_ext
      Method GET

      Response getWorksById(java.util.List<java.lang.String> workID, java.lang.String locale)
      Возвращает список работ по их идентификаторам

      URL rest/api/workflow/works_by_id
      Method GET

      Response getWorkTime(java.lang.String startDate, java.lang.String finishDate)
      Метод возвращает время в секундах от указанного времени `startDate` и `finishDate` в рабочих часах.
      java.lang.String markWorkSeen(java.lang.String workID)
      Метод отмечает данную работу как "просмотренную"

      URL rest/api/workflow/work/set_seen
      Method GET

      Response rejectWorkResult(java.lang.String workID, java.lang.String resultID, java.lang.String startDate, java.lang.String finishDate, int progress, java.lang.String comment, java.lang.String locale)
      Метод отклоняет результат работы

      URL rest/api/workflow/work/reject_result
      Method POST

      java.lang.String resolutionInfo(java.lang.String workID, java.lang.String locale)
      Метод возвращает описание экрана для завершения процесса резолюции

      URL: rest/api/workflow/screen_resolution_info
      Тип: GET
      Response saveWork(java.lang.String name, java.lang.String startDate, java.lang.String userID, java.lang.String finishDate, java.lang.String priority, java.lang.String completionFormID, java.lang.String completionFormCode, java.lang.String actionID, java.lang.String repeat, java.lang.String locale)

      Изменяет работу и возвращает информацию об измененной работе

      URL rest/api/workflow/work/save
      POST

      Response setStartdate(java.lang.String id, java.lang.String startdate)
      Метод API для обновления таймера URL: rest/api/workflow/set_startdate
      Method POST
      Метод принимает следующие входные параметры:

      id - ид таймера
      startdate - Дата и время запуска таймера в формате yyyy-MM-dd либо yyyy-MM-dd HH:mm:00 В случае успешного выполнения json со следующими полями: errorCode = 0 errorMessage = Таймер обновлен в случае ошибки вернет json со следующими полями errorCode = код ошибки errorMessage = сообщение Пример возвращаемого json-объекта при успешном выполнении метода: { "errorCode": 0, "errorMessage": "Таймер обновлен" }
      Пример возвращаемого json-объекта при ошибке:
      { "errorCode": 3, "errorMessage": "Не передан либо передан некорректный параметр id" }
      { "errorCode": 2, "errorMessage": "Пользователь не авторизован, или у пользователя недостаточно прав для изменения." }
      { "errorCode": 13, "errorMessage": "Таймер с кодом %значение% не найден. " }
      { "errorCode": 666, "errorMessage": "Таймер ранее запущен" }
      { "errorCode": 4, "errorMessage": "Некорректно указана дата startdate" }
      Response setWorkProgress(java.lang.String workID, int progress, java.lang.String locale)

      Изменяет прогресс работы

      URL rest/api/workflow/work/set_progress
      Method GET

      Response setWorkResponsibles(java.lang.String locale, ActionResponsibles responsibles)
      Метод API указывает исполнителей для работ, где указана должность URL: rest/api/workflow/work/set_responsibles
      Method POST
      Метод принимает следующие входные параметры (json):

      workID - ид работы
      responsibles - массив uuid пользователей должности, которым будет назначена работа; Пример передаваемого запроса: { "workID": "6e90e0a1-efe4-4d78-93e5-4540315560e0", "responsibles":["02a5723f-811d-4f62-94c9-ccdf2d74cd1e"] } В случае успешного выполнения json со следующими полями: errorCode = 0 errorMessage = Данные сохранены в случае ошибки вернет json со следующими полями errorCode = код ошибки errorMessage = сообщение Пример возвращаемого json-объекта при успешном выполнении метода: { "errorCode": 0, "errorMessage": "Данные сохранены" }
      Response setWorkResult(java.lang.String workID, java.lang.String completionForm, java.lang.String locale) 
      Response setWorkState(java.lang.String workID, int stateID, java.lang.String locale)

      URL rest/api/workflow/work/set_state
      Method GET

      Response startRoute(java.lang.String finishDate, java.util.List<java.lang.String> resUserID, java.lang.String userID, java.lang.Integer type, java.lang.String name, java.lang.String completionFormID, java.lang.String completionFormCode, java.lang.String workID, java.lang.String documentID, java.lang.String locale)
      Отправляет работу по маршруту (перепоручение, согласование, ознакомление или утверждение)

      URL rest/api/workflow/work/start_route
      Method POST

      java.lang.String transferWork(java.lang.String workID, java.lang.String name, java.lang.String userID, java.lang.String locale)
      Метод выполняет передачу работы другому пользователю

      URL rest/api/workflow/work/transfer
      Method POST

      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • WORK

        public static final java.lang.String WORK
        Комментарии для работы
        See Also:
        Constant Field Values
      • DOCUMENT

        public static final java.lang.String DOCUMENT
        Комментарии для документа
        See Also:
        Constant Field Values
      • PERSONAL

        public static final java.lang.String PERSONAL
        Личные комментарии
        See Also:
        Constant Field Values
    • Constructor Detail

      • WorkFlowService

        public WorkFlowService()
    • Method Detail

      • getWorks

        public Response getWorks(int startRecord,
                                 int recordsCount,
                                 java.lang.String search,
                                 java.lang.String filterType,
                                 java.lang.String filterID,
                                 java.lang.String objectID,
                                 java.lang.String sortColumn,
                                 boolean isAscSort,
                                 boolean hasExtSearchParams,
                                 int periodType,
                                 java.lang.String extStartDate,
                                 java.lang.String extFinishDate,
                                 boolean extShowCompleted,
                                 boolean extShowDeleted,
                                 int extDateSearchType,
                                 java.lang.String userID,
                                 java.lang.String locale)

        Возвращает список работ пользователя userID.

        URL rest/api/workflow/works/list/{userID}
        Method GET

        Parameters:
        startRecord - номер записи начала списка
        recordsCount - максимальное количество записей в списке, 0 - если необходимо получить все записи списка
        search - строка фильтра
        filterType - одно из значений перечисления WorkFilterType, если filterType DELEGATED, то userID должен быть равным objectID, если они не равны, то userID заменяется на objectID, поскольку objectID - UUID пользователя, чью работы просматриваются в автофильтре делегированные

        На исполнении
        OWN_WORKS,
        На контроле
        ON_CONTROL,
        протокольные
        PROTOCOL_WORKS,
        проектные
        PROJECT_WORKS,
        автофильтр делегированные
        DELEGATED,
        группы
        GROUPS;

        filterID - UUID пользовательского фильтра
        objectID - UUID объекта фильтра (например проекта, группы работ, пользователя)
        sortColumn - название столбца сортировки
        isAscSort - true - прямой порядок сортировки, false - обратный
        hasExtSearchParams - заданы ли параметры расширенного фильтра, нижеследующие переменные, начинающиеся с ext имеют смысл, только если значение данной переменной true
        periodType - целочисленная переменная, приминающая следующие значения

        Текущие мероприятия
        SEARCH_TYPE_CURRENT = 0;
        Мероприятия за произвольный промежуток времени
        SEARCH_TYPE_CUSTOM = 1;
        Будущая неделя (+7 дней от текущей даты)
        NEAREST_WEEK_ACTIONS = 2;
        Будущий месяц (+1 месяц от текущей даты)
        NEAREST_MONTH_ACTIONS = 3;
        Будущий квартал (+3 месяца от текущей даты)
        NEAREST_QUARTER_ACTIONS = 4;
        Прошедшая неделя (-7 дней от текущей даты)
        LATEST_WEEK_ACTIONS = 7;
        Прошедший месяц (-1 месяц от текущей даты)
        LATEST_MONTH_ACTIONS = 8;
        Прошедший квартал (-3 месяца от текущей даты)
        LATEST_QUARTER_ACTIONS = 9;
        Сегодня
        NEAREST_DAY_ACTIONS = 6;

        extStartDate - дата начала поискового периода, имеет смысл если значение periodType=SEARCH_TYPE_CUSTOM, format dd-MM-yyyy
        extFinishDate - дата начала поискового периода, имеет смысл если значение periodType=SEARCH_TYPE_CUSTOM, format dd-MM-yyyy
        extShowCompleted - true - отображать завершенные, false - не отображать
        extShowDeleted - true - отображать удаленные, false - не отображать
        extDateSearchType - целочисленная переменная, принимающая следующие значения

        Поиск по всем датам
        SEARCH_DATES_ALL = 0;
        Поиск по дате завершения
        SEARCH_DATES_STARTDATE = 1;
        Поиск по дате начала
        SEARCH_DATES_FINISHDATE = 2;
        Поиск по дате фактического завершения
        SEARCH_DATES_FINISHED = 3;

        userID - UUID пользователя
        locale - локаль пользователя
        Returns:
        список работ

        Если авторизованный пользователь не имеет право видеть список работ userID, то вернется ошибка

          {
           "errorCode":2,
           "errorMessage":"У вас нет доступа к списку работ указанного пользователя"
           }
          
        See Also:
        arta.synergy.web.common.client.data.actions.filter.WorkFilterType, arta.synergy.web.common.client.constants.SearchConstants, arta.synergy.web.common.client.data.actions.ActionSearchParams
      • getWorksByFilterCode

        public Response getWorksByFilterCode(int startRecord,
                                             int recordsCount,
                                             java.lang.String search,
                                             java.lang.String filterType,
                                             java.lang.String filterCode,
                                             java.lang.String sortColumn,
                                             boolean isAscSort,
                                             boolean hasExtSearchParams,
                                             int periodType,
                                             java.lang.String extStartDate,
                                             java.lang.String extFinishDate,
                                             boolean extShowCompleted,
                                             boolean extShowDeleted,
                                             int extDateSearchType,
                                             java.lang.String userID,
                                             java.lang.String locale)

        Возвращает список работ пользователя userID с общим числом работ, удовлетворяющих условиям поиска

        URL rest/api/workflow/works/list_ext
        Method GET

        Parameters:
        userID - UUID пользователя
        startRecord - номер записи начала списка
        recordsCount - максимальное количество записей в списке, 0 - если необходимо получить все записи списка
        search - строка фильтра
        filterType - одно из значений перечисления WorkFilterType

        На исполнении
        OWN_WORKS,
        На контроле
        ON_CONTROL,
        протокольные
        PROTOCOL_WORKS,
        проектные
        PROJECT_WORKS,
        автофильтр делегированные
        DELEGATED,
        группы
        GROUPS;

        filterCode - код централизованного фильтра
        sortColumn - название столбца сортировки
        isAscSort - true - прямой порядок сортировки, false - обратный
        hasExtSearchParams - заданы ли параметры расширенного фильтра, нижеследующие переменные, начинающиеся с ext имеют смысл, только если значение данной переменной true
        periodType - целочисленная переменная, приминающая следующие значения

        Текущие мероприятия
        SEARCH_TYPE_CURRENT = 0;
        Мероприятия за произвольный промежуток времени
        SEARCH_TYPE_CUSTOM = 1;
        Будущая неделя (+7 дней от текущей даты)
        NEAREST_WEEK_ACTIONS = 2;
        Будущий месяц (+1 месяц от текущей даты)
        NEAREST_MONTH_ACTIONS = 3;
        Будущий квартал (+3 месяца от текущей даты)
        NEAREST_QUARTER_ACTIONS = 4;
        Прошедшая неделя (-7 дней от текущей даты)
        LATEST_WEEK_ACTIONS = 7;
        Прошедший месяц (-1 месяц от текущей даты)
        LATEST_MONTH_ACTIONS = 8;
        Прошедший квартал (-3 месяца от текущей даты)
        LATEST_QUARTER_ACTIONS = 9;
        Сегодня
        NEAREST_DAY_ACTIONS = 6;

        extStartDate - дата начала поискового периода, имеет смысл если значение periodType=SEARCH_TYPE_CUSTOM, format dd-MM-yyyy
        extFinishDate - дата начала поискового периода, имеет смысл если значение periodType=SEARCH_TYPE_CUSTOM, format dd-MM-yyyy
        extShowCompleted - true - отображать завершенные, false - не отображать
        extShowDeleted - true - отображать удаленные, false - не отображать
        extDateSearchType - целочисленная переменная, принимающая следующие значения

        Поиск по всем датам
        SEARCH_DATES_ALL = 0;
        Поиск по дате завершения
        SEARCH_DATES_STARTDATE = 1;
        Поиск по дате начала
        SEARCH_DATES_FINISHDATE = 2;
        Поиск по дате фактического завершения
        SEARCH_DATES_FINISHED = 3;

        locale - локаль пользователя
        Returns:
        список работ

        Если авторизованный пользователь не имеет право видеть список работ userID, то вернется ошибка

          {
           "errorCode":2,
           "errorMessage":"У вас нет доступа к списку работ указанного пользователя"
           }
          
        See Also:
        arta.synergy.web.common.client.data.actions.filter.WorkFilterType, arta.synergy.web.common.client.constants.SearchConstants, arta.synergy.web.common.client.data.actions.ActionSearchParams
      • getWorksById

        public Response getWorksById(java.util.List<java.lang.String> workID,
                                     java.lang.String locale)

        Возвращает список работ по их идентификаторам

        URL rest/api/workflow/works_by_id
        Method GET

        Parameters:
        workID - идентификатор работы (параметр может передан несколько раз)
        locale - локаль пользователя
        Returns:
      • getFilters

        public java.lang.String getFilters(java.lang.String filterType,
                                           java.lang.String parentID,
                                           java.lang.String parentObjectID,
                                           boolean getCounters,
                                           java.lang.String locale,
                                           java.lang.String userID)

        Возвращает список фильтров пользователя.

        URL rest/api/workflow/works/filters/{userID}
        Method GET


        Про фильтры:
        Фильтры имеют иерархическую структуру. Условно фильтры можно разделить на четыре категории:
        1. Фильтры первого уровня
        Это фильтры находящиеся на первом уровне иерархии, например: на исполнении, на контроле и т.д. Такие фильтры характеризуются только типом фильтра.
        2. Статические фильтры
        Это постоянные фильтры, физически хранящиеся в БД, каждый такой фильтр имеет свой уникальный идентификатор, характеризуется идентификатором, типом и идентификатором родительского фильтра (если такой существует)
        3. Динамические фильтры
        Это фильтры динамически формируемые согласно объектам родительского фильтра. Например, содержимое фильтра "На контроле" - это динамические фильтры, каждый фильтр соответствует пользователю; аналогично у фильтра Проекты - состав так же динамический, зависит от количества проектов, по которым у данного пользователя есть работы. Эти фильтры не фиксированные и в базе не хранятся и не имеют собственных идентификаторов, главный характеризующий их признак - тип фильтра и идентификатор объекта.
        4. Статические подфильтры динамических фильтров
        Это фильтры хранящиеся в БД, но отбражающиеся пользователю только в случае если отображается родительский фильтр. Для фильтров данного типа характеризуюшими параметрами являются - тип фильтра, идентификатор фильтра, тип родительского объекта, идентификатор родительского фильтра (если такой существует)


        Для использования API надо руководствоваться несколькими правилами:
        1. Корневые элементы можно получить отправив запрос без параметров
        2. Для получения дочерних элементов корневых фильров надо передать один параметр - тип фильтра
        3. Для получения дочерних элементов динамического фильтра надо передать два парамтра - тип фильтра и идентификатор объекта родительского фильтра
        4. Для получения дочерних элементов фильтра, имеющего идентификатор, надо передать - тип и идентификатор

        Примеры

        Для получения корневых элементов, надо послать запрос
        rest/api/workflow/works/filters/{userID}

        Рассмотрим получение статических фильтров. Допустим у нас есть фильтр верхнего уровня с типом OWN_WORKS, описание которого выглядит следующим образом:
        {"name": "На исполнении", "filterType":"OWN_WORKS"},
        для получения его дочерних фильтров надо послать запрос:
        rest/api/workflow/works/filters/{userID}?filterType=OWN_WORKS
        Допустим в результате был возвращен фильтр с uuid-ом filterUUID-1 который описывается, так:
        {"filterID": "filterUUID-1", "name": "На подпись", "filterType":"OWN_WORKS"}
        чтобы получить его дочерние фильтры необходимо отправить такой запрос
        rest/api/workflow/works/filters/{userID}?filterType=OWN_WORKS&parentID=filterUUID-1

        Рассмотрим получение динамических фильтров.

        Допустим у нас есть фильтр верхнего уровня, который может содержать динамически формируемые подфильтры и тип этого фильтра PROJECT_WORKS. Для получения его подфильтров необходимо отправить запрос:
        rest/api/workflow/works/filters/{userID}?filterType=PROJECT_WORKS
        Например, среди возвращенных фильтров был следующий
        {"objectID": "b2b78b71-2419-4ef1-a834-a74125dfbdf5", "name": "План моих работ"}
        Тогда получение его дочерних фильтров будет выглядеть:
        rest/api/workflow/works/filters/{userID}?filterType=PROJECT_WORKS&parentObjectID=b2b78b71-2419-4ef1-a834-a74125dfbdf5
        И в результате получим ответ:
        {"parentObjectID": "b2b78b71-2419-4ef1-a834-a74125dfbdf5", "filterID": "ee230d4f-6def-4d1c-9127-092a0963d029", "name": "от Руководителя"}
        Для того чтобы получить дочерние элементы этого фильтра необходимо отправить запрос:
        rest/api/workflow/works/filters/{userID}filterType=PROJECT_WORKS&parentID=ee230d4f-6def-4d1c-9127-092a0963d029

        Parameters:
        filterType - тип фильтра,
        parentID - UUID родительского фильтра
        parentObjectID - UUID объекта родительского фильтра
        locale - локаль пользователя
        userID - UUID пользователя
        Returns:
        список фильтров в формате json
        See Also:
        WorkUtilWrapper#getFilterJson(arta.synergy.web.common.client.data.actions.filter.Filter, arta.synergy.web.common.client.data.actions.WorkCounters), arta.synergy.ejb.works
      • getComments

        public java.lang.String getComments(java.lang.String workID,
                                            int start,
                                            int count,
                                            boolean getCounters,
                                            java.lang.String type,
                                            java.lang.String locale)

        Возвращает комментарии к работе отсортированные в обратном порядке по дате добавления


        URL rest/api/workflow/work/{workID}/comments
        Method GET

        Возвращает информацию о комментариях как список json
        Поля одного комментария

        commentID - uuid комментария
        comment - текст комментария
        author - автор
        author.userID - uuid автора
        author.name - имя автора же
        created - дата создания
        comment_icon_type - тип иконки комментария
        created_label - время от даты создания либо время создания
        type - тип, константы в arta.synergy.web.common.client.constants.CommentType
        is_editable - возможно ли редактирование данного комментария
        is_deletable - возможно ли удаление данного комментария

        Пример получения последних трех комментариев
        http://хост:порт/Synergy/rest/api/workflow/work/uuid_работы/comments?count=3

        Parameters:
        workID - uuid работы
        start - номер первой записи (отсчет с 0)
        count - количество записей в возвращаемом списке
        type - для чего получаем комментарии (WORK - работа, DOCUMENT - документ принадлежащий работе, PERSONAL - личные комментарии)
        getCounters - true - получить количество комментариев, иначе - false
        locale - локаль пользователя
        Returns:
        Если getCounters= true, возвращается json вида
        {list: [{комментарий_1}, {комментарий_2}, ..., {комментарий_n}], count: количество_комментариев_в_фильтре}
        Если getCounters=false, возвращается просто список комментариев [{комментарий_1}, {комментарий_2}, ..., {комментарий_n}]
        See Also:
        arta.synergy.web.common.client.constants.CommentType
      • addComment

        public java.lang.String addComment(java.lang.String workID,
                                           java.lang.String commentID,
                                           java.lang.String comment,
                                           java.lang.String type,
                                           java.lang.String locale)

        Добавляет/изменяет комментарий к работе


        URL rest/api/workflow/work/{workID}/comments/save
        Method POST

        Parameters:
        workID - uuid работы
        commentID - uuid комментария, для добавления нового комментария - не передавать
        comment - текст комментария (передается как параметр формы)
        locale - локаль пользователя
        type - если к работе добавляется личный комментарий - передать: PERSONAL
        Returns:
        код выполнения result и сообщение об ошибке message в случае неуспешного выполнения. Если result = 0, выполнено успешно, иначе произошла ошибка
      • addAttachment

        public java.lang.String addAttachment(java.lang.String workID,
                                              MultipartFormDataInput input,
                                              java.lang.String path,
                                              java.lang.String locale)
        Deprecated. используйте StorageService#startUploadFile и createAttachment

        Добавляет файл к работе


        URL rest/api/workflow/work/{workID}/attachment/add
        Method POST
        Enctype multipart/form-data



        название поля формы для вложения - body

        Parameters:
        workID - uuid работы
        path - строка показывающая, в какую подпапку контейнера файлов работы необходимо положить файл. Возможные значения:
        • ase:attachmentContainer (DocFileType.INBOX_FILE)
        • ase:workContainer (DocFileType.WORK_FILE)
        locale - локаль пользователя
        Returns:
        код выполнения result и сообщение об ошибке message в случае неуспешного выполнения. Если result = 0, выполнено успешно, иначе произошла ошибка
      • createAttachment

        public java.lang.String createAttachment(java.lang.String workID,
                                                 java.lang.String path,
                                                 java.lang.String fileName,
                                                 java.lang.String filePath,
                                                 java.lang.String locale)

        Метод добавляет вложение к работе из временного файла, загруженного на сервер с помощью API хранилища

        URL work/{workID}/attachment/create
        Method POST

        Parameters:
        workID - UUID работы
        path - строка показывающая, в какую подпапку контейнера файлов работы необходимо положить файл. Возможные значения:
        • ase:attachmentContainer (DocFileType.INBOX_FILE)
        • ase:workContainer (DocFileType.WORK_FILE)
        fileName - Название загружаемого файла
        filePath - Путь к временному файлу, загруженному на сервер
        locale - локаль пользователя
        Returns:
        json объект с полями - result - код выполнения операции (0 - успешно, 666 - предупреждение (на добавление файла во вложения нет прав, и файл добавился в прочие), 13 - внутреняя ошибка сервера или ошибка данных), В случае успешного выполнения так же возвращается полная информация о работе.
        See Also:
        StorageService.startUploadFile(String), StorageService#uploadPart(org.jboss.resteasy.plugins.providers.multipart.MultipartFormDataInput, String, String)
      • doCreateAttachment

        public java.lang.String doCreateAttachment(java.lang.String workID,
                                                   java.lang.String path,
                                                   java.lang.String fileName,
                                                   java.lang.String filePath,
                                                   java.lang.String locale,
                                                   int successResult,
                                                   java.lang.String successMessage)
      • deleteComment

        public java.lang.String deleteComment(java.lang.String commentID,
                                              java.lang.String locale)

        Удаляет комментарий

        URL rest/api/workflow/work/comments/remove
        Method GET

        Пример удаления комментария


        Parameters:
        commentID - uuid комментария
        locale - локаль пользователя
        Returns:
      • getAttachments

        public java.lang.String getAttachments(java.lang.String workID,
                                               int count,
                                               boolean getCounters,
                                               java.lang.String locale)

        Возвращает отсортированный в обратном порядке по дате добавления список файлов работы (из вложений и прочих)

        URL rest/api/workflow/work/{workID}/last_attachments
        Method GET



        Возвращает информацию о вложениях как список json.
        Поля одного вложения
        uuid - идентификатор файла
        dataUUID - идентификатор данных по форме (только если это файл по форме)
        mobile - имеется ли мобильное представление у формы (только если это файл по форме)
        name - название файла
        is_editable - возможно ли изменять/удалять файл
        created_label - читабельное время создания файла от текущего момента
        created - время создания файла
        icon урл изображения для предпросмотра, в случае его отсутствия - урл иконки типа файла

        Пример запроса на получение трех последних вложений
        http://хост:порт/Synergy/rest/api/workflow/work/uuid_работы/last_attachments?count=3

        Parameters:
        workID - uuid работы
        count - количество файлов которое должно быть возвращено (по умолчанию 0)
        getCounters - если true, метод так же возвращает общее количество вложений данной работы
        locale - локаль пользователя
        Returns:
        Если getCounters= true, возвращается json вида
        {list: [{вложение_1}, {вложение_2}, ..., {вложение_n}], count: количество_вложений работы}
        Если getCounters=false, возвращается просто список вложений [{вложение_1}, {вложение_2}, ..., {вложение_n}]
      • getWorkDocumentInfo

        public java.lang.String getWorkDocumentInfo(java.lang.String workID,
                                                    java.lang.String locale)

        Возвращает информацию о документе, соответствующем данной работе

        URL rest/api/workflow/work/{workID}/document
        Method GET


        Parameters:
        workID - UUID работы
        locale - локаль пользователя
        Returns:
        json c полями:
        documentID
      • getFullAttachments

        public java.lang.String getFullAttachments(java.lang.String workID,
                                                   java.lang.String locale)

        Возвращает все файлы данной работы по двум группам - вложения и прочие

        URL rest/api/workflow/work/{workID}/attachments
        Method GET



        Возвращает информацию о файлах как объект json:

        [{attachments: [..list of attachments ..]}, {work_files: [..list of work files ..]}]

        Каждый файл из attachments и work_files описывается следующими полями
        uuid - идентификатор файла
        name - название файла
        is_editable - возможно ли изменять/удалять файл
        created_label - читабельное время создания файла от текущего момента
        created - время создания файла
        icon урл изображения для предпросмотра, в случае его отсутствия - урл иконки типа файла

        Пример ответа, в котором есть один файл вложений и один файл прочих

                  [{"attachments":
                      [{"uuid": "d55ae76a-f451-452d-93cb-3c6b28ba2335",
                        "name": "Изображение.jpg",
                        "created_label": "15 минут назад",
                        "created": "2013-06-26 09:12:54","icon":
                        "preview?identifier=d55ae76a-f451-452d-93cb-3c6b28ba2335"}]
                   },
                   {"work_files":
                      [{"uuid": "d55ae76a-f451-452d-93cb-3c6b28ba2332",
                        "name": "Документ.doc",
                        "created_label": "15 минут назад",
                        "created": "2013-06-26 09:12:54","icon":
                        "preview?identifier=d55ae76a-f451-452d-93cb-3c6b28ba2332"}]
                   }]
         
        Parameters:
        workID - - uuid работы
        locale - - локаль пользователя
        Returns:
      • deleteAttachment

        public java.lang.String deleteAttachment(java.lang.String nodeUUID,
                                                 java.lang.String locale)

        Удаляет файл вложений к работе

        URL rest/api/workflow/work/remove_file
        Method GET

        Parameters:
        nodeUUID - идентификатор файла который надо удалить
        locale - локаль пользователя
        Returns:
        Объект json с полями
        errorCode код выполнения (0- успешно, иначе - ошибка)
        errorMessage сообщение, характеризующее успешное выполнение либо ошибку
      • getDefaultWorkFields

        public java.lang.String getDefaultWorkFields(java.lang.String locale)

        Возвращает значения по умолчанию для создания новой работы в формате yyyy-MM-dd HH:mm

        URL rest/api/workflow/work/create_defaults
        Method GET

        Parameters:
        locale -
        Returns:
      • createWork

        public Response createWork(java.lang.String name,
                                   java.lang.String startDate,
                                   java.lang.String finishDate,
                                   java.lang.String userID,
                                   java.lang.String authorID,
                                   java.util.List<java.lang.String> resUserID,
                                   java.lang.String priority,
                                   java.lang.String completionFormID,
                                   java.lang.String completionFormCode,
                                   boolean force,
                                   java.lang.String moduleID,
                                   java.lang.String comment,
                                   java.lang.String repeat,
                                   java.util.HashSet<java.lang.String> path,
                                   java.lang.String locale)

        Создает новую работу и возвращает полную информацию о ней

        URL rest/api/workflow/work/create
        POST POST

        Обязательные для создания работы поля, в списке ниже отмечены *

        Parameters:
        name - *название работе (FormParam)
        startDate - *дата и время начала работы в формате yyyy-MM-dd HH:mm:ss (FormParam)
        finishDate - *дата и время завершения работы в формате yyyy-MM-dd HH:mm:ss (FormParam)
        userID - uuid ответственного (FormParam)
        authorID - *uuid автора работы (FormParam)
        resUserID - uuid исполнителей работы (параметр resUserID должен быть указан столько раз- сколько исполнителей есть у работы, например resUserID=user_uid_1&resUserID=user_uid_2&resUserID=user_uid_3) (FormParam)
        priority - *приоритет (FormParam)
        completionFormID - идентификатор формы завершения (FormParam) ( можно указывать либо данный параметр либо параметр completionFormCode, при этом если передаются оба поля, то completionFormCode в приоритете)
        completionFormCode - код формы завершения (FormParam) ( можно указывать либо данный параметр либо параметр completionFormID, при этом если передаются оба поля, то completionFormCode в приоритете)
        locale - локаль (QueryParam)
        force - необходимо передать true для того чтобы можно было создать работу, даже если у авторизованного пользователя нет прав ставить работу исполнителю. Этот параметр принимается в счет только если одновременно передается параметр moduleID, который равен идентификатору внешнего модуля. Это ограничение сделано с целью не допустить без контрольное создание работ в обход системы прав.
        moduleID - идентификатор модуля (из таблицы outer_modules)
        comment - комментарий, который будет добавлен к работе после ее создания
        path - список вложений, которые будут добавлены при создании работы. параметр path должен быть указан столько раз, сколько вложений нужно добавить строка path должна выгядеть слеующим обраом: ПУТЬ:ИМЯ, где: ПУТЬ - путь до врменного файла, созданого на серере при помощи метода rest/api/storage/start_upload, ИМЯ - имя добавляемого вложения
        repeat - данные о периоде повторения работы (не обяз., по умолчанию "Нет");
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке.
        В случае успешного выполнения так же возвращается полная информация о работе ответственного пользователя. Если работа создается без указания ответственного (только для исполнителей) информация о созданных работах не возвращается.
        See Also:
        WorkUtilWrapper#getCommentJson(arta.synergy.web.common.client.data.actions.ActionComment, String, String), StorageService.startUploadFile(java.lang.String), StorageService#uploadPart(org.jboss.resteasy.plugins.providers.multipart.MultipartFormDataInput, java.lang.String, java.lang.String)
      • saveWork

        public Response saveWork(java.lang.String name,
                                 java.lang.String startDate,
                                 java.lang.String userID,
                                 java.lang.String finishDate,
                                 java.lang.String priority,
                                 java.lang.String completionFormID,
                                 java.lang.String completionFormCode,
                                 java.lang.String actionID,
                                 java.lang.String repeat,
                                 java.lang.String locale)

        Изменяет работу и возвращает информацию об измененной работе

        URL rest/api/workflow/work/save
        POST

        Parameters:
        name - название работы
        startDate - дата и время начала работы в формате yyyy-MM-dd HH:mm:00
        finishDate - дата и время завершения работы в формате yyyy-MM-dd HH:mm:00
        priority - приоритет работы
        userID - uuid ответственного
        completionFormID - идентификатор формы завершения
        completionFormCode - код формы завершения
        actionID - uuid работы
        locale - локаль работы
        repeat - данные о периоде повторения работы (не обяз., по умолчанию "Нет");
        Returns:
      • getSubWorks

        public Response getSubWorks(java.lang.String workID,
                                    int startRecord,
                                    int recordsCount,
                                    java.lang.String locale)

        Возвращает работы дочерние для данной работы

        URL rest/api/workflow/subworks/{workID}
        GET Возвращает список дочерних работ

        Parameters:
        workID - uuid работы
        locale - локаль пользователя
        startRecord - начальный офсет в общем списке результатов
        recordsCount - колечество результатов в ответе
        See Also:
        WorkUtilWrapper#getCommentJson(arta.synergy.web.common.client.data.actions.ActionComment, String, String)
      • deleteWork

        public java.lang.String deleteWork(java.lang.String locale,
                                           java.lang.String workID)

        Удаляет работу

        URL rest/api/workflow/work/delete
        GET

        Parameters:
        locale - локаль пользователя
        workID - uuid работы, которую необходимо удалить
        Returns:
        json объект информацию о результате выполнения действия
        errorCode - результат выполнения (0 - успешно, 1 - иначе)
        errorMessage - сообщение о результате выполнения (для положительного и отрицательного результата)
      • setWorkProgress

        public Response setWorkProgress(java.lang.String workID,
                                        int progress,
                                        java.lang.String locale)

        Изменяет прогресс работы

        URL rest/api/workflow/work/set_progress
        Method GET

        Parameters:
        workID - uuid работы
        progress - новое значение прогресса (0-100)
        locale - локаль пользователя
        Returns:
      • setWorkState

        public Response setWorkState(java.lang.String workID,
                                     int stateID,
                                     java.lang.String locale)

        URL rest/api/workflow/work/set_state
        Method GET

        Parameters:
        workID - UUID работы
        stateID - новый статус работы
        locale - локаль пользователя
        Returns:
        json объект:
        errorCode код выполнения, 0 - успешно, иначе - произошла ошибка
        errorMessage сообщение о результате выполнения (успешном либо не успешном)
        work измененные данные о работе (только в результате успешного выполнения)
        See Also:
        ActionStates#COMPLETED
      • markWorkSeen

        public java.lang.String markWorkSeen(java.lang.String workID)

        Метод отмечает данную работу как "просмотренную"