kz.arta.synergy.api.rest.userchooser

Class UserChooserService

kz.arta.synergy.api.rest.admin

Class UsersService

kz.arta.synergy.api.rest.admin

Class FormIndexService

kz.arta.synergy.api.rest.admin

Class ActionsIndexService

kz.arta.synergy.api.rest.admin

Class DocumentIndexService

kz.arta.synergy.api.rest.admin

Class DBService

kz.arta.synergy.api.rest.works

Class WorkFlowService

kz.arta.synergy.api.rest.cors

Class AccessForbiddenServlet

kz.arta.synergy.api.rest.dictionary

Class DictionariesService

kz.arta.synergy.api.rest.dictionary

Class DictionaryService

kz.arta.synergy.api.rest.storage

Class IconServlet

kz.arta.synergy.api.rest.storage

Class StorageService

kz.arta.synergy.api.rest.storage

Class StorageGroupsService

kz.arta.synergy.api.rest.storage

Class ASFFileServlet

kz.arta.synergy.api.rest.storage

Class PDFDownloadServlet

kz.arta.synergy.api.rest.storage

Class FileDownloadServlet

kz.arta.synergy.api.rest.filecabinet

Class UsersService

kz.arta.synergy.api.rest.filecabinet

Class PositionsService

kz.arta.synergy.api.rest.filecabinet

Class DepartmetnsService

kz.arta.synergy.api.rest.sign

Class SignService

kz.arta.synergy.api.rest.report

Class ReportService

kz.arta.synergy.api.rest.diary

Class DiaryService

kz.arta.synergy.api.rest.ab

Class AddressBookService

kz.arta.synergy.api.rest.events

Class EventsService

kz.arta.synergy.api.rest.mobile

Class MobileUtilsService

kz.arta.synergy.api.rest.delegation

Class DelegationService

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.bp

Class ProcessesService

kz.arta.synergy.api.rest.asforms

Class APIFormsService

kz.arta.synergy.api.rest.asforms

Class FormPlayerIconService

kz.arta.synergy.api.rest.asforms

Class FormPlayerService

kz.arta.synergy.api.rest.common

Class SettingsService

kz.arta.synergy.api.rest.registry

Class RegistryService

kz.arta.synergy.api.rest.groups

Class GroupsService



  • public class GroupsService
    extends java.lang.Object
    Created by exile Date: 18.02.16 Time: 14:36
    • Constructor Summary

      Constructors 
      Constructor and Description
      GroupsService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response get(int groupID, java.lang.String search, java.lang.String locale) 
      Response getGroupContent(java.lang.String search, java.lang.Integer parentGroupID, java.lang.Integer startRecord, java.lang.Integer recordsCount, java.lang.Integer right, boolean loadAutoGroups, java.lang.String locale) 
      Response getGroups(java.lang.String search, java.lang.Integer parentGroupID, java.lang.String parentGroupCode, java.lang.Integer startRecord, java.lang.Integer recordsCount, boolean loadAllHierarchy, java.lang.Integer right, boolean loadAutoGroups, 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

      • GroupsService

        public GroupsService()
    • Method Detail

      • getGroups

        public Response getGroups(java.lang.String search,
                                  java.lang.Integer parentGroupID,
                                  java.lang.String parentGroupCode,
                                  java.lang.Integer startRecord,
                                  java.lang.Integer recordsCount,
                                  boolean loadAllHierarchy,
                                  java.lang.Integer right,
                                  boolean loadAutoGroups,
                                  java.lang.String locale)
        поиск групп
      • getGroupContent

        public Response getGroupContent(java.lang.String search,
                                        java.lang.Integer parentGroupID,
                                        java.lang.Integer startRecord,
                                        java.lang.Integer recordsCount,
                                        java.lang.Integer right,
                                        boolean loadAutoGroups,
                                        java.lang.String locale)
      • get

        public Response get(int groupID,
                            java.lang.String search,
                            java.lang.String locale)
      • 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.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.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.notifications

Class NotificationsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.notifications.NotificationsService


  • public class NotificationsService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 14.01.14 Time: 18:08 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 get(long lastGetTime, boolean subscribedOnly, java.util.List<java.lang.Integer> actionType, java.util.List<java.lang.Integer> objectType, java.lang.String locale)
      Метод возвращает уведомления для авторизованного пользователя

      URL rest/api/notifications/get
      Method GET

      java.lang.String getHost() 
      java.lang.String getUserID() 
      Response send(NotificationSend sendInfo)
      Метод API для отправки произвольного уведомления пользователю URL: rest/api/notifications/send
      Method POST
      Метод принимает следующие входные параметры (json):

      header - заголовок/тема уведомления (не обяз.);
      message - тело уведомления (обяз.);
      users - массив uuid пользователей, которым необходимо отправить уведомление;
      groups - массив uuid групп пользователей, которым необходимо отправить уведомление;
      logins - массив логинов пользователей, которым необходимо отправить уведомление;
      emails - массив произвольных e-mail, которым необходимо отправить уведомление;
      locale - локаль.
      • Methods inherited from class java.lang.Object

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

      • NotificationsService

        public NotificationsService()
    • Method Detail

      • get

        public java.lang.String get(long lastGetTime,
                                    boolean subscribedOnly,
                                    java.util.List<java.lang.Integer> actionType,
                                    java.util.List<java.lang.Integer> objectType,
                                    java.lang.String locale)

        Метод возвращает уведомления для авторизованного пользователя


        URL rest/api/notifications/get
        Method GET

        Parameters:
        lastGetTime - Время последнего получения уведомлений в миллисекундах, если ранее уведомления не запрашивались значние передавать не надо - система сама определит количество последних уведомлений, которые надо вернуть
        subscribedOnly - true - система вернет только те типы уведомлений на получение которых пользователь подписан, согласно настройкам в системе, false - вернет все типы уведомлений
        actionType - идентификатор типа уведомления (action_types.typeID), передача этого ограничивает возвращаемые уведомления данным типом/типами. Если необходимо передать несколько типов уведомлений - параметр надо указать в запросе несколько раз
        objectType - идентификатор объекта, передача этого параметра ограничиывает возвращаемые уведомления по типу объекта, к которому они относятся. Если необходимо передать несколько типов объектов - параметр надо указать в запросе несколько раз Обрабатываются значения парамтра:
        4 - работа, проекты
        8 - задача
        2 - цель
        16 - показатель
        locale - локаль авторизованного пользователя
        Returns:
        список уведомлений, удовлетворяющих параметрам и текущее время в миллисекундах. Это время надо передать при получении следующей порции уведомлений.
        Формат ответа:
         
        {
        "lasGetTime": "yyyy-MM-dd HH:ss:mm", - стамп времени получения уведомлений
        "notifications": - список уведомлений
        [
        {
        "time":"", - время события
        "notification":"" - текст уведомления
        }, ...
        ]
      • send

        public Response send(NotificationSend sendInfo)

        Метод API для отправки произвольного уведомления пользователю URL: rest/api/notifications/send
        Method POST
        Метод принимает следующие входные параметры (json):

        header - заголовок/тема уведомления (не обяз.);
        message - тело уведомления (обяз.);
        users - массив uuid пользователей, которым необходимо отправить уведомление;
        groups - массив uuid групп пользователей, которым необходимо отправить уведомление;
        logins - массив логинов пользователей, которым необходимо отправить уведомление;
        emails - массив произвольных e-mail, которым необходимо отправить уведомление;
        locale - локаль.
        Пример передаваемого запроса: { "header": "Срочное собрание!", "message": "Прошу Вас собраться в 10:00 в актовом зале.", "users": ["7b953be8-bddb-4ce4-bbfd-ae9548f69c7f", "e65f62fa-7045-4b5b-b61d-46ca00ea7af1"], "groups": [1, 5, 7], "logins": ["Абдрешен", "Слепаков", "user_100500", "1"], "emails": ["bobrov@arta.kz"] }

        Parameters:
        sendInfo - json-объект;
        Returns:
        В случае успешного выполнения json со следующими полями:
        • errorCode = 0
        • errorMessage = Уведомление отправлено
        в случае ошибки вернет json со следующими полями
        • errorCode = код ошибки
        • errorMessage = сообщение
        Пример возвращаемого json-объекта при успешном выполнении метода:
            {
                "errorCode": 0,
                "errorMessage": "Уведомление отправлено"
            }
         
      • getHost

        public java.lang.String getHost()
      • 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.docs

Class DocFlowService

  • java.lang.Object
    • kz.arta.synergy.api.rest.docs.DocFlowService


  • public class DocFlowService
    extends java.lang.Object
    Created by vitaliy.zaretskiy on 11.09.14.
    • Constructor Summary

      Constructors 
      Constructor and Description
      DocFlowService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String addComment(java.lang.String documentID, java.lang.String workID, java.lang.String commentID, java.lang.String comment, java.lang.String locale)
      Добавляет/изменяет комментарий к документу

      URL: rest/api/docflow/doc/comments/save
      Тип POST
      Response create(DocumentRCC rcc) 
      java.lang.String createAttachment(java.lang.String documentID, java.lang.String path, java.lang.String fileName, java.lang.String filePath, java.lang.String locale)
      Метод добавляет вложение к документу из временного файла, загруженного на сервер с помощью API метода rest/api/storage/start_upload

      URL: rest/api/docflow/doc/attachment/create
      Тип: POST
      java.lang.String deleteAttachment(java.lang.String fileUUID, java.lang.String locale)
      Метод удаляет вложение

      URL: rest/api/docflow/doc/attachment/remove
      Тип GET
      java.lang.String deleteComment(java.lang.String commentID, java.lang.String locale)
      Метод удаляет комментарий

      URL: rest/api/docflow/doc/comments/remove
      Тип GET
      java.lang.String doCreateAttachment(java.lang.String documentID, java.lang.String path, java.lang.String fileName, java.lang.String filePath, java.lang.String locale, boolean warning, java.lang.String successMessage) 
      java.lang.String finDocByNumber(java.lang.String number)
      API-метод, позволяющий получить идентификатор документа по его номеру (если таких документов несколько, возвращается первый).
      java.lang.String getAttachments(java.lang.String documentID, int count, boolean getCounters, java.lang.String locale)
      Метод возвращает отсортированный в обратном порядке по дате добавления список файлов документа (из вложений и прочих)

      URL: /rest/api/doc/last_attachments
      Тип: GET

      Возвращает информацию о вложениях как список json.
      java.lang.String getChildDocumentsList(java.lang.String documentID, java.lang.String locale)
      Метод возвращает список дочерних документов для родительского

      URL: rest/api/docflow/doc/child_documents
      Тип: GET
      java.lang.String getComments(java.lang.String documentID, int start, int count, boolean getCounters, java.lang.String locale)
      Метод возвращает комментарии к документу отсортированные в обратном порядке по дате добавления

      URL: rest/api/docflow/doc/comments/list
      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/docflow/doc/comments/list?
      java.lang.String getDocCode(java.lang.String typeId) 
      Response getDocType(java.lang.String code, java.lang.String locale)
      Метод API для получения описания типа документа
      URL: rest/api/docflow/doctypes/{docTypeCode}
      Method GET
      Response getDocTypes(java.lang.String registerID, java.lang.String description, int page, int recordsCount, java.lang.String locale)
      Метод API для получения списка типов документов
      URL: rest/api/docflow/doctypes
      Method GET
      java.lang.String getDocumentFilters(java.lang.String filterType, java.lang.String filterID, java.lang.String objectID, java.lang.String locale)
      Метод возвращает список фильтров в документах по заданным параметрам

      URL: rest/api/docflow/doc/documents_filters
      Тип: GET
      java.util.List<ProcessHistory> getDocumentHistory(java.lang.String documentID, java.lang.String locale) 
      java.lang.String getDocumentInfo(java.lang.String documentID, java.lang.String locale)
      Метод возвращает полную информацию о документе

      URL: rest/api/docflow/doc/document_info
      Тип: GET

      Пример работы метода:
      URL: http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/document_info?
      java.lang.String getDocumentItems(java.lang.String documentID, java.lang.String locale)
      Метод возвращает набор действий, которые может совершить авторизованный пользователь над документом

      URL: rest/api/docflow/document_actions
      Тип: GET

      Каждое действие характеризуется следующими полями:
      action - идентификатор действия, значение из WorkActionType
      operation - идентификатор операции, значение из WorkActionSubType (может отсутствовать)
      label - название действия
      color - идентификатор цвета, значение из ActionColor
      Response getDocumentProcesses(java.lang.String documentID, java.lang.String locale)
      Метод API получения списка ид процессов маршрута в документе, которые запустил авторизованный пользователь URL: rest/api/docflow/doc/processes
      Method GET
      Пример возвращаемого json-объекта при успешном выполнении метода: [ { "procInstID": "600149", "name": "13.06.2018 12.14.27" }, { "procInstID": "600153", "name": "13.06.2018 12.14.34" } ]
      java.lang.String getDocumentRCC(java.lang.String documentID, java.lang.String locale)
      API-метод, позволяющий получить РКК документа.
      java.lang.String getDocumentsList(java.lang.String filterType, java.lang.String filterID, java.lang.String objectID, int pageNumber, int countInPart, java.lang.String locale)
      Метод возвращает список документов для заданных параметров

      URL: rest/api/docflow/doc/documents
      Тип: GET
      Ответ в виде json из списка документов.
      java.lang.String getFavoriteFilters(java.lang.String locale)
      Метод возвращает описание избранных фильтров
      Поведение метода аналогично api методу /rest/api/doc/documents_filters - разница лишь в том, что данный метод не принимает никаких параметров (кроме локали)
      Если избранных фильтров нет - сервер вернет пустой массив ("[]")

      URL: rest/api/docflow/doc/favorite_doc_filters
      Тип: GET
      java.lang.String getFullAttachments(java.lang.String documentID, java.lang.String locale)
      Метод возвращает все файлы данного документа по двум группам - вложения и прочие

      URL: rest/api/docflow/doc/attachments
      Тип: GET

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

      {attachments: [..list of attachments ..], work_files: [..list of work files ..]}
      java.lang.String getResolutions(java.lang.String workID, java.lang.String documentID, java.lang.String locale)
      Возвращает информацию о резолюциях

      URL: rest/api/docflow/doc/get_resolution
      Тип: GET
      java.lang.String getRoutes(java.lang.String search, boolean bookmarks, java.lang.String locale)
      Получение списка маршрутов доступных пользователю

      URL: rest/api/docflow/doc/routes
      Тип: GET
      java.lang.String getSignList(java.lang.String documentID, java.lang.String locale)
      API-метод, позволяющий получить список подписей для данного документа.
      Response reject(java.lang.String documentID, java.lang.String comment, java.lang.String locale) 
      Response save(DocumentRCC rcc) 
      java.lang.String saveCorrespondentOrg(java.lang.String name)
      Добавление корреспондента-организации в общесистемный список
      Тип: POST
      URL: rest/api/docflow/doc/create_correspondent_org
      Response saveLogRecord(LogRecord record) 
      java.lang.String saveResolutionRoute(java.lang.String data, java.lang.String workID, java.lang.String documentID, java.lang.String type, boolean controlled, java.lang.String projectID, java.lang.String locale)
      Метод сохраняет/подтверждает резолюцию

      URL: rest/api/docflow/doc/save_resolution
      Тип: POST
      Response sendDocument(DocSendInfo sendInfo)
      Метод API для пересылки документов URL: rest/api/docflow/doc/send
      Method POST
      Метод принимает следующие входные параметры (json):

      documentID - uuid документа, который необходимо переслать (обяз.);
      users - массив uuid пользователей, которым необходимо переслать документ;
      groups - массив uuid групп пользователей, которым необходимо переслать документ;
      emails - массив произвольных e-mail, которым необходимо переслать документ;
      locale - локаль.
      Response sendOnRegistration(java.lang.String documentID, java.lang.String locale) 
      java.lang.String setHidden(java.lang.String documentID, boolean hidden, java.lang.String filterType, java.lang.String locale)
      Метод скрывает/восстанавливает документ

      URL: rest/api/docflow/doc/hide
      Тип: GET
      java.lang.String setSeen(java.lang.String documentID, boolean seen, java.lang.String filterType, java.lang.String locale)
      Метод отмечает документ как "Просмотренный"

      URL: rest/api/docflow/doc/set_seen
      Тип: GET
      Response sign(java.lang.String locale, java.lang.String documentID, java.lang.String rawdata, java.lang.String signdata, java.lang.String certificate, java.lang.String certID)
      API-метод подписания документа

      URL rest/api/docflow/sign
      Method POST

      Response stopRoute(java.lang.String documentID, java.lang.String procInstID, java.lang.String locale)
      Метод API для прерывания маршрута документа URL: rest/api/docflow/doc/stop_route
      Method POST
      В случае успешного выполнения json со следующими полями: errorCode = 0 errorMessage = Маршрут прерван в случае ошибки вернет json со следующими полями errorCode = код ошибки errorMessage = сообщение Пример возвращаемого json-объекта при успешном выполнении метода: { "errorCode": 0, "errorMessage": "Маршрут прерван" }
      Response transferDocumentAttachments(FileTransferOperation operation)
      Метод API для трансфера файлов вложений из одного документа в другой URL: rest/api/docflow/doc/attachment/transfer
      Method POST
      • Methods inherited from class java.lang.Object

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

      • DocFlowService

        public DocFlowService()
    • Method Detail

      • sendOnRegistration

        public Response sendOnRegistration(java.lang.String documentID,
                                           java.lang.String locale)
      • reject

        public Response reject(java.lang.String documentID,
                               java.lang.String comment,
                               java.lang.String locale)
      • saveLogRecord

        public Response saveLogRecord(LogRecord record)
      • getResolutions

        public java.lang.String getResolutions(java.lang.String workID,
                                               java.lang.String documentID,
                                               java.lang.String locale)
        Возвращает информацию о резолюциях

        URL: rest/api/docflow/doc/get_resolution
        Тип: GET
        Parameters:
        workID - actionID работы
        documentID - uuid документа
        locale - локаль
        Returns:
        json массив с описанием резолюций
        Пример:
         [
             {
                 "statusID": 0,
                 "projectID": "64750f61-3393-425b-b07d-f63974372fa5",
                 "author": "Messi Leonel",
                 "canEdit": "true",
                 "controlled": "true",
                 "maxFinishDate" : "2014-12-17 00:00:00"
                 "items": [
                     {
                         "name": "12345",
                         "itemID" : "32310f61-3393-425b-b07d-f63974372fa5",
                         "userID": "e45a1a15-3c8a-434f-afa7-4d4df8baa579",
                         "user": "Messi Leonel",
                         "users": [
                             {
                                 "user": "AAПроверка AA",
                                 "userID": "9a426339-a140-4ca1-ada5-e441257660f1"
                             },
                             {
                                 "user": "AABBCC ddff",
                                 "userID": "da902b13-a3e8-4e7e-adfd-0bf5e67be5ae"
                             }
                         ],
                         "finishdate": {
                             "date": "1414519200000"
                         },
                         "typeID": 3,
                         "completionFormID": "4eb20dc9-e0ca-4a8a-846b-4ea3b9a46150",
                         "completionFormCode": "comment",
                         "dict_id": "bebebebe-fefe-cece-dede-1234567890ab",
                         "item_name": "Работа"
                     }
                 ]
             }
         ]
         


        В данном примере видим, что наложена одна резолюция. Может быть и больше. Если резолюций вообще нет - сервер вернет пустую резолюцию.

        Параметры описания резолюции:
        statusID - статус резолюции (0 - резолюция сохранена, 1 - резолюция наложена, 2 - резолюция удалена)
        projectID - projectID резолюции. нужен для редактирования резолюции, этот projectID будет передан в api метод /doc/save_resolution
        author - автор резолюции
        canEdit - есть ли возможность редактировать резолюцию текущему пользователю
        controlled - выставлена ли галочка "Является контрольным"
        maxFinishDate - максимальная дата пункта резолюции (данный параметр актуален, если выставлена галочка в конфигураторе "Разрешить ставить работы по резолюции, завершающиеся позже документа")
        items - пункты резолюции

        Параметры пунктов резолюции:
        name - имя пункта резолюции
        itemID - id пункта резолюции
        userID - uuid ответственного
        user - имя ответственного
        users - исполнители
        finishdate - дата завершения в миллисекундах
        type - тип (3 - работа, 0 - согласование, 1 - утверждение, 2 - ознакомление, 17 - отправка документа, 28 - блокирующий процесс)
        completionFormID - id формы завершения
        completionFormCode - код формы завершения
        dict_id - id пункта типа работ по резолюции
        item_name - наименование пункта типа работ по резолюции
      • saveResolutionRoute

        public java.lang.String saveResolutionRoute(java.lang.String data,
                                                    java.lang.String workID,
                                                    java.lang.String documentID,
                                                    java.lang.String type,
                                                    boolean controlled,
                                                    java.lang.String projectID,
                                                    java.lang.String locale)
        Метод сохраняет/подтверждает резолюцию

        URL: rest/api/docflow/doc/save_resolution
        Тип: POST
        Parameters:
        data - json строка с пунктами резолюции
        workID - uuid работы
        documentID - uuid доукмента
        controlled - "является контрольным" (по умолчанию - false)
        type - тип резолюции (SAVE - сохранить, ACCEPT - подтвердить)
        projectID - projectID резолюции. можно получить из api метода rest/api/docflow/doc/get_resolution. если создается новая резолюция - передавать этот параметр не надо, во всех остальных случаях надо (редактирование существующей)
        locale - локаль
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка)

        Пример строки data:
         [
             {
                 "name": "item 1",
                 "userID": "fdb874fa-e5cf-4454-bd7c-1727fed23a3e",
                 "usersID": [
                     "fdb874fa-e5cf-4454-bd7c-1727fed23a3e",
                     "c6caf840-d39b-41fc-83c6-e015a264677a"
                 ],
                 "finishDate": "1411722780000",
                 "typeID": "0",
                 "completionFormID": "4eb20dc9-e0ca-4a8a-846b-4ea3b9a46150",
                 "completionFormCode": "comment",
                 "itemID": "52230dc9-e0ca-4a8a-846b-4ea3b9a46150",
                 "dict_id": "fefefefe-cafe-babe-face-1234567890ab"
             }
         ]
         


        где:

        name - имя резолюции
        userID - id ответственного
        usersID - id исполнителей
        finishDate - время завершения в миллисекундах
        typeID - тип резолюции (3 - работа, 0 - согласование, 1 - утверждение, 2 - ознакомление, 33 - резолюция, 17 - отправка документа))
        completionFormID - id формы завершения ( можно указывать либо данный параметр либо параметр completionFormCode, при этом если передаются оба поля, то completionFormCode в приоритете)
        completionFormCode - код формы завершения ( можно указывать либо данный параметр либо параметр completionFormID, при этом если передаются оба поля, то completionFormCode в приоритете)
        itemID - id пункта резолюции
        dict_id - id пункта справочника работ по резолюции
        *один из параметров typeID или dict_id является обязательным, если указаны оба, то typeID игнорируется
      • saveCorrespondentOrg

        public java.lang.String saveCorrespondentOrg(java.lang.String name)
        Добавление корреспондента-организации в общесистемный список
        Тип: POST
        URL: rest/api/docflow/doc/create_correspondent_org
        Parameters:
        name - название организации(FormParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка)
      • getDocumentFilters

        public java.lang.String getDocumentFilters(java.lang.String filterType,
                                                   java.lang.String filterID,
                                                   java.lang.String objectID,
                                                   java.lang.String locale)
        Метод возвращает список фильтров в документах по заданным параметрам

        URL: rest/api/docflow/doc/documents_filters
        Тип: GET
        Parameters:
        filterType - тип фильтра
        filterID - uuid фильтра
        objectID - objectID фильтра
        locale - локаль
        Returns:
        json строка (список фильтров)
        Примеры работы метода:
        Все начинается с отправки метода без каких-либо параметров (кроме локали)
        URL: http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/documents_filters?locale=ru
        Сервер вернет:
         [
             {
                 "name": "Журналы",
                 "filterType": "REGISTER_FILTER",
                 "count": "17",
                 "hasChildren": "true"
             },
             {
                 "name": "Дела",
                 "filterType": "DOCFILE_FILTER",
                 "count": "0",
                 "hasChildren": "true"
             },
             {
                 "name": "Все",
                 "filterType": "ALL_USER_DOCUMENTS",
                 "count": "321",
                 "hasChildren": "true"
             }
         ]
         


        Если параметр hasChildren = true - это значит, что данный фильтр содержит дочерние.
        К примеру пользователь захотел получить список фильтров, которые находится «внутри» фильтра «Журналы».
        Чтобы это осуществить — нужно обратиться к этому же методу + добавить один параметр filterType (тип фильтра).
        URL: http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/documents_filters?filterType=REGISTER_FILTER&locale=ru
        Сервер вернет описание фильтров второго уровня, к примеру:
         [
             {
                 "name": "Внутренние документы",
                 "filterType": "REGISTER_FILTER",
                 "objectID": "internal_docs",
                 "count": "2",
                 "hasChildren": "true"
             },
             {
                 "name": "Входящие документы",
                 "filterType": "REGISTER_FILTER",
                 "objectID": "in_docs",
                 "count": "12",
                 "hasChildren": "true"
             },
             {
                 "name": "Договоры",
                 "filterType": "REGISTER_FILTER",
                 "objectID": "2f74f563-7366-4d60-a86d-15843108f256",
                 "count": "0",
                 "hasChildren": "true"
             }
         ]
         


        Например пользователь захотел провалиться еще глубже, к примеру в фильтр «Внутренние документы».
        Для этого надо добавить к существующему запросу еще один параметр — objectID.
        URL: http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/documents_filters?filterType=REGISTER_FILTER?objectID=internal_docs&locale=ru
        Сервер вернет описание фильтров третьего уровня, к примеру:
         [
             {
                 "name": "On registration",
                 "filterType": "REGISTER_FILTER",
                 "filterID": "3e54a5c4-603a-418f-bb43-c34117b7f855",
                 "objectID": "internal_docs",
                 "count": "1",
                 "hasChildren": "true"
             },
             {
                 "name": "In progress",
                 "filterType": "REGISTER_FILTER",
                 "filterID": "03f46a0c-bafb-4aa0-b4dd-708be03f5c35",
                 "objectID": "internal_docs",
                 "count": "0",
                 "hasChildren": "true"
             },
             {
                 "name": "Expired",
                 "filterType": "REGISTER_FILTER",
                 "filterID": "8dfdd85d-3c55-47fc-8ab6-d76387e359a0",
                 "objectID": "internal_docs",
                 "count": "0",
                 "hasChildren": "true"
             }
         ]
         


        Можно попасть на четвертый уровень — в таком случае необходимо еще добавить параметр filterID.
        URL: http://192.168.2.153:8080/Synergy/rest/api/docflow/doc/documents_filters?filterType=REGISTER_FILTER&objectID=internal_docs&filterID=3e54a5c4-603a-418f-bb43-c34117b7f855&locale=ru
        Сервер вернет описание фильтров четвертого уровня, к примеру:
         [
             {
                 "name": "Фильтр четвертого уровня 1",
                 "filterType": "REGISTER_FILTER",
                 "filterID": "8e0b82ff-7832-4e7b-adbe-6b495fe8f617",
                 "objectID": "internal_docs",
                 "count": "1",
                 "hasChildren": "false"
             },
             {
                 "name": "Фильтр четвертого уровня 2",
                 "filterType": "REGISTER_FILTER",
                 "filterID": "e5c62d5e-df03-43cc-8899-c1a91855f432",
                 "objectID": "internal_docs",
                 "count": "1",
                 "hasChildren": "false"
             }
         ]
         


        Начиная с четвертого уровня — новых параметров не добавляется.
        Для других фильтров («Дела», «Все») поведение метода аналогично.
      • getFavoriteFilters

        public java.lang.String getFavoriteFilters(java.lang.String locale)
        Метод возвращает описание избранных фильтров
        Поведение метода аналогично api методу /rest/api/doc/documents_filters - разница лишь в том, что данный метод не принимает никаких параметров (кроме локали)
        Если избранных фильтров нет - сервер вернет пустой массив ("[]")

        URL: rest/api/docflow/doc/favorite_doc_filters
        Тип: GET
        Parameters:
        locale - локаль
        Returns:
        json строка (список фильтров)
      • getDocumentsList

        public java.lang.String getDocumentsList(java.lang.String filterType,
                                                 java.lang.String filterID,
                                                 java.lang.String objectID,
                                                 int pageNumber,
                                                 int countInPart,
                                                 java.lang.String locale)
        Метод возвращает список документов для заданных параметров

        URL: rest/api/docflow/doc/documents
        Тип: GET
        Ответ в виде json из списка документов.
        Примеры работы метода:
        URL: http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/documents
        Сервер вернет список документов, в данном примере 1 документ.
         [
             {
                 "name": "Документ 1",
                 "content" : "",
                 "documentID": "8c081b77-5d03-4ce3-89a8-b551a73fc1d9",
                 "number": "",
                 "author": "Бобров С.Е.",
                 "docTypeId": "inner"
                 "user": "Абдрешен Л.С.",
                 "regUser": "",
                 "resUsers": "",
                 "to": "",
                 "from": "",
                 "correspondent": "",
                 "correspondentOrg": "",
                 "type": "DOCUMENT",
                 "createDate": "2014-11-13 15:50:00",
                 "regDate": "2014-11-13 16:42:00",
                 "statusID": "NOT_STARTED",
                 "isExpired": "false",
                 "isSoonExpired": "true",
                 "hasChildren": "false",
                 "hasResolution": "false",
                 "isNew": "false",
                 "hidden": "false",
                 "registered": "false",
                 "finished": "false",
                 "inProgress": "false",
                 "controlled": "false",
                 "hasAttachments": "true",
                 "defective": "false",
                 "actions":["35d757cf-5c91-4939-9b72-7bc4af84ebf4","305fa7a9-6497-4cdf-a14a-6fb344199538","41755a49-9d37-4beb-8814-03d69dce55c9"]
             }
         ]
         


        Описание параметров:

        name - краткое содержание документа
        content - значащее содержимое
        documentID - uuid документа
        number - номер документа
        author - ФИО автора документа
        docTypeID - тип журнала документа (внутренний, исходящий, входящий)
        user - ФИО пользователя, которому отписан документ
        regUser - ФИО пользователя, зарегистрировавшего документ
        resUsers - ФИО пользователей, у которых документ находится на исполнении
        to - ФИО адресатов
        from - ФИО адресантов
        correspondent - корреспондент
        correspondentOrg - корреспондент (орг)
        type - признак происхождения (EMAIL/DOCUMENT)
        createDate - время и дата создания документа в формате (DD.MM.YY hh:mm)
        regDate - время и дата регистрации документа в формате (DD.MM.YY hh:mm)
        statusID - статус документа (NOT_STARTED - на регистрации, IN_PROGRESS - на исполнении, FINISHED - завершен, DRAFT - отклонен)
        isExpired - хотя бы одна работа по маршруту документа просрочена
        isSoonExpired - хотя бы у одной работы по маршруту документа истекает срок
        hasChildren - имеет ли данный документ дочерние
        hasResolution - наложена ли резолюция на данный документ
        isNew - есть ли изменения в документе непросмотренные пользователем
        hidden - скрыт ли документ
        registered - зарегистрирован ли документ
        finished - завершен ли документ
        inProgress - находится ли документ в процессе
        actions - массив, состоящий из идентификаторов работ по данному документу. В массиве возвращаются работы, которые находятся на исполнении пользователя, вызвавшего API метод.
        controlled - является ли документ контрольным
        hasAttachments - имеет ли данный документ вложения
        defective - бракованный ли документ

        Чтобы получить список документов в находящиеся в каком-либо фильтре - нужно передать параметры этого фильтра в текущий метод. (Параметры получаются путем вызова метода /rest/api/doc/documents_filters).
        К примеру:
        1. http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/documents?filterType=REGISTER_FILTER
        2. http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/documents?filterType=REGISTER_FILTER&objectID=internal_docs
        3. http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/documents?filterType=REGISTER_FILTER&objectID=internal_docs&filterID=3e54a5c4-603a-418f-bb43-c34117b7f855
        Parameters:
        filterType - тип фильтра
        filterID - id фильтра
        objectID - objectID фильтра
        pageNumber - номер страницы пагинации результатов
        countInPart - количество результатов на странице пагинации
        locale - локаль
      • getChildDocumentsList

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

        URL: rest/api/docflow/doc/child_documents
        Тип: GET
        Parameters:
        documentID - documentID (uuid родительского документа, для которого получаются дочерние, имеет смысл передавать только в том случае, если параметр hasChildren у родителя = true)
        locale - локаль
        Returns:
        json строка (список документов)
      • getDocumentInfo

        public java.lang.String getDocumentInfo(java.lang.String documentID,
                                                java.lang.String locale)
        Метод возвращает полную информацию о документе

        URL: rest/api/docflow/doc/document_info
        Тип: GET

        Пример работы метода:
        URL: http://127.0.0.1:8080/Synergy/rest/api/docflow/doc/document_info?documentID=8c081b77-5d03-4ce3-89a8-b551a73fc1d9
        Сервер вернет информацию о документе:
         [
             {
                 "name": "Документ 1",
                 "content" : "",
                 "documentID": "8c081b77-5d03-4ce3-89a8-b551a73fc1d9",
                 "number": "",
                 "author": "Бобров С.Е.",
                 "docTypeId": "inner"
                 "user": "Абдрешен Л.С.",
                 "regUser": "",
                 "resUsers": "",
                 "to": "",
                 "from": "",
                 "correspondent": "",
                 "correspondentOrg": "",
                 "type": "DOCUMENT",
                 "createDate": "2014-11-13 15:50:00",
                 "regDate": "2014-11-13 16:42:00",
                 "statusID": "NOT_STARTED",
                 "isExpired": "false",
                 "isSoonExpired": "true",
                 "hasChildren": "false",
                 "hasResolution": "false",
                 "isNew": "false",
                 "hidden": "false",
                 "registered": "false",
                 "finished": "false",
                 "inProgress": "false",
                 "controlled": "false",
                 "hasAttachments": "true",
                 "defective": "false",
                 "wasOpened": "true",
                 "actions" : ["fb051b77-6ds3-4c3f-833a8-b551a73fc1fs"],
                 "bases" : ["3c051b77-5ds3-4ce3-84a8-b551a73fc1d9"]
                 "rawdata" : "Z5IhLZaw8Ne8WCr0JkGlNn4hXdI="
             }
         ]
         


        Описание параметров:

        name - краткое содержание документа
        content - значащее содержимое
        documentID - uuid документа
        number - номер документа
        author - ФИО автора документа
        docTypeID - тип журнала документа (внутренний, исходящий, входящий)
        user - ФИО пользователя, которому отписан документ
        regUser - ФИО пользователя, зарегистрировавшего документ
        resUsers - ФИО пользователей, у которых документ находится на исполнении
        to - ФИО адресатов
        from - ФИО адресантов
        correspondent - корреспондент
        correspondentOrg - корреспондент (орг)
        type - признак происхождения (EMAIL/DOCUMENT)
        createDate - время и дата создания документа в формате (DD.MM.YY hh:mm)
        regDate - время и дата регистрации документа в формате (DD.MM.YY hh:mm)
        statusID - статус документа (NOT_STARTED - на регистрации, IN_PROGRESS - на исполнении, FINISHED - завершен, DRAFT - отклонен)
        isExpired - хотя бы одна работа по маршруту документа просрочена
        isSoonExpired - хотя бы у одной работы по маршруту документа истекает срок
        hasChildren - имеет ли данный документ дочерние
        hasResolution - наложена ли резолюция на данный документ
        isNew - есть ли изменения в документе непросмотренные пользователем
        hidden - скрыт ли документ
        registered - зарегистрирован ли документ
        finished - завершен ли документ
        inProgress - находится ли документ в процессе
        controlled - является ли документ контрольным
        hasAttachments - имеет ли данный документ вложения
        defective - бракованный ли документ
        wasOpened - был ли документ просмотрен
        actions - если пользователь по данному документу имеет несколько работ - uuid'ы этих работ будут находиться в массиве actions.
        bases - основания документа
        registryID - идентификатор реестра, в котором находится документ (может отсутствовать, если документ не принадлежит никакому реестру)
        registryName - имя реестра, в котором находится документ (может отсутствовать, если документ не принадлежит никакому реестру)
        formName - имя формы
        formID - идентификатор формы
        formCode - код формы
        asfDataID - идентификатор данных по форме реестра документа (может отсутствовать, если документ не принадлежит никакому реестру)
        rawdata - Base64 подписываемых данных документа
        processing - статус записи реестра (true - находится в процессе)
        activate - статус записи реестра (true - запись активирована)
        Parameters:
        documentID - documentID
        locale - локаль
        Returns:
        json строка
      • getAttachments

        public java.lang.String getAttachments(java.lang.String documentID,
                                               int count,
                                               boolean getCounters,
                                               java.lang.String locale)
        Метод возвращает отсортированный в обратном порядке по дате добавления список файлов документа (из вложений и прочих)

        URL: /rest/api/doc/last_attachments
        Тип: GET

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

        Пример запроса на получение трех последних вложений
        http://хост:порт/Synergy/rest/api/docflow/doc/last_attachments?count=3&documentID=UUID
        Parameters:
        documentID - uuid документа
        count - количество файлов которое должно быть возвращено (по умолчанию 3)
        getCounters - если true - метод так же возвращает общее количество вложений документа (по умолчанию false)
        locale - локаль пользователя
        Returns:
        если getCounters= true, возвращается json вида
        {list: [{вложение_1}, {вложение_2}, ..., {вложение_n}], count: количество_вложений документа }
        если getCounters=false, возвращается просто список вложений [{вложение_1}, {вложение_2}, ..., {вложение_n}]
      • getFullAttachments

        public java.lang.String getFullAttachments(java.lang.String documentID,
                                                   java.lang.String locale)
        Метод возвращает все файлы данного документа по двум группам - вложения и прочие

        URL: rest/api/docflow/doc/attachments
        Тип: 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",
                      "is_editable": "true",
                      "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",
                      "is_editable": "true",
                      "created_label": "15 минут назад",
                      "created": "2013-06-26 09:12:54",
                      "icon": "preview?identifier=d55ae76a-f451-452d-93cb-3c6b28ba2332"
                  }
              ]
         }
         
        Parameters:
        documentID - - uuid документа
        locale - - локаль пользователя
        Returns:
        описано выше
      • createAttachment

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

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



        URL: rest/api/docflow/doc/attachment/create
        Тип: POST
        Parameters:
        documentID - UUID документа
        path - строка показывающая, в какой контейнер необходимо положить файл. (ase:attachmentContainer, ase:workContainer)
        fileName - название загружаемого файла
        filePath - путь к временному файлу, загруженному на сервер
        locale - локаль пользователя
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка),
      • doCreateAttachment

        public java.lang.String doCreateAttachment(java.lang.String documentID,
                                                   java.lang.String path,
                                                   java.lang.String fileName,
                                                   java.lang.String filePath,
                                                   java.lang.String locale,
                                                   boolean warning,
                                                   java.lang.String successMessage)
      • deleteAttachment

        public java.lang.String deleteAttachment(java.lang.String fileUUID,
                                                 java.lang.String locale)
        Метод удаляет вложение

        URL: rest/api/docflow/doc/attachment/remove
        Тип GET
        Parameters:
        fileUUID - идентификатор файла, который надо удалить
        locale - локаль пользователя
        Returns:
        Объект json с полями
        errorCode код выполнения (0- успешно, иначе - ошибка)
        errorMessage сообщение, характеризующее успешное выполнение либо ошибку
      • getComments

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

        URL: rest/api/docflow/doc/comments/list
        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/docflow/doc/comments/list?documentID=UUID&count=3
        Parameters:
        documentID - uuid документа
        start - номер первой записи (отсчет с 0)
        count - количество записей в возвращаемом списке (по умолчанию 3)
        getCounters - true - получить количество комментариев, иначе - false
        locale - локаль пользователя
        Returns:
        если getCounters= true, возвращается json вида
        {list: [{комментарий_1}, {комментарий_2}, ..., {комментарий_n}], count: количество_комментариев_в_фильтре}
        если getCounters = false, возвращается просто список комментариев [{комментарий_1}, {комментарий_2}, ..., {комментарий_n}]
      • addComment

        public java.lang.String addComment(java.lang.String documentID,
                                           java.lang.String workID,
                                           java.lang.String commentID,
                                           java.lang.String comment,
                                           java.lang.String locale)
        Добавляет/изменяет комментарий к документу

        URL: rest/api/docflow/doc/comments/save
        Тип POST
        Parameters:
        documentID - uuid документа
        workID - uuid работы
        commentID - uuid комментария, для добавления нового комментария - не передавать
        comment - текст комментария (передается как параметр формы)
        locale - локаль пользователя На данный момент поддерживается только один тип simple - к телу комментария добавляются названия объектов.
      • deleteComment

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

        URL: rest/api/docflow/doc/comments/remove
        Тип GET
        Parameters:
        commentID - uuid комментария
        locale - локаль пользователя
      • getDocumentItems

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

        URL: rest/api/docflow/document_actions
        Тип: GET

        Каждое действие характеризуется следующими полями:
        action - идентификатор действия, значение из WorkActionType
        operation - идентификатор операции, значение из WorkActionSubType (может отсутствовать)
        label - название действия
        color - идентификатор цвета, значение из ActionColor
        Parameters:
        documentID - uuid работы
        locale - локаль пользователя
        Returns:
        массив json объектов с информацией о возможных действиях
        See Also:
        WorkActionType, WorkActionSubType, ActionColor
      • setHidden

        public java.lang.String setHidden(java.lang.String documentID,
                                          boolean hidden,
                                          java.lang.String filterType,
                                          java.lang.String locale)
        Метод скрывает/восстанавливает документ

        URL: rest/api/docflow/doc/hide
        Тип: GET
        Parameters:
        documentID - documentID (uuid документа)
        filterType - фильтр, в котором скрывается документ
        hidden - true - скрыть документ, false - восстановить
        locale - локаль
        Returns:

        В случае неуспешного выполнения возвращается json с полями
        errorCode - код выполнения (число, отличное от 0)
        errorMessage - сообщение об ошибке
        See Also:
        arta.synergy.web.common.client.data.bp.docflow.DocSearchParams#USER_OWN_DOCUMENTS, arta.synergy.web.common.client.data.bp.docflow.DocSearchParams#USER_SENT_DOCUMENTS, arta.synergy.web.common.client.data.bp.docflow.DocSearchParams#USER_RECEIVED_DOCUMENTS, arta.synergy.web.common.client.data.bp.docflow.DocSearchParams#ALL_USER_DOCUMENTS
      • setSeen

        public java.lang.String setSeen(java.lang.String documentID,
                                        boolean seen,
                                        java.lang.String filterType,
                                        java.lang.String locale)
        Метод отмечает документ как "Просмотренный"

        URL: rest/api/docflow/doc/set_seen
        Тип: GET
        Parameters:
        documentID - documentID (uuid документа)
        seen - true/false (просмотрен документ либо нет)
        filterType - тип фильтра, из которого скрывается документ
        locale - локаль
        Returns:

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

        public java.lang.String getRoutes(java.lang.String search,
                                          boolean bookmarks,
                                          java.lang.String locale)
        Получение списка маршрутов доступных пользователю

        URL: rest/api/docflow/doc/routes
        Тип: GET
        Parameters:
        search - строка поиска (поиск производится только по наименованию маршрутов)
        bookmarks - true - отображать только скрытые, false - отображать все (по умолчанию)
        locale - локаль
        Returns:
        json строка (успешно/неуспешно) Пример:
            [
            {
            "routeID": "c4ddd6b1-ade2-4ee2-ace5-aaec6a81d02a",
            "routeName": "Анализ бухгалтерского баланса",
            "authorID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
            "authorName": "Слепаков И.И.",
            "isBookmark": "false"
            },
            {
            "routeID": "22a48f88-199a-4398-8eb6-15ba8ef35deb",
            "routeName": "Анализ бухгалтерского баланса №2",
            "authorID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
            "authorName": "Слепаков И.И.",
            "isBookmark": "true"
            }
            ]
         

        routeID - uuid маршрута
        routeName - наименование реестра
        authorID - uuid автора
        authorName - имя автора
        isBookmark - является ли реестр "Избранным"
      • getDocCode

        public java.lang.String getDocCode(java.lang.String typeId)
      • getDocumentHistory

        public java.util.List<ProcessHistory> getDocumentHistory(java.lang.String documentID,
                                                                 java.lang.String locale)
      • getDocumentRCC

        public java.lang.String getDocumentRCC(java.lang.String documentID,
                                               java.lang.String locale)

        API-метод, позволяющий получить РКК документа.

        URL rest/api/docflow/doc/rcc
        Method GET

        Parameters:
        documentID - UUID документа (обяз.);
        locale - локаль;
        Returns:
        В случае успешного выполнения возвращаемая json в самом общем виде имеет следующие поля:

        (1) Для документов с типом журнала внутренний:


        • content - краткое содержание в строковом формате;
        • registerID - UUID журнала, по которому был выбран тип документа;
        • registerName - название журнала, по которому был выбран тип документа. Отобразить название в соответствии с локалью в строковом формате;
        • number - номер в строковом формате, установленном для данного документа;
        • regDate - отображается для зарегистрированных документов в формате "ГГГГ-ММ-ДД ЧЧ:ММ:СС";
        • length - отображается в числовом формате в случае, если при настройке типа документа был использован способ ввода срока "Длительность";
        • lengthType - отображает тип длительности в зависимости от установленной настройки "Способ расчета срока" (отображается в случае отображения поля length) и принимает один из следующих значений:
          • "WORKING_DAYS" - в рабочих днях;
          • "CALENDAR_DAYS" - в календарных днях;
        • finishDate - отображается в формате "ГГГГ-ММ-ДД" в случае, если при настройке типа документа был использован способ ввода срока "Дата завершения";
        • authorID - UUID автора документа;
        • authorName - ФИО автора документа;
        • registeredByID - UUID зарегестрировавшего документ;
        • registeredByName - ФИО зарегистрировавшего документ;
        • controlled - является ли контрольным (true - да, false - нет);
        • caseID - UUID дела;
        • caseName - название дела, в которое был списан документ. Отобразить название в соответствии с локалью в строковом формате;
        • bases - массив, содержащий UUID оснований;
        • executorID - UUID исполнителя.
        • executorName - ФИО исполнителя.
        • registered - true, если документ зарегистрирован, иначе false
        • mandatoryFields - представляет собой массив строк с кодами обязательных для заполнения полей. В случае, если какое-либо из полей РКК передается в виде нескольких полей JSON, в mandatoryFields указываются они все

        (2) Для документов с типом журнала входящий:


        • content - краткое содержание в строковом формате;
        • registerID - UUID журнала, по которому был выбран тип документа
        • registerName - название журнала, по которому был выбран тип документа. Отобразить название в соответствии с локалью в строковом формате
        • number - номер в строковом формате, установленном для данного документа;
        • regDate - отображается для зарегистрированных документов в формате "ГГГГ-ММ-ДД ЧЧ:ММ:СС";
        • length - отображается в числовом формате в случае, если при настройке типа документа был использован способ ввода срока "Длительность";
        • lengthType - отображает тип длительности в зависимости от установленной настройки "Способ расчета срока" (отображается в случае отображения поля length) и принимает один из следующих значений:
          • "WORKING_DAYS" - в рабочих днях;
          • "CALENDAR_DAYS" - в календарных днях;
        • finishDate - отображается в формате "ГГГГ-ММ-ДД" в случае, если при настройке типа документа был использован способ ввода срока "Дата завершения";
        • correspondentOrg - название корреспондента-организации в строковом формате;
        • correspondent - название корреспондента в строковом формате;
        • registeredByID - UUID зарегестрировавшего документ;
        • registeredByName - ФИО зарегистрировавшего документ;
        • controlled - является ли контрольным (true - да, false - нет);
        • numberOut - номер исх. в строковом формате, установленном для данного документа;
        • dateOut - дата исх. в формате "ГГГГ-ММ-ДД ЧЧ:ММ:СС";
        • caseID - UUID дела;
        • caseName - название дела, в которое был списан документ. Отобразить название в соответствии с локалью в строковом формате;
        • bases - массив, содержащий UUID оснований;
        • executorID - UUID исполнителя.
        • executorName - ФИО исполнителя.
        • mandatoryFields - представляет собой массив строк с кодами обязательных для заполнения полей. В случае, если какое-либо из полей РКК передается в виде нескольких полей JSON, в mandatoryFields указываются они все

        (3) Для документов с типом журнала исходящий:


        • content - краткое содержание в строковом формате;
        • registerID - UUID журнала, по которому был выбран тип документа;
        • registerName - название журнала, по которому был выбран тип документа. Отобразить название в соответствии с локалью в строковом формате;
        • number - номер в строковом формате, установленном для данного документа;
        • regDate - отображается для зарегистрированных документов в формате "ГГГГ-ММ-ДД ЧЧ:ММ:СС";
        • correspondentOrg - название корреспондента-организации в строковом формате;
        • correspondent - название корреспондента в строковом формате;
        • authorID - UUID автора документа;
        • authorName - ФИО автора;
        • registeredByID - UUID зарегестрировавшего документ;
        • registeredByName - ФИО зарегистрировавшего документ;
        • controlled - является ли контрольным (true - да, false - нет);
        • caseID - UUID дела;
        • caseName - название дела, в которое был списан документ. Отобразить название в соответствии с локалью в строковом формате
        • bases - массив, содержащий UUID оснований;
        • data - Также должны отображаться данные из формы "Дополнительной карточки";
        • mandatoryFields - представляет собой массив строк с кодами обязательных для заполнения полей. В случае, если какое-либо из полей РКК передается в виде нескольких полей JSON, в mandatoryFields указываются они все
        *так же вовращаются недефолтные поля, что включены в особой настройке карточки хотя бы одного типа документа данного типа журнала. Такими полями могут быть

        для документов с типом журнала входящий:

        • authorID - UUID автора документа

        для документов с типом журнала внутренний:

        • correspondentOrg - название корреспондента-организации в строковом формате
        • correspondent - название корреспондента в строковом формате
        • numberOut - номер исх. в строковом формате, установленном для данного документа
        • dateOut - дата исх. в формате "ГГГГ-ММ-ДД ЧЧ:ММ:СС"

        для документов с типом журнала исходящий:

        • numberOut - номер исх. в строковом формате, установленном для данного документа
        • dateOut - дата исх. в формате "ГГГГ-ММ-ДД ЧЧ:ММ:СС"

        В случае неуспешного выполнения возвращается json с полями:

        • errorCode - код выполнения (число, отличное от 0);
        • errorMessage - "Ошибка получения РКК документа".

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

         {
              "content": "Future requests.",
              "registerID": "888cfa2e-6d55-4ed5-b1be-890ffad560dq",
              "registerName": "Исходящие документы",
              "number": "{obwii}-{dd}.{MM}.{yyyy}",
              "regDate": "",
              "correspondentOrg": "",
              "correspondent": "",
              "authorID": "179bda2e-6d55-4ed5-b1be-890ffad280ba",
              "authorName": "Aбдрешен Леонид Аркадьевич",
              "registeredByID": "",
              "registeredByName": ""
              "controlled": true,
              "caseID": "",
              "caseName": "",
              "bases": [],
              "data":[
                  {
                  "id": "cmp-numericinput",
                  "type": "numericinput",
                  "value": "20.00"
                  },
                  {
                  "id": "cmp-id",
                  "type": "personlink",
                  "label": "Label-text",
                  "value": "идентификатор записи адресной книги"
                  }
              ],
              "mandatoryFields": [
                  "caseID", "caseName", "executorID", "executorName"
              ]
         }
         
      • finDocByNumber

        public java.lang.String finDocByNumber(java.lang.String number)

        API-метод, позволяющий получить идентификатор документа по его номеру (если таких документов несколько, возвращается первый).

        URL rest/api/docflow/findDocByNumber
        Method GET

        Parameters:
        number - номер (обяз.);
        Returns:
        В случае успешного выполнения возвращается идентификатор документа

        В случае неуспешного выполнения возвращается json с полями:

        • errorCode - код выполнения (число, отличное от 0)
        • errorMessage - "Ошибка получения подписей документа"
      • getSignList

        public java.lang.String getSignList(java.lang.String documentID,
                                            java.lang.String locale)

        API-метод, позволяющий получить список подписей для данного документа.

        URL rest/api/docflow/doc/sign_list
        Method GET

        Parameters:
        documentID - UUID документа (обяз.)
        locale - локаль
        Returns:
        В случае успешного выполнения json возвращает массив, содержащий элементы со следующими полями:
        • userID - UUID подписавшего сотрудника
        • userName - Ф.И.О. подписавшего сотрудника
        • userPosition - должность подписавшего сотрудника
        • date - стамп времени подписания в формате: "ГГГГ-ММ-ДД ЧЧ:ММ:СС"
        • comment - комментарий
        • actionType - тип действия, при котором совершили подписание. Один из следующих вариантов:
          • SIGN_ITEM - подписано с помощью действия "Подписать"
          • AGREEMENT_ITEM - подписано при согласовании
          • APPROVAL_ITEM - подписано при утверждении
          • ACQUAINTANCE_ITEM - подписано при ознакомлении
        • signType - тип подписи. Один из следующих вариантов
          • SIMPLE - обычная подпись
          • ECS - электронная подпись, при её валидности

        В случае неуспешного выполнения возвращается json с полями:

        • errorCode - код выполнения (число, отличное от 0)
        • errorMessage - "Ошибка получения подписей документа"

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

             [
             {
              "userID": "179bda2e-6d55-4ed5-b1be-890ffad280ba",
              "userName": "Калиев И.О.",
              "userPosition": "Генеральный директор",
              "date": "2015-05-19 11:12:13",
              "comment": "",
              "actionType": "SIGN_ITEM",
              "signType": "SIMPLE"
             },
             {
              "userID": "78w96q2e-6d55-4ed5-b1be-890ffad280ba",
              "userName": "Захаров М.П.",
              "userPosition": "Заместитель директора",
              "date": "2015-05-20 10:11:12",
              "comment": "OK",
              "actionType": "AGREEMENT_ITEM"
              "signType": "ECS"
             }
             ]
         
      • sign

        public Response sign(java.lang.String locale,
                             java.lang.String documentID,
                             java.lang.String rawdata,
                             java.lang.String signdata,
                             java.lang.String certificate,
                             java.lang.String certID)

        API-метод подписания документа

        URL rest/api/docflow/sign
        Method POST

        Parameters:
        locale - локаль пользователя
        documentID - UUID документа (обяз.)
        rawdata - данные для подписи base64 (обяз.)
        signdata - Base64 закодированная строка с подписью (обяз., если включена настройка "Требовать ключ и сертификат")
        certificate - сертификат base64 (обяз. если включена настройка требовать ключ и сертификат)
        certID - идентификатор сертификата, получаемый в методе verificationkey (certID::::sigalg) (обяз., если включена настройка "Требовать ключ и сертификат");
        Returns:
        В случае успешного выполнения json со следующими полями:
        • errorCode = 0
        • errorMessage = Данные сохранены
        в случае ошибки вернет json со следующими полями
        • errorCode = код ошибки
        • errorMessage = сообщение
      • transferDocumentAttachments

        public Response transferDocumentAttachments(FileTransferOperation operation)

        Метод API для трансфера файлов вложений из одного документа в другой

        URL: rest/api/docflow/doc/attachment/transfer
        Method POST
        Parameters:
        operation - - Метод принимает следующие параметры (json):

        toDocId - UUID документа, в который будут отправлены файлы (обяз.)
        path - параметр, определяющий в какую папку контейнера файлов документа необходимо положить файл. Возможные значения:
        • ase:attachmentContainer - папка "Приложения"
        • ase:workContainer - папка "Прочие"
        По умолчанию принимается значение ase:attachmentContainer.
        fromDocId - UUID документа, из которого будут отправлены файлы (обяз.)
        fileCollision - параметр (необяз., по умолчанию skip), который определяет поведение метода при совпадении названия файла или идентификатора файла (в том числе файл с другим идентификатором, но одинаковым названием, если передача файла производится по идентификатору). Принимает следующие параметры:
        • overwrite - файл полностью перезаписывается
        • skip - данный файл пропускается, то есть не передается
        • version - файл добавляется в качестве новой версии файла.

        files - массив отправляемых файлов из документа fromDocId со следующими полями (обяз.):
        • fileUUID - идентификатор файла
        • fileName - название файла с расширением
        • filePath - папка, контейнера файлов документа, в которой находится данный файл (необяз., по умолчанию ase:attachmentContainer). Используется только вместе с параметром fileName. Может принимать следующие значения:
          • ase:attachmentContainer - папка "Приложения"
          • ase:workContainer - папка "Прочие".

        В элементе массива обязательно должен присутствовать либо параметр fileUUID, либо fileName.
        Если в элементе массива введен fileUUID, то параметры fileName, filePath игнорируются и передается файл с указанным идентификатором. Если в элементе массива не введен fileUUID, то передается файл с указанным названием.
        Если в массиве один и тот же файл указан несколько раз, то передается он только один раз. Для следующих случаев:
        • два элемента массива содержат одинаковые fileUUID
        • два элемента массива содержат одинаковые fileName и filePath (одновременно)
        • один из элементов массива содержит fileName и filePath файла, идентификатор которого соответствует одному из fileUUID, указанному в другом элементе массива.

        Пример передаваемого запроса:
            {
            "toDocId" : "359e0450-5248-11e6-81e4-5a14ad700067",
            "path": "ase:workContainer",
            "fromDocId" : "96491790-4e33-11e6-a28a-5a14ad700067",
            "fileCollision" : "version",
            "files":
            [
            { "fileUUID" : "0db3a170-4e38-11e6-8030-001ef892a4ee"},
            { "fileUUID" : "f30f6b31-4cbe-11e6-8030-001ef892a4ee"},
            {
            "fileUUID" : "831b5d10-4da5-11e6-812b-5a14ad700067",
            "fileName" : "test.pdf",
            "filePath" : "ase:workContainer"
            },
        
            {
            "fileName" : "test.htd",
            "filePath" : "ase:workContainer`"
            },
            {  "fileName" : "file1.pdf"}
            ]
            }
         
        Returns:
        В случае успешного выполнения json со следующими полями:
        • errorCode = 0
        • errorMessage = Файлы добавлены
        в случае ошибки вернет json со следующими полями
        • errorCode = код ошибки
        • errorMessage = сообщение
        Пример возвращаемого json-объекта при успешном выполнении метода:
               {
                    "errorCode": 0,
                    "errorMessage": "Файлы добавлены"
               }
         
      • getDocTypes

        public Response getDocTypes(java.lang.String registerID,
                                    java.lang.String description,
                                    int page,
                                    int recordsCount,
                                    java.lang.String locale)

        Метод API для получения списка типов документов
        URL: rest/api/docflow/doctypes
        Method GET

        Parameters:
        registerID - идентификатор журнала (необяз.). При вводе данного параметра возвращаются те типы документов, которые относятся к данному журналу
        description - параметр (необяз., по умолчанию short), который принимает следующие значения:
        • full - возвращается полное описание типа документа
        • short - возвращается только идентификатор, код и название типа документа
        page - номер страницы результатов, начиная с которой будут возвращены записи (по умолчанию 0)
        recordsCount - количество результатов, которые необходимо вернуть (по умолчанию 30). Максимальное значение параметра 100
        locale - локаль
        Returns:
        Данный метод возвращает список всех типов документов либо при указании идентификатора журнала список типов документов данного журнала с полным либо кратким описанием. Список типов документов возвращается с учетом прав пользователя, который вызывает API метод, на данные типы документов. Если у пользователя нет доступа к какому-либо типу документа, то данный тип не возвращается в списке.
        Метод при условии description=short возвращает массив JSON, состоящий из следующих полей
        • typeID - идентификатор типа документа
        • code - код типа документа
        • name - название типа документа
        Метод при условии description=full возвращает массив JSON, состоящий из следующих полей:
        • typeID - идентификатор типа документа
        • code - код типа документа
        • name - название типа документа
        • calc_method_term - способ расчета срока, один из следующих вариантов:
          • WORKING_DAYS - в рабочих днях
          • CALENDAR_DAYS - в календарных днях
        • duration - длительность по умолчанию (в днях)
        • input_method_term - способ ввода срока, один из следующих вариантов:
          • DURATION - длительность
          • FINISH_DATE - дата завершения
        • registerID - идентификатор журнала
        • baseRegisterID - идентификатор базового журнала
        • formID - идентификатор формы
        • form_type - тип реализации формы, один из следующих вариантов:
          • 0 - форма на основе xform
          • 1 - новая реализация форм
        • routes - массив, который содержит названия шаблонов маршрутов
        • checkDocCard - валидация ркк перед отправкой: true - проводится валидация РКК перед отправкой документа, false - валидация не проводится
        • demand_resuser - требовать ввода исполнителя: true - требуется ввод исполнителя перед отправкой документа, false - ввод исполнителя не требуется
        • demand_docfile - требовать указания дела: true - требуется указание дела перед отправкой документа, false - указание дела не требуется
        • demand_regcomment - требовать ввода комментария при регистрации: true - требуется ввод комментария при регистрации, false - ввод комментария не требуется
        • reg_condition - массив, который содержит условия регистрации. В данном массиве возвращаются только те условия, которые отмечены для проверки на наличие. Если ни одно из условий не отмечено, то массив возвращается пустой. Условия регистрации следующие
          • `demand_signature` - наличие подписи
          • `demand_approval` - наличие утверждения
          • `demand_resolution` - наличие резолюции
        • fields - массив объектов со следующими полями:
          • name - название поля РКК, один из следующих вариантов:
            • subject - краткое содержание
            • doc_type - тип документа
            • number - номер
            • reg_date - дата регистрации
            • duration - длительность/завершение
            • correspondent_org - корреспондент (орг)
            • correspondent - корреспондент
            • author - автор
            • reg_user - зарегистрировал
            • control - является контрольным
            • base_number - номер исх.
            • base_date - дата исх.
            • doc_file - дело
            • base - основание
            • user - исполнитель
            В данном массиве объектов возвращаются только те поля, которые отмечены для отображения в карточке документа. Поля, которые не отображаются в карточке документа, в данном массиве объектов не возвращаются.
          • number - порядковый номер поля, отсутствует только для поля user.
        Пример возвращаемого массива при условии description=full:
            [
            {
                "typeID" : "f30f6b31-4cbe-12e31f70-8030-0012a4ee",
                    "code" : "internal",
                    "name" : "Внутренние документы",
                    "calc_method_term" : "WORKING_DAYS",
                    "duration" : 5,
                    "input_method_term" : "DURATION",
                    "registerID" : "8f85e270-ebf1-11e5-835c-525400bb7fc6",
                    "baseRegisterID" : "aa55e270-ebf1-11e5-835c-525400bb7fc6",
                    "formID" : "52sf2270-4cc0-11e6-8030-001ef892a4ee",
                    "form_type" : 0,
                    "routes" :
                [
                "Шаблон приказов",
                        "Шаблон заявлений"
                ],
                "checkDocCard" : false,
                    "demand_resuser" : false,
                    "demand_docfile" : false,
                    "demand_regcomment" : false,
                    "reg_condition" :
                [
                "demand_signature",
                        "demand_approval"
                ],
                "fields" :
                [
                { "name" : "subject", "number" : 1  },
                { "name" : "doc_type", "number" : 2  },
                { "name" : "number", "number" : 3   },
                { "name" : "reg_date", "number" : 4  },
                { "name" : "correspondent_org", "number" : 5  },
                { "name" : "correspondent", "number" : 6  },
                { "name" : "author", "number" : 7 },
                { "name" : "reg_user", "number" : 9 },
                { "name" : "control", "number" : 10  },
                { "name" : "doc_file", "number" : 13  },
                { "name" : "base", "number" : 14  }
                ]
            },
            {
                "typeID" : "0db3a170-4e38-11e6-8030-001ef892a4ee",
                    "code" : "incoming",
                    "name" : "Входящие документы",
                    "calc_method_term" : "WORKING_DAYS",
                    "duration" : 5,
                    "input_method_term" : "DURATION",
                    "registerID" : "8f85e270-ebf1-11e5-835c-525400bb7fc6",
                    "baseRegisterID" : "aa55e270-ebf1-11e5-835c-525400bb7fc6",
                    "formID" : "22s12270-4cc0-11e6-8030-001ef892a4ee",
                    "form_type" : 0,
                    "routes" :
                [
                "Шаблон входящих писем",
                        "Шаблон писем"
                ],
                "checkDocCard" : false,
                    "demand_resuser" : false,
                    "demand_docfile" : false,
                    "demand_regcomment" : false,
                    "reg_condition" :
                [
                "demand_signature",
                        "demand_approval"
                ],
                "fields" :
                [
                { "name" : "subject", "number" : 1  },
                { "name" : "doc_type", "number" : 2  },
                { "name" : "number", "number" : 3   },
                { "name" : "reg_date", "number" : 4  },
                { "name" : "correspondent_org", "number" : 5  },
                { "name" : "correspondent", "number" : 6  },
                { "name" : "author", "number" : 7 },
                { "name" : "reg_user", "number" : 9 },
                { "name" : "control", "number" : 10  },
                { "name" : "doc_file", "number" : 13  },
                { "name" : "base", "number" : 14  }
                ]
            },
            {
                "typeID" : "fd96dff0-4e37-11e6-8030-001ef892a4ee",
                    "code" : "outgoing",
                    "name" : "Исходящие документы",
                    "calc_method_term" : "WORKING_DAYS",
                    "duration" : 5,
                    "input_method_term" : "DURATION",
                    "registerID" : "8f85e270-ebf1-11e5-835c-525400bb7fc6",
                    "baseRegisterID" : "aa55e270-ebf1-11e5-835c-525400bb7fc6",
                    "formID" : "21df270-4cc0-11e6-8030-001ef892a4ee",
                    "form_type" : 0,
                    "routes" :
                [
                "Шаблон заявок",
                        "Шаблон заявок на закуп"
                ],
                "checkDocCard" : false,
                    "demand_resuser" : false,
                    "demand_docfile" : false,
                    "demand_regcomment" : false,
                    "reg_condition" :
                [
                "demand_signature",
                        "demand_approval"
                ],
                "fields" :
                [
                { "name" : "subject", "number" : 1  },
                { "name" : "doc_type", "number" : 2  },
                { "name" : "number", "number" : 3   },
                { "name" : "reg_date", "number" : 4  },
                { "name" : "correspondent_org", "number" : 5  },
                { "name" : "correspondent", "number" : 6  },
                { "name" : "author", "number" : 7 },
                { "name" : "reg_user", "number" : 9 },
                { "name" : "control", "number" : 10  },
                { "name" : "doc_file", "number" : 13  },
                { "name" : "base", "number" : 14  }
                ]
            }
            ]
         
      • getDocType

        public Response getDocType(java.lang.String code,
                                   java.lang.String locale)

        Метод API для получения описания типа документа
        URL: rest/api/docflow/doctypes/{docTypeCode}
        Method GET

        Parameters:
        code - код типа документа (обяз.);
        locale - локаль
        Returns:
        Метод возвращает полное описание типа документа по его коду, в том числе и перечень отображаемых в карточке документа полей с учетом прав пользователя, который вызывает API метод, на данный тип документа. Метод возвращает объект JSON, состоящий из следующих полей
        • typeID - идентификатор типа документа
        • code - код типа документа
        • name - название типа документа
        • calc_method_term - способ расчета срока, один из следующих вариантов:
          • WORKING_DAYS - в рабочих днях
          • CALENDAR_DAYS - в календарных днях
        • duration - длительность по умолчанию (в днях)
        • input_method_term - способ ввода срока, один из следующих вариантов:
          • DURATION - длительность
          • FINISH_DATE - дата завершения
        • registerID - идентификатор журнала
        • baseRegisterID - идентификатор базового журнала
        • formID - идентификатор формы
        • form_type - тип реализации формы, один из следующих вариантов:
          • 0 - форма на основе xform
          • 1 - новая реализация форм
        • routes - массив, который содержит названия шаблонов маршрутов
        • checkDocCard - валидация ркк перед отправкой: true - проводится валидация РКК перед отправкой документа, false - валидация не проводится
        • demand_resuser - требовать ввода исполнителя: true - требуется ввод исполнителя перед отправкой документа, false - ввод исполнителя не требуется
        • demand_docfile - требовать указания дела: true - требуется указание дела перед отправкой документа, false - указание дела не требуется
        • demand_regcomment - требовать ввода комментария при регистрации: true - требуется ввод комментария при регистрации, false - ввод комментария не требуется
        • reg_condition - массив, который содержит условия регистрации. В данном массиве возвращаются только те условия, которые отмечены для проверки на наличие. Если ни одно из условий не отмечено, то массив возвращается пустой. Условия регистрации следующие
          • `demand_signature` - наличие подписи
          • `demand_approval` - наличие утверждения
          • `demand_resolution` - наличие резолюции
        • fields - массив объектов со следующими полями:
          • name - название поля РКК, один из следующих вариантов:
            • subject - краткое содержание
            • doc_type - тип документа
            • number - номер
            • reg_date - дата регистрации
            • duration - длительность/завершение
            • correspondent_org - корреспондент (орг)
            • correspondent - корреспондент
            • author - автор
            • reg_user - зарегистрировал
            • control - является контрольным
            • base_number - номер исх.
            • base_date - дата исх.
            • doc_file - дело
            • base - основание
            • user - исполнитель
            В данном массиве объектов возвращаются только те поля, которые отмечены для отображения в карточке документа. Поля, которые не отображаются в карточке документа, в данном массиве объектов не возвращаются.
          • number - порядковый номер поля, отсутствует только для поля user.
        Пример возвращаемого объекта JSON при указании кода типа документа:
            {
                "typeID" : "fd96dff0-4e37-11e6-8030-001ef892a4ee",
                    "code" : "outgoing",
                    "name" : "Исходящие документы",
                    "calc_method_term" : "WORKING_DAYS",
                    "duration" : 5,
                    "input_method_term" : "DURATION",
                    "registerID" : "8f85e270-ebf1-11e5-835c-525400bb7fc6",
                    "baseRegisterID" : "aa55e270-ebf1-11e5-835c-525400bb7fc6",
                    "formID" : "66df2270-4cc0-11e6-8030-001ef892a4ee",
                    "form_type" : 0,
                    "routes" :
                [
                "Шаблон заявок",
                        "Шаблон заявок на закуп"
                ],
                "checkDocCard" : false,
                    "demand_resuser" : false,
                    "demand_docfile" : false,
                    "demand_regcomment" : false,
                    "reg_condition" :
                [
                "demand_signature",
                        "demand_approval"
                ],
                "fields" :
                [
                { "name" : "subject", "number" : 1  },
                { "name" : "doc_type", "number" : 2  },
                { "name" : "number", "number" : 3   },
                { "name" : "reg_date", "number" : 4  },
                { "name" : "correspondent_org", "number" : 5  },
                { "name" : "correspondent", "number" : 6  },
                { "name" : "author", "number" : 7 },
                { "name" : "reg_user", "number" : 9 },
                { "name" : "control", "number" : 10  },
                { "name" : "doc_file", "number" : 13  },
                { "name" : "base", "number" : 14  }
                ]
            }
         
      • sendDocument

        public Response sendDocument(DocSendInfo sendInfo)

        Метод API для пересылки документов URL: rest/api/docflow/doc/send
        Method POST
        Метод принимает следующие входные параметры (json):

        documentID - uuid документа, который необходимо переслать (обяз.);
        users - массив uuid пользователей, которым необходимо переслать документ;
        groups - массив uuid групп пользователей, которым необходимо переслать документ;
        emails - массив произвольных e-mail, которым необходимо переслать документ;
        locale - локаль. Пример передаваемого запроса: { "documentID": "7ce1feff-a3f0-4f4e-8bf6-59e37caf553f", "users": ["7b953be8-bddb-4ce4-bbfd-ae9548f69c7f", "e65f62fa-7045-4b5b-b61d-46ca00ea7af1"], "groups": [1, 5], "emails": ["bobrov@arta.kz"] }

        Parameters:
        sendInfo - json-объект;
        Returns:
        В случае успешного выполнения json со следующими полями:
        • errorCode = 0
        • errorMessage = Документ отправлен
        в случае ошибки вернет json со следующими полями
        • errorCode = код ошибки
        • errorMessage = сообщение
        Пример возвращаемого json-объекта при успешном выполнении метода:
                {
                    "errorCode": 0,
                    "errorMessage": "Документ отправлен"
                }
         
      • getDocumentProcesses

        public Response getDocumentProcesses(java.lang.String documentID,
                                             java.lang.String locale)

        Метод API получения списка ид процессов маршрута в документе, которые запустил авторизованный пользователь URL: rest/api/docflow/doc/processes
        Method GET
        Пример возвращаемого json-объекта при успешном выполнении метода:

             [
                {
                    "procInstID": "600149",
                    "name": "13.06.2018 12.14.27"
                },
                {
                    "procInstID": "600153",
                    "name": "13.06.2018 12.14.34"
                }
             ]
         
        Parameters:
        documentID - ид документа
        locale - локаль
        Returns:
        список процессов маршрута
      • stopRoute

        public Response stopRoute(java.lang.String documentID,
                                  java.lang.String procInstID,
                                  java.lang.String locale)

        Метод API для прерывания маршрута документа URL: rest/api/docflow/doc/stop_route
        Method POST
        В случае успешного выполнения json со следующими полями:

        • errorCode = 0
        • errorMessage = Маршрут прерван
        в случае ошибки вернет json со следующими полями
        • errorCode = код ошибки
        • errorMessage = сообщение
        Пример возвращаемого json-объекта при успешном выполнении метода:
             {
                "errorCode": 0,
                 "errorMessage": "Маршрут прерван"
             }
             
        Parameters:
        documentID - - ид документа, в случае передачи этого параметра, будут прерваны все маршруты в документе, которые запустил авторизованный пользователь
        procInstID - - ид процесса прерываемого маршрута (procInstID приоритетнее, чем documentID)
        locale - - локаль
        Returns:
kz.arta.synergy.api.rest.translation

Class TranslationService

  • java.lang.Object
    • kz.arta.synergy.api.rest.translation.TranslationService
  • All Implemented Interfaces:
    TranslationServiceIF


    public class TranslationService
    extends java.lang.Object
    implements TranslationServiceIF
    User: Mikhail Milyutin Date: 14.12.15. Time: 11:49. Сервисы для работы с языковыми настройками (Переводы, Языки)
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String getLocale() 
      java.lang.Integer getSearchObjectsSize(java.lang.String localeID, java.lang.String searchString, int entityType, boolean notTranslated)
      Получение размера возвращаемого результата при поиске
      java.util.List<SynergyLocale> getSynergyLocales(boolean visible)
      Получение языков находящихся в Synergy
      EntityTranslation getTranslations(long translationID)
      Получение переводов по id перевода
      Translation getTranslationSize(int entityType, boolean notTranslated)
      Получение количества записей при запросе ресурсов
      java.lang.Boolean removeTranslations(long translationID)
      Удаление перевода сущности
      java.lang.Boolean saveLocales(java.util.List<SynergyLocale> locales)
      Сохранение локалей
      java.lang.Boolean saveResourceTranslations(java.util.List<TranslationObject> translations)
      Сохранение переводов сущностей и переводов сообшений, используется в редакторе ресурсов
      java.lang.Long saveTranslations(EntityTranslation entityTranslation)
      Сохранение переводов
      java.util.List<TranslationObject> searchObjects(java.lang.String localeID, java.lang.String searchString, int start, int length, int entityType, boolean notTranslated)
      Поиск объектов соответствующий запросу частями
      • Methods inherited from class java.lang.Object

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

      • TranslationService

        public TranslationService()
    • Method Detail

      • getSynergyLocales

        public java.util.List<SynergyLocale> getSynergyLocales(boolean visible)
        Description copied from interface: TranslationServiceIF
        Получение языков находящихся в Synergy
        Specified by:
        getSynergyLocales in interface TranslationServiceIF
        Parameters:
        visible - - только видимые
      • saveLocales

        public java.lang.Boolean saveLocales(java.util.List<SynergyLocale> locales)
        Description copied from interface: TranslationServiceIF
        Сохранение локалей
        Specified by:
        saveLocales in interface TranslationServiceIF
        Parameters:
        locales - - список локалей
      • getTranslations

        public EntityTranslation getTranslations(long translationID)
        Description copied from interface: TranslationServiceIF
        Получение переводов по id перевода
        Specified by:
        getTranslations in interface TranslationServiceIF
        Parameters:
        translationID - - id перевода
      • saveTranslations

        public java.lang.Long saveTranslations(EntityTranslation entityTranslation)
        Description copied from interface: TranslationServiceIF
        Сохранение переводов
        Specified by:
        saveTranslations in interface TranslationServiceIF
        Parameters:
        entityTranslation - - переводы
      • getTranslationSize

        public Translation getTranslationSize(int entityType,
                                              boolean notTranslated)
        Description copied from interface: TranslationServiceIF
        Получение количества записей при запросе ресурсов
        Specified by:
        getTranslationSize in interface TranslationServiceIF
      • removeTranslations

        public java.lang.Boolean removeTranslations(long translationID)
        Description copied from interface: TranslationServiceIF
        Удаление перевода сущности
        Specified by:
        removeTranslations in interface TranslationServiceIF
        Parameters:
        translationID - - id перевода
      • saveResourceTranslations

        public java.lang.Boolean saveResourceTranslations(java.util.List<TranslationObject> translations)
        Description copied from interface: TranslationServiceIF
        Сохранение переводов сущностей и переводов сообшений, используется в редакторе ресурсов
        Specified by:
        saveResourceTranslations in interface TranslationServiceIF
        Parameters:
        translations - - список объектов с переводами
      • searchObjects

        public java.util.List<TranslationObject> searchObjects(java.lang.String localeID,
                                                               java.lang.String searchString,
                                                               int start,
                                                               int length,
                                                               int entityType,
                                                               boolean notTranslated)
        Description copied from interface: TranslationServiceIF
        Поиск объектов соответствующий запросу частями
        Specified by:
        searchObjects in interface TranslationServiceIF
        Parameters:
        localeID - - локаль
        searchString - - строка поиска, может быть пустой, тогда будет выборка из всех, нужно для выборки по типу и непереведенности
        start - - откуда начинать выбирать
        length - - сколько выбрать
        entityType - - тип сущности
        notTranslated - - выбирать только не переведенные
      • getSearchObjectsSize

        public java.lang.Integer getSearchObjectsSize(java.lang.String localeID,
                                                      java.lang.String searchString,
                                                      int entityType,
                                                      boolean notTranslated)
        Description copied from interface: TranslationServiceIF
        Получение размера возвращаемого результата при поиске
        Specified by:
        getSearchObjectsSize in interface TranslationServiceIF
        Parameters:
        localeID - - локаль
        searchString - - строка поиска, может быть пустой, тогда будет выборка из всех, нужно для выборки по типу и непереведенности
        entityType - - тип сущности
        notTranslated - - выбирать только не переведенные
      • getLocale

        public java.lang.String getLocale()
kz.arta.synergy.api.rest.auth

Class AuthService

  • java.lang.Object
    • kz.arta.synergy.api.rest.auth.AuthService


  • public class AuthService
    extends java.lang.Object
    Сервис в котором есть методы для авторизации пользователя Created by: Abzal Kultayev Date: 28.04.16 Time: 16:03
    • Constructor Summary

      Constructors 
      Constructor and Description
      AuthService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response checkUser()
      API для авторизации пользователя
      Response checkUserIsAdmin(java.lang.String role)
      API для авторизации суперадмина и суперметодолога

      URL rest/api/auth/{role}
      Method 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

      • AuthService

        public AuthService()
    • Method Detail

      • checkUserIsAdmin

        public Response checkUserIsAdmin(java.lang.String role)
        API для авторизации суперадмина и суперметодолога

        URL rest/api/auth/{role}
        Method GET
        Parameters:
        role - роль пользователя, с которой он хочет авторизоваться, один из трех вариантов
        • user - пользователь (по умолчанию)
        • methodologist - суперметодолог
        • administrator - суперадминистратор
        Returns:
        HTTP код 200 в случае успешной аутентификации, 401 - если пользователь не имеет доступа в систему, не найден или передан неправильный пароль, 403 - в случае, если он не обладает указанной ролью, 500 - ошибка на сервере.

        Альтернативные потоки событий.
        Альтернативный поток №1. Переданный в HTTP Basic Auth пароль пользователя неверен, такой пользователь отсутствует в системе или он не имеет доступа в систему. Сервер возвращает ошибку HTTP 401.
        Альтернативный поток №2. Пользователь не обладает указанной в параметре ролью. Сервер возвращает ошибку HTTP 403.
        Альтернативный поток №3. Во время выполнения метода на сервере произошла ошибка. Сервер возвращает ошибку HTTP 500.
      • getUserID

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

Class PersonalRecordService

  • java.lang.Object
    • kz.arta.synergy.api.rest.personalrecord.PersonalRecordService


  • public class PersonalRecordService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 06.05.13 Time: 12:57 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 getForms(java.lang.String userID, java.lang.String locale)
      Метод возвращает информацию о личных карточках пользователя (названия и идентификаторы форм)

      URL rest/api/personalrecord/forms/{userID}
      Method 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

      • PersonalRecordService

        public PersonalRecordService()
    • Method Detail

      • getForms

        public java.lang.String getForms(java.lang.String userID,
                                         java.lang.String locale)

        Метод возвращает информацию о личных карточках пользователя (названия и идентификаторы форм)

        URL rest/api/personalrecord/forms/{userID}
        Method GET

        Метод возвращает список из элементов, каждый из которых описывает одну личную карточку. Для каждой личной карточки возвращаются поля:
        form-uuid - идентификатор формы
        formCode - код формы
        name - название личной карточки
        editable - есть ли право у данного пользователя менять поля данной карточки
        data-uuid - идентификатор файла по форме
        mandatory - является ли данная карточка обязательной к заполнению

        Parameters:
        userID - UUID пользователя, чьи карточки необходимо получить (PathParam)
        locale - локаль пользователя, делающего запрос (QueryParam)
        Returns:
        список элементов json
      • getUserID

        public java.lang.String getUserID()
kz.arta.synergy.ejb.forms.servlet

Class ASFormSaveServlet



  • public class ASFormSaveServlet
    extends CommonApiServlet
    Created by exile Date: 28.04.15 Time: 9:42
    • Constructor Detail

      • ASFormSaveServlet

        public ASFormSaveServlet()
    • Method Detail

      • doPost

        protected void doPost(HttpServletRequest req,
                              HttpServletResponse res)
                       throws ServletException,
                              java.io.IOException
        Throws:
        ServletException
        java.io.IOException
kz.arta.synergy.ejb.forms.servlet

Class ASFormMergeServlet



  • public class ASFormMergeServlet
    extends CommonApiServlet
    Created by Alex Basheyeva Date: 07.08.17 Time: 12:25
    • Constructor Detail

      • ASFormMergeServlet

        public ASFormMergeServlet()
    • Method Detail

      • doPost

        protected void doPost(HttpServletRequest req,
                              HttpServletResponse res)
                       throws ServletException,
                              java.io.IOException
        Throws:
        ServletException
        java.io.IOException
kz.arta.synergy.ejb.forms.servlet

Class CommonApiServlet

  • java.lang.Object
    • HttpServlet
      • kz.arta.synergy.ejb.forms.servlet.CommonApiServlet
    • Constructor Summary

      Constructors 
      Constructor and Description
      CommonApiServlet() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected Actor getActor(HttpServletRequest req, HttpServletResponse res) 
      protected java.lang.String getLocale(HttpServletRequest req) 
      protected void sendAnswer(HttpServletResponse res, java.lang.Object message) 
      protected void sendError(HttpServletResponse res, int httpCode, int code, java.lang.String message) 
      • Methods inherited from class java.lang.Object

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

      • CommonApiServlet

        public CommonApiServlet()
    • Method Detail

      • getLocale

        protected java.lang.String getLocale(HttpServletRequest req)
      • getActor

        protected Actor getActor(HttpServletRequest req,
                                 HttpServletResponse res)
      • sendAnswer

        protected void sendAnswer(HttpServletResponse res,
                                  java.lang.Object message)
      • sendError

        protected void sendError(HttpServletResponse res,
                                 int httpCode,
                                 int code,
                                 java.lang.String message)
                          throws java.io.IOException
        Throws:
        java.io.IOException
kz.arta.synergy.ejb.forms.servlet

Class ASFormAppendTableDataServlet



  • public class ASFormAppendTableDataServlet
    extends CommonApiServlet
    Created by Alex Basheyeva Date: 07.08.17 Time: 12:25
    • Constructor Detail

      • ASFormAppendTableDataServlet

        public ASFormAppendTableDataServlet()
    • Method Detail

      • doPost

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