arta.synergy.web.common.client.util

Interface ProjectTemplateService

arta.synergy.ejb.rest

Class SignService

kz.arta.synergy.api.rest.projects.template

Class ProjectTemplateService

kz.arta.synergy.api.rest.projects

Class ProjectService

kz.arta.synergy.api.rest.confimport

Class ImportConfigurationServlet

kz.arta.synergy.api.rest.dictionary

Class DictionaryService

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


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

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

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

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

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

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

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

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

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

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

      URL rest/api/dictionary/get_by_code
      Method GET


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

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

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

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

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

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

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

      java.lang.String saveItem(DictionaryItem item) 
      java.lang.String saveTranslations(java.lang.String id, java.lang.String nameId, java.lang.String mapJS) 
      java.lang.String updateDictionary(java.util.Dictionary dictionary) 
      • Methods inherited from class java.lang.Object

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

      • DictionaryService

        public DictionaryService()
    • Method Detail

      • getDictionaryValues

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

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

        URL rest/api/dictionary/get_by_code
        Method GET


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

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

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


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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public java.lang.String getHost()
      • findDictionaryItems

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

        public java.lang.String updateDictionary(java.util.Dictionary dictionary)
      • saveItem

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

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

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

Class DictionariesService

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


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

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

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

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

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

      • Methods inherited from class java.lang.Object

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

      • DictionariesService

        public DictionariesService()
    • Method Detail

      • getDictionariesList

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

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

        URL rest/api/dictionaries
        Method GET

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Class RegistryService

  • java.lang.Object
    • kz.arta.synergy.api.rest.registry.RegistryService


  • public class RegistryService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 19.09.13 Time: 9:39 To change this template use File | Settings | File Templates.
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static Logger LOGGER1
      Создает новый документ по реестру

      URL rest/api/registry/create_doc
      Method GET

      Пример использования можно посмотреть в классе kz.arta.synergy.rest.api.sample.registry.CreateAndFillDocExample
    • Constructor Summary

      Constructors 
      Constructor and Description
      RegistryService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String activateRegistryDocument(java.lang.String documentID, java.lang.String dataUUID, java.lang.String summary, java.lang.String locale)
      Запускает событие "Активация" записи реестра (документа)

      URL rest/api/registry/activate_doc
      Method GET
      java.lang.String createCollectionRegistryDocument(java.lang.String registryID, java.lang.String registryCode, java.lang.String locale, int count)
      Создает указанное количество новых документов по реестру

      URL rest/api/registry/create_collection_doc
      Method GET
      java.lang.String createRegistryDocument(java.lang.String registryID, java.lang.String registryCode, java.lang.String locale, boolean wasOpened) 
      Response createRegistryDocumentWithRCC(CreateRegistryDocumentOperation operation)
      Создает новый документ по реестру с возможностью вводить значения полей РКК

      URL rest/api/registry/create_doc_rcc
      Method POST
      java.lang.String deleteRegistryDocument(java.lang.String documentID, java.lang.String dataUUID, java.lang.String locale)
      Запускает событие "Удаление" записи реестра (документа)

      URL rest/api/registry/delete_doc
      Method GET
      java.lang.String getFavorite(boolean bookmarks, boolean mobile, java.lang.String locale)
      Метод возвращает список документов для окошка "Избранное"

      URL: rest/api/registry/favorite
      Тип GET
      java.util.List<RegistryFilterJson> getFilterTree(java.lang.String parentID, java.util.List<RegisterFilter> filters, java.lang.String locale, boolean loadIcon) 
      java.lang.String getRegistry(java.lang.String registryID, java.lang.String code, java.lang.String user, java.lang.String locale)
      Получение данных о реестре

      URL rest/api/registry/info

      Response getRegistryData(java.lang.String registryID, java.lang.String registryCode, java.lang.String user, java.lang.String filterID, java.lang.String filterCode, java.lang.String searchString, int pageNumber, int countInPart, java.lang.String sortCmpID, boolean sortDesc)
      Получение записей реестра
      Response getRegistryDataExt(java.lang.String registryID, java.lang.String registryCode, java.lang.String filterID, java.lang.String filterCode, java.lang.String searchString, int pageNumber, int countInPart, java.lang.String locale, java.lang.String sortCmpID, boolean sortDesc, java.lang.String andCombineGroup, boolean loadData, java.util.List<java.lang.String> statuses)
      расширенный метод получения записей реестра

      URL rest/api/registry/data_ext
      Method GET

      Параметры поиска включают:

      registryID - идентификатор реестра (можно не указывать, если указан код)
      registryCode - код реестра (можно не указывать если указан идентификатор)
      filterID - идентификатор фильтра (не обязательное).

      Response getRegistryDataExtPost(java.lang.String registryID, java.lang.String registryCode, java.lang.String filterID, java.lang.String filterCode, java.lang.String searchString, int pageNumber, int countInPart, java.lang.String locale, java.lang.String sortCmpID, boolean sortDesc, java.lang.String andCombineGroup, boolean loadData, java.util.List<java.lang.String> statuses)
      расширенный метод получения записей реестра

      URL rest/api/registry/data_ext_post
      Method POST

      Параметры поиска включают:

      registryID - идентификатор реестра (можно не указывать, если указан код)
      registryCode - код реестра (можно не указывать если указан идентификатор)
      filterID - идентификатор фильтра (не обязательное).

      Response getRegistryFilters(java.lang.String registryID, java.lang.String registryCode, java.lang.String type, java.lang.String locale, java.lang.String getIcon)
      Получение фильтров реестра Тип: GET URL: rest/api/registry/filters
      Response getRegistryList(java.lang.String regGroupID, java.lang.String locale)
      Получение списка доступных пользователю реестров

      URL rest/api/registry/list
      Method GET
      Метод возвращает группы реестров и реестры в виде дерева (в соответствии с навигатором), а также список прав пользователя на данные реестры.

      java.lang.String getRoute(java.lang.String registryID, java.lang.String type, java.lang.String locale)
      Метод возвращает описание реестра

      URL: rest/api/registry/route
      Тип GET
      java.lang.String modifyRegistryDocument(java.lang.String documentID, java.lang.String dataUUID, java.lang.String summary, java.lang.String locale)
      Запускает событие "Изменение" записи реестра (документа)

      URL rest/api/registry/modify_doc
      Method GET
      <any> parseMetaItem(<any> metaItem, java.text.SimpleDateFormat fm) 
      java.lang.String registriesSearch(RegistryFileSearch searchParam)
      Поиск файлов в реестрах Тип: POST URL: rest/api/registry/files/search
      Response restoreRegistryDocument(java.lang.String documentId)
      Данный метод восстанавливает документ, идентификатор которого введен в запросе.
      java.lang.String searchFavorite(int start, java.lang.String search)
      Метод используется для поиска избранных реестров

      URL: rest/api/registry/search_favorite
      Тип GET
      java.lang.String setBookmark(java.lang.String itemID, boolean bookmark, java.lang.String locale)
      Метод устанавливет реестр как "Избранный", либо наоборот

      URL: rest/api/registry/set_bookmark
      Тип GET
      java.lang.String startRoute(java.lang.String registryID, java.lang.String documentID, java.lang.String subject, java.lang.String dataUUID, java.lang.String data, java.lang.String type, java.lang.String locale)
      Метод запускает маршрут

      >URL: rest/api/registry/route/start
      Тип POST
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
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.userchooser

Class UserChooserService

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


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

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

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

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

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

      `rest/api/userchooser/getUserCalendarStatus?

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

      URL rest/api/userchooser/search
      Method GET

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

      Response getUsers(java.util.List<java.lang.String> userIDs, java.lang.String locale)
      получение информации о пользователях (группах, контактах)
      url: /rest/api/userchooser/getUserInfo
      method : GET
      Response getUsersCalendarStatus(java.util.List<java.lang.String> users, java.lang.String date, java.lang.String locale)

      url: /rest/api/userchooser/getUsersCalendarStatus
      method : GET
      users параметры передаются userID=userid1&userID=userid2& etc
      date дата в формате yyy-MM-dd
      locale локаль
      Response getUsersExt(int startRecord, int recordsCount, java.lang.String locale, boolean showAll, int levelsCount, int groupID, java.lang.String search, java.lang.Integer operationType, java.lang.Integer ownerOperationType, java.lang.String departmentID, java.lang.String userID, java.lang.String showNoPosition, java.lang.String filterPositionID, java.lang.String filterDepartmentID, java.lang.String positionType, java.util.List<java.lang.String> customFields, java.lang.String userNameDisplayType, boolean showEmailContacts, boolean showGroups)
      получение списка пользователей
      url: /rest/api/userchooser/search_ext
      method : GET
      startRecord C какой записи поднимать пользователей
      recordsCount Какое кол-во записей поднимать
      locale локаль пользователя
      showAll Если значение переменной стоит true, то должны быть отображены не только подчиненные но и все пользователи
      levelsCount Количество уровней "вниз" по оргструктуре от данного пользователя
      groupID идентификатор группы.
      Response getUserStatusInPeriod(java.lang.String start, java.lang.String finish, java.lang.String type, java.lang.String locale, int startRecord, int recordsCount, java.lang.String sortByDate)
      Апи получения пользователей с назначенным календарем Метод возвращает список пользователей, назначенный период которых полностью или
      частично попадает в указанный промежуток времени.
      • Methods inherited from class java.lang.Object

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

      • UserChooserService

        public UserChooserService()
    • Method Detail

      • getUsers

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

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

        URL rest/api/userchooser/search
        Method GET

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

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

        rest/api/userchooser/search?showAll=false


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

        rest/api/userchooser/search?showAll=true


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

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


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

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


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

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


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

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


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

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


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

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


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

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

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

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

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

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

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

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

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

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

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

        url: /rest/api/userchooser/getUsersCalendarStatus
        method : GET
        users параметры передаются userID=userid1&userID=userid2& etc
        date дата в формате yyy-MM-dd
        locale локаль
        Returns:
        мэп следующего вида
        {
        "4bd1ef2e-3271-4dd3-ac67-9a8017abe1f4": {
        "type": 1,
        "status": "free",
        "color": "#fecebe",
        "title": "ОТПУСК!!!",
        "statusLabel": "отпуск",
        "startDate": 1456423200000,
        "finishDate": 1474480800000
        },
        "1": {
        "type": 1,
        "status": "free",
        "color": "#456789",
        "title": "Командировка",
        "statusLabel": "Командировка",
        "startDate": 1456423200000,
        "finishDate": 1474480800000
        }
        }

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

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

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

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

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

      • getUserStatusInPeriod

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
kz.arta.synergy.api.rest.ab

Class AddressBookService

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


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

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

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

      • AddressBookService

        public AddressBookService()
    • Method Detail

      • getAddressBookItem

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


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

      • getAddressBookItems

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

Class SettingsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.common.SettingsService


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

      Constructors 
      Constructor and Description
      SettingsService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String getProcesses(java.lang.String locale)
      Метод возвращает список основных процессов, которые используется в системе

      URL: rest/api/settings/get_processes
      Тип GET
      java.lang.String getSettings(java.lang.String locale)
      Метод возвращает настройки приложения, необходимые для работы приложения

      URL rest/api/settings/get
      Method GET



      day_start_time - время начала рабочего дня
      day_finish_time - время завершения рабочего дня
      work_completion_forms - список доступных форм завершения работы, для каждой формы завершения указываются
      id - код формы завершения
      name - название формы завершения
      docflow_demand_sign_before_assign - обязательно ли подписание документов перед отправкой;
      display_author_input - отображать ли поле "автор" при создании работы
      date_resolution_after_finish_document - разрешено ли ставить работы по резолюции, завершающиеся после документа
      allow_add_work_responsibles - разрешать добавлять к работе соисполнителей (не из числа подчниненных)
      set_work_from_responsible - ставить работы исполнителям от имени ответственного
      allow_resend_work - позволять передавать работу
      signed_off - лейбл "Отписано"
      current_priorities - текущие приоритеты в системе
      all_priorities - все доступные приоритеты в системе
      dialogs - все доступные диалоги в системе (name - имя, uuid - uuid, type - тип)
      work_items - доступные пункты меню (модуль "Потоки работ")
      document_items - доступные пункты меню (модуль "Документы")
      file_items - доступные пункты меню (модуль "Файлы")
      day_length - длительность рабочего дня (из календаря Системы)
      default_work_length - время на выполнение работы по умолчанию
      default_document_project_work_length - время на выполнение проекта документа (в т.ч. по шаблону) по умолчанию
      default_agreement_length - время на выполнение согласования по умолчанию
      default_approvement_length - время на выполнение утверждения по умолчанию
      default_acquaintance_length - время на выполнение ознакомления по умолчанию
      systemName - наименование системы
      resolution_work_types - доступные пункты типов работ по резолюции, для каждого пункта указываются
      needCert - требовать ключ и сертификат
      enableEDS - настроено ли ЭЦП dict_id - UUID записи справочника; item_number - порядковый номер пункта в выпадающем списке; item_process - действие, которое осуществляет пункт; item_name - название пункта типа работы.

      Response getWorkDays(java.lang.String date_start, java.lang.String date_finish, java.lang.String type)
      Метод возвращает периоды рабочего времени с типами для каждого дня в запрашиваемом интервале

      URL: rest/api/settings/calendar
      Тип GET
      java.lang.String setSettings(<any> settings)
      Изменение настроек системы.
      • Methods inherited from class java.lang.Object

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

      • SettingsService

        public SettingsService()
    • Method Detail

      • getSettings

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

        Метод возвращает настройки приложения, необходимые для работы приложения

        URL rest/api/settings/get
        Method GET



        day_start_time - время начала рабочего дня
        day_finish_time - время завершения рабочего дня
        work_completion_forms - список доступных форм завершения работы, для каждой формы завершения указываются
        id - код формы завершения
        name - название формы завершения
        docflow_demand_sign_before_assign - обязательно ли подписание документов перед отправкой;
        display_author_input - отображать ли поле "автор" при создании работы
        date_resolution_after_finish_document - разрешено ли ставить работы по резолюции, завершающиеся после документа
        allow_add_work_responsibles - разрешать добавлять к работе соисполнителей (не из числа подчниненных)
        set_work_from_responsible - ставить работы исполнителям от имени ответственного
        allow_resend_work - позволять передавать работу
        signed_off - лейбл "Отписано"
        current_priorities - текущие приоритеты в системе
        all_priorities - все доступные приоритеты в системе
        dialogs - все доступные диалоги в системе (name - имя, uuid - uuid, type - тип)
        work_items - доступные пункты меню (модуль "Потоки работ")
        document_items - доступные пункты меню (модуль "Документы")
        file_items - доступные пункты меню (модуль "Файлы")
        day_length - длительность рабочего дня (из календаря Системы)
        default_work_length - время на выполнение работы по умолчанию
        default_document_project_work_length - время на выполнение проекта документа (в т.ч. по шаблону) по умолчанию
        default_agreement_length - время на выполнение согласования по умолчанию
        default_approvement_length - время на выполнение утверждения по умолчанию
        default_acquaintance_length - время на выполнение ознакомления по умолчанию
        systemName - наименование системы
        resolution_work_types - доступные пункты типов работ по резолюции, для каждого пункта указываются
        needCert - требовать ключ и сертификат
        enableEDS - настроено ли ЭЦП

        • dict_id - UUID записи справочника;
        • item_number - порядковый номер пункта в выпадающем списке;
        • item_process - действие, которое осуществляет пункт;
        • item_name - название пункта типа работы.
        Parameters:
        locale - локаль пользователя
        Returns:
        настройки как объект json
        See Also:
        arta.synergy.web.common.client.data.actions.dialog.WorkDialogType#WORK, arta.synergy.web.common.client.data.actions.dialog.WorkDialogType#DOCUMENT_PROJECT, arta.synergy.web.common.client.data.actions.dialog.WorkDialogType#TEMPLATE_PROJECT
      • setSettings

        public java.lang.String setSettings(<any> settings)

        Изменение настроек системы. Можно изменить настройки для администратора и для методолога. Администратору и методологу доступны свои настройки, соответствующий разделением в интерфейсе.

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


        URL: rest/api/settings/set
        Тип POST

        Все настройки надо передавать в форме. Название, параметра должна совпадать с id настройки. Если не будет найден ни одна настройка по такому id. Сервер вернет следующую ошибку:

        {"errorCode": 13, "errorMessage": ""Настройка с id {id} не найдена"}
        Returns:
        Объект json с полями
        errorCode код выполнения (0- успешно, иначе - ошибка)
        errorMessage сообщение, характеризующее успешное выполнение либо ошибку

        Настройки, доступные для администратора:

        • management_url- url приложения
        • pass_min_length- минимальная длина пароля
        • pass_digit_count- минимальное количество цифровых символов
        • pass_up_letter_count- минимальное количество букв верхнего регистра
        • pass_low_letter_count- минимальное количество букв нижнего регистра
        • pass_special_count- минимальное количество специальных символов
        • pass_equal_seq_count- минимальное количество последовательных одинаковых символов
        • pass_class_equal_seq_count- минимальное количество последовательных одинаковых символов одного класса
        • pass_equals_login- запрет совпадения пароля с логином
        • pass_equals_fam- запрет совпадения пароля с фамилией
        • pass_equals_name- запрет совпадения пароля с именем
        • pass_equals_patronymic- запрет совпадения пароля с отчеством
        • pass_unsuccess_try_count- количество неудачных попыток
        • pass_timeout- таймаут
        • pass_progress_timeout- прогрессивный таймаут
        • pass_timeout_reset- период сброса количества неудачных попыток(с времени последней неудачной авторизации)
        • help_url- дрес службы поддержки
        • email_download_interval- нтервал загрузки почтовых сообщений
        • email_download_messages_limit- оличество почтовых сообщений, загружаемых за один раз
        • email_redownload_attempts_count- аксимальное количество попыток загрузить письмо
        • email_max_body_size- аксимальный размер тела сообщения
        • email_max_message_size- аксимальный размер загружаемого письма
        • email_load_self_mails- олучать письма от собственного адреса
        • email_max_jms_msg_time_to_live - симальное время жизни сообщения в очереди jms


        • Настройки, доступные для методолога:

          • docflow_sign_agreement - подписывать согласования
          • docflow_sign_approvement - подписывать утверждения
          • docflow_sign_acq - подписывать ознакомления
          • docflow_demand_certificate - требовать ключ и сертификат
          • docflow_demand_sign_before_assign -требовать подпись перед отправкой документа
          • protocol_demand_aggreement -требовать согласование протокола
          • protocol_demand_approvement -требовать утверждение протокола,
          • protocol_demand_registration -требовать регистрацию протокола
          • allow_create_additional_resolutions - разрешить накладывать дополнительные резолюции
          • docflow_resolution_template -шаблон пункта резолюции
          • document_close_agreement -закрывать окно просмотра работы после согласования
          • document_close_approvement -закрывать окно просмотра работы после утверждения
          • document_close_acq - закрывать окно просмотра работы после ознакомления
          • document_close_assignment -закрывать окно просмотра работы после завершения работы
          • use_create_child_doc_btn -отображать кнопку для создания дочернего документа в окне документа
          • user_name_default_type - отображать полное фио пользователя в компоненте выбора пользователя
          • docs_default_display_period - показывать документы, созданные за последние (месяцев)
          • show_in_field_on_execution - отображать в поле "на исполнении"
          • check_in_reg_inc_documents - осуществлять проверку на совпадения при регистрации входящих документов
          • resolution_create_levels - количество уровней оргструктуры с правом на создание резолюции
          • completion_date_for_resolution - подставлять дату завершения документа в пункты резолюции
          • date_resolution_after_finish_document -разрешить ставить работы по резолюции, завершающиеся позже документа
          • use_action_progress_book -использовать справочник значений прогресса для поручений
          • set_work_from_responsible - ставить работы исполнителям от имени ответственного
          • allow_resend_work -разрешить передавать работы другим исполнителям
          • allow_add_work_responsibles -разрешить добавлять соисполнителей к работам, не являющихся подчиненными
          • show_future_works -отображать будущие работы
          • show_future_route_steps -отображать в ходе исполнения будущие этапы
          • demand_positive_comment -требовать ввода комментария при согласовании/утверждении
          • demand_negative_comment -требовать ввода комментария при отказе в согласовании/утверждении
          • allow_create_work_longer_parent -разрешать создавать дочерние работы, завершающиеся позже родительской
          • allow_delegation_to_all -разрешать делегирование прав всем сотрудникам
          • max_user_send_level -максимальный уровень иерархии вверх, которому можно отправить документ (0 - все уровни структуры)
          • works_completion_form_by_default -формат отображения поля автора в ходе выполнения
          • default_work_length -создание и перепоручение работы (в том числе по маршруту) // время на выполнение работ по-умолчанию
          • default_document_project_work_length -работа по проекту документа (в том числе по шаблону)
          • default_agreement_length -огласование
          • default_approvement_length -утверждение
          • default_acquaintance_length -ознакомление
          • plan_calc_type - расчет мероприятий проекта
          • plan_dates_type - тип ввода дат мероприятий проекта
          • plan_hide_completed - скрывать завершенные проекты и портфели в навигаторе
          • project_cost_pointer_measure - единица измерения стоимости проектов
          • system_name_kz - наименование системы на казахском языке
          • system_name_ru - наименование системы на русском языке
          • system_name_en - именование системы на английском языке
      • getProcesses

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

        URL: rest/api/settings/get_processes
        Тип GET
        Parameters:
        locale - локаль пользователя
             В случае успешного выполнения возвращает json c полями:
             name - название процесса на языке локали, переданной в параметре locale
             number - порядковый номер следования в списке
             type - тип операции, один из следующих вариантов:
                ASSIGNMENT_ITEM - работа
                AGREEMENT_ITEM - согласование
                APPROVAL_ITEM - утверждение
                ACQUAINTANCE_ITEM - ознакомление
                RESOLUTION_ACTION - резолюция
                SEND_DOCUMENT - отправка документа
                BLOCKING_PROCESS - блокирующий процесс
                REGISTRATION_ITEM - регистрация
                ROUTE_ITEM - маршрут
                SEND_DOCUMENT_BY_FORM - отправка документа по форме
                POSITION_APPOINMENT_ITEM - назначение на должность
                POSITION_TRANSFER_ITEM - перевод
                POSITION_DISCHARGE_ITEM - увольнение
                COPY_TO_PR_FOLDER_ITEM - копирование в личную папку
                CALENDAR_APPOINTEMENT_ITEM - назначение календаря
                REGISTER_EVENT_ITEM - событие реестра
                QUERY_RESULT - результат запроса
                COMMON_PROCESS_BY_FORM - работа по форме
                POINTERS_INPUT - ввод значения показателя
                TIMER - таймер
                ROUTE_TEMPLATE - запуск маршрута по шаблону
                CONDITION - условный переход
                COPY_TO_CARD - копирование в карточку
                REASSIGN_WORK - переназначение работ
         
      • getWorkDays

        public Response getWorkDays(java.lang.String date_start,
                                    java.lang.String date_finish,
                                    java.lang.String type)
        Метод возвращает периоды рабочего времени с типами для каждого дня в запрашиваемом интервале

        URL: rest/api/settings/calendar
        Тип GET
        Parameters:
        date_start - дата начала интервала в формате yyyy-MM-dd (обязат.)
        date_finish - дата завершения интервала в формате yyyy-MM-dd (обязат.)
        type - тип дня, может быть стандартный "standard", нестандартный "custom", выходной "holiday" (не обязат.)
        Returns:
         Пример запроса без указания параметра type:
          `rest/api/settings/calendar?date_start=2016-05-01&date_finish=2016-05-04`
         Пример ответа на запрос без указания параметра type:
        {
          "2015-05-01": [
          {
              "type": "holiday"
          }
                        ],
          "2015-05-02": [
          {
              "start": "09:00",
              "finish": "13:00",
              "type": "custom"
          }
                        ],
              "2015-05-03": [
          {
              "type" : "holiday"
          }
                        ],
          "2015-05-04": [
          {
              "start": "09:00",
              "finish": "13:00",
              "type" : "standard"
          },
          {
              "start": "14:00",
              "finish": "18:00",
              "type" : "standard"
          }
                        ]
          }
         Где ключами являются даты интервала в формате yyyy-MM-dd,
         а значениями - список объектов с полями start, finish и type
         в которых указано время начала и завершения промежутка
         рабочего времени в формате HH:mm и тип дня этого промежутка
         Пример запроса с указанием параметра type:
          `rest/api/settings/calendar?date_start=2016-05-01&date_finish=2016-05-04&type=standard`
         Пример ответа на запрос с указанием параметра type:
        {
          "2015-05-03": [
          {
              "start": "09:00",
              "finish": "13:00",
              "type" : "standard"
          },
          {
              "start": "14:00",
              "finish": "18:00",
              "type" : "standard"
          }
                        ],
          "2015-05-04": [
          {
              "start": "09:00",
              "finish": "13:00",
              "type" : "standard"
          },
          {
              "start": "14:00",
              "finish": "18:00",
              "type" : "standard"
          }
                        ]
          }
        
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
      • 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.
kz.arta.synergy.api.rest.bp

Class ProcessesService

  • java.lang.Object
    • kz.arta.synergy.api.rest.bp.ProcessesService


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

      Constructors 
      Constructor and Description
      ProcessesService() 
    • Method Summary

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

      URL rest/api/processes/signal
      Method GET

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

      • Methods inherited from class java.lang.Object

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

      • ProcessesService

        public ProcessesService()
    • Method Detail

      • signalProcess

        public java.lang.String signalProcess(java.lang.String signal,
                                              java.lang.String executionID,
                                              java.lang.String locale)

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

        URL rest/api/processes/signal
        Method GET

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

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

        Примеры:

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

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

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

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

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

        public java.lang.String getHost()
kz.arta.synergy.api.rest.mobile

Class MobileUtilsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.mobile.MobileUtilsService


  • public class MobileUtilsService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 20.02.14 Time: 15:33 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 addDeviceToken(java.lang.String token, java.lang.String type)
      Метод добавляет в систему token устройства для авторизовавшегося пользователя

      URL rest/api/mobile/utils/add_token
      Method GET

      Параметры метода:
      token идентификатор устройства
      type тип устройства
      locale локаль пользователя

      java.lang.String getLocale() 
      java.lang.String removeDeviceToken(java.lang.String token)
      Метод добавляет в систему token устройства для авторизовавшегося пользователя

      URL rest/api/mobile/utils/remove_token
      Method GET

      Параметры метода:
      token идентифкатор устройства
      locale локаль пользователя

      • Methods inherited from class java.lang.Object

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

      • MobileUtilsService

        public MobileUtilsService()
    • Method Detail

      • addDeviceToken

        public java.lang.String addDeviceToken(java.lang.String token,
                                               java.lang.String type)

        Метод добавляет в систему token устройства для авторизовавшегося пользователя


        URL rest/api/mobile/utils/add_token
        Method GET

        Параметры метода:
        token идентификатор устройства
        type тип устройства
        locale локаль пользователя

        Returns:
        json c полями:

        errorCode

        результат выполнения метода (0 - успешно, иначе - ошибка)

        errorMessage

        сообщение об ошибке
      • removeDeviceToken

        public java.lang.String removeDeviceToken(java.lang.String token)

        Метод добавляет в систему token устройства для авторизовавшегося пользователя


        URL rest/api/mobile/utils/remove_token
        Method GET

        Параметры метода:
        token идентифкатор устройства
        locale локаль пользователя

        Returns:
        json c полями:

        errorCode

        результат выполнения метода (0 - успешно, иначе - ошибка)

        errorMessage

        сообщение об ошибке
      • getLocale

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

Class UsersService

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


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

      Constructors 
      Constructor and Description
      UsersService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response listLoggedInUsers(java.lang.String showIdsStr)
      Получение залогиненных пользователей URL: /rest/api/admin/user/logged_in Тип: GET
      Response logout(java.util.List<java.lang.String> users)
      Принудительное разлогинивание пользователей URL: /rest/api/admin/user/log_out Тип: POST Данный метод доступен только пользователям с правами суперадминистратора.
      • Methods inherited from class java.lang.Object

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

      • UsersService

        public UsersService()
    • Method Detail

      • logout

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

        Принудительное разлогинивание пользователей

        URL: /rest/api/admin/user/log_out

        Тип: POST

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

        Parameters:

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

        Пример запроса:

        POST / HTTP/1.1 Host: localhost:8389 Cache-Control: no-cache Content-Type: application/json [ "4da20e1f-49a9-4965-8736-8548896462ea", "1168cdf5-02c5-4f45-8141-2921f1165b68", "8c065606-05f7-4ad9-b7dd-02be1be18e6b" ]
        Returns:

        Пример ответа при успешном выполнении метода:

        { "errorCode": 0, "errorMessage":"Сессии пользователей принудительно завершены" }
      • listLoggedInUsers

        public Response listLoggedInUsers(java.lang.String showIdsStr)

        Получение залогиненных пользователей

        URL: /rest/api/admin/user/logged_in

        Тип: GET

        Parameters:

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

        • showLoggedIn - признак необходимости возврата списка пользователей (по умолчанию false). Принимает следующие значения:
          • true - возвращает список залогиненных пользователей
          • false - не возвращает список залогиненных пользователей

        Пример запроса:

        /rest/api/admin/user/logged_in?showLoggedIn=true
        Returns:

        В случае успешного выполнения метод возвращает объект JSON с полями:

        • number - количество залогиненных пользователей
        • users - массив, состоящий из идентификаторов пользователей. При showLoggedIn=false, возвращается пустой массив

        Пример ответа при успешном выполнении:

        { "number" : 5, "users": [ "8b86eb00-e062-11e5-8c91-525400bb7fc6", "088565c0-e025-11e5-8c91-525400bb7fc6", "9b3dd2d0-dec2-11e5-8c91-525400bb7fc6", "86865eb0-a3d6-11e5-9ae6-525400bb7fc6", "50acca20-c8c2-11e5-92a8-525400bb7fc6" ] }
kz.arta.synergy.api.rest.admin

Class FormIndexService

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


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

      Constructors 
      Constructor and Description
      FormIndexService() 
    • Method Summary

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

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

      • FormIndexService

        public FormIndexService()
    • Method Detail

      • getMaxVersion

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

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

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

        Тип: POST

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

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

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

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

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

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

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

        Тип: GET

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

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

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

Class ProcessesService

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


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

      Constructors 
      Constructor and Description
      ProcessesService() 
    • Method Summary

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

      Информация о процессах

      URL: rest/api/admin/processes/available

      Type: GET

      java.lang.String getNotActualProcesses()

      Возвращает id-шники только не обновленных процессов.

      java.lang.String updateProcess(java.lang.String processID)

      Обновить процесс

      URL: rest/api/admin/processes/updateProcess

      Type: GET

      • Methods inherited from class java.lang.Object

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

      • ProcessesService

        public ProcessesService()
    • Method Detail

      • getAvailableProcesses

        public java.lang.String getAvailableProcesses()

        Информация о процессах

        URL: rest/api/admin/processes/available

        Type: GET

        Returns:
        json данные об процессах
        {
        "errorCode": 0,
        "errorMessage": "Success",
        "data": [{
        "processName": "acquaintance-single",
        "currentProcessID": "590001",
        "description": "Элемент ознакомления",
        "isActual": true
        }, {
        "processName": "action",
        "currentProcessID": "640001",
        "description": "Стандартное поручение",
        "isActual": false
        }, {
        ... ...
        }
        ]
        }

        Значения некоторых полей:
        isActual - если false то процесс надо обновить, иначе процесс уже обновлен
        processName - название (ID) процесса, используется в качестве id для метода /rest/api/admin/processes/update
      • getNotActualProcesses

        public java.lang.String getNotActualProcesses()

        Возвращает id-шники только не обновленных процессов.

        URL: rest/api/admin/processes/not_actual

        Type: GET

        Returns:
        json данные об не обновленных процессах
        {
        "errorCode": 0,
        "errorMessage": "Success",
        "data": [
        "acquaintance-single",
        "action",
        ... ...
        ]
        }
      • updateProcess

        public java.lang.String updateProcess(java.lang.String processID)

        Обновить процесс

        URL: rest/api/admin/processes/updateProcess

        Type: GET

        Parameters:
        processID - id процесса (обяз.)
        Returns:
        json данные об статусе выполнения запроса
        Пример возвращаемых данных метода, при успешном выполнении
        {
        "errorCode": 0,
        "errorMessage": "Success"
        }


        Пример возвращаемых данных метода, в случае ошибки
        {
        "errorCode": 13,
        "errorMessage": "Ошибка исполнения"
        }
kz.arta.synergy.api.rest.admin

Class DBService

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


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

      Constructors 
      Constructor and Description
      DBService() 
    • Method Summary

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

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

      URL: rest/api/admin/db/current_version

      Type: GET

      java.lang.String getMaxVersion()

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

      URL: rest/api/admin/db/max_version

      Type: GET

      java.lang.String getMessages()

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

      java.lang.String onDbUpdated()

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

      java.lang.String startUpdate()

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

      java.lang.String updatingIsCompleted()

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

      • Methods inherited from class java.lang.Object

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

      • DBService

        public DBService()
    • Method Detail

      • getMaxVersion

        public java.lang.String getMaxVersion()

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

        URL: rest/api/admin/db/max_version

        Type: GET

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


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

        public java.lang.String getDbVersion()

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

        URL: rest/api/admin/db/current_version

        Type: GET

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


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

        public java.lang.String startUpdate()

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

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

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


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

        URL: rest/api/admin/db/start_update

        Type: GET

      • getMessages

        public java.lang.String getMessages()

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

        URL: rest/api/admin/db/messages

        Type: GET

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

        public java.lang.String updatingIsCompleted()

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

        URL: rest/api/admin/db/updating_is_completed

        Type: GET

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


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

        public java.lang.String onDbUpdated()

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

        URL: rest/api/admin/db/on_db_updated

        Type: GET

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


        Пример возвращаемых данных метода, в случае ошибки
        {
        "errorCode": 13,
        "errorMessage": "Ошибка исполнения"
        }
kz.arta.synergy.api.rest.diary

Class DiaryService

  • java.lang.Object
    • kz.arta.synergy.api.rest.diary.DiaryService


  • public class DiaryService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 19.06.13 Time: 8:45 To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      DiaryService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String createTask(java.lang.String task, java.lang.String taskID, java.lang.String start, java.lang.String finish, boolean wholeDay, java.lang.String userID, java.lang.String locale)
      Метод для создания/изменения задачи URL rest/api/diary/tasks/{userID}/save
      Method POST
      java.lang.String deleteTask(java.lang.String taskID, java.lang.String locale)
      Метод для удаление задачи URL rest/api/diary/tasks/delete
      Method GET
      java.lang.String getModifiedTasks(java.lang.String userID, java.lang.String locale, java.lang.String lastModified)

      Метод возвращает заметки измененные за последнее время URL rest/api/diary/tasks/{userID}
      Method GET
      Пример:
      http://хост:порт/Synergy/rest/api/diary/tasks/uuid_пользователя?
      Response getTask(java.lang.String taskID, java.lang.String locale)
      Получение заметки по идентификатору URL /rest/api/diary/tasks/get
      Method GET Метод принимает следующие входные параметры:

      - `taskID` - `uuid` заметки (обяз.);

      - `locale` - локаль.

      Response getUserTasks(java.lang.String userID, java.lang.String start, java.lang.String finish, java.lang.String locale)
      Получения заметок пользователя из календаря за промежуток времени URL rest/api/diary/tasks/{userID}/all
      Method GET
      Response setTaskState(java.lang.String taskID, java.lang.String locale)
      Метод для завершения заментки URL rest/api/diary/tasks/complete
      Method GET
      • Methods inherited from class java.lang.Object

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

      • DiaryService

        public DiaryService()
    • Method Detail

      • getModifiedTasks

        public java.lang.String getModifiedTasks(java.lang.String userID,
                                                 java.lang.String locale,
                                                 java.lang.String lastModified)

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

        URL rest/api/diary/tasks/{userID}
        Method GET


        Пример:
        http://хост:порт/Synergy/rest/api/diary/tasks/uuid_пользователя?last-modified=2013-01-01%2008:00:00
        Для описания оорфмата json смотрите документацию метода taskToJson(Task)
        Parameters:
        userID - uuid пользователя, чьи задачи необходимо посмотреть
        locale - локаль
        lastModified - стамп времени
        Returns:
        список заметок, измененных с момента lastModified в формате json
        See Also:
        #taskToJson(arta.synergy.web.common.client.data.tasks.Task)
      • createTask

        public java.lang.String createTask(java.lang.String task,
                                           java.lang.String taskID,
                                           java.lang.String start,
                                           java.lang.String finish,
                                           boolean wholeDay,
                                           java.lang.String userID,
                                           java.lang.String locale)

        Метод для создания/изменения задачи

        URL rest/api/diary/tasks/{userID}/save
        Method POST

        Parameters:
        task - текст задачи
        taskID - идентификатор задачи (в случае добавления новой задачи должен отсутствовать)
        start - дата начала в формате yyyy-MM-dd либо yyyy-MM-dd HH:mm:00 (первый для задач в течение дня, второй для задач с конкретным временем)
        finish - дата завершения в формате yyyy-MM-dd либо yyyy-MM-dd HH:mm:00 (первый для задач в течение дня, второй для задач с конкретным временем)
        wholeDay - в течение целого дня или нет
        userID - идентификатор пользователя для которого создается задача
        locale - локаль
        Returns:
        json вида {errorCode: code_value, errorMessage: some_message} Если errorCode = 0, значит действие было выполнено успешно, иначе- нет и в errorMessage должна содержаться информация об ошибке
      • deleteTask

        public java.lang.String deleteTask(java.lang.String taskID,
                                           java.lang.String locale)

        Метод для удаление задачи

        URL rest/api/diary/tasks/delete
        Method GET

        Parameters:
        taskID - идентификатор задачи
        locale - локаль
      • setTaskState

        public Response setTaskState(java.lang.String taskID,
                                     java.lang.String locale)

        Метод для завершения заментки

        URL rest/api/diary/tasks/complete
        Method GET

        Parameters:
        taskID - идентификатор задачи (в случае добавления новой задачи должен отсутствовать)
        locale - локаль

        Пример запроса:

        `/rest/api/diary/tasks/complete?taskID=e6fc40b0-9fe4-11e6-9ce4-001ef892a4ee`

        Пример возвращаемого объекта:

        { "errorCode": 0, "errorMessage": "Заметка успешно завершена" }

      • getTask

        public Response getTask(java.lang.String taskID,
                                java.lang.String locale)

        Получение заметки по идентификатору

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

        - `taskID` - `uuid` заметки (обяз.);

        - `locale` - локаль.

        Метод возвращает описание заметки с указанным идентификатором.

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

        - `taskID` - `uuid` заметки;

        - `task` - текст заметки;

        - `start` - дата и время начала исполнения заметки, в формате `yyyy-MM-dd HH:mm:ss`;

        - `finish` - дата и время завершения исполнения заметки, в формате `yyyy-MM-dd HH:mm:ss`;

        - `wholeDay` - признак исполнения заметки в течение дня. Одно из следующих значений:

        - `true` - установлен срок исполнения "в течение дня";

        - `false` - не установлен срок исполнения "в течение дня".

        Пример запроса:

        `rest/api/diary/tasks/get?taskID=e6fc40b0-9fe4-11e6-9ce4-001ef892a4ee`

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

        { "taskID" : "e6fc40b0-9fe4-11e6-9ce4-001ef892a4ee", "task" : "заметка №1", "start" : "2016-12-05 10:00:00", "finish" : "2016-12-05 16:00:00", "wholeDay" : false }

      • getUserTasks

        public Response getUserTasks(java.lang.String userID,
                                     java.lang.String start,
                                     java.lang.String finish,
                                     java.lang.String locale)

        Получения заметок пользователя из календаря за промежуток времени

        URL rest/api/diary/tasks/{userID}/all
        Method GET

        Parameters:
        start - дата начала в формате yyyy-MM-dd
        finish - дата завершения в формате yyyy-MM-dd
        userID - идентификатор пользователя чьи заметки необходимо получить
        locale - локаль

        Пример запроса:

        `rest/api/diary/tasks/8f60bf3b-0fff-11e9-bfb4-001ef892a4ee/all?start=2016-12-05&finish=2016-12-25`

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

        [ { "taskID" : "e6fc40b0-9fe4-11e6-9ce4-001ef892a4ee", "task" : "заметка №1", "start" : "2016-12-05 10:00:00", "finish" : "2016-12-05 16:00:00" }, { "taskID" : "5dfc40b0-9fe4-11e6-9ce4-001ef892a4ee", "task" : "заметка №2", "start" : "2016-12-10 09:45:00", "finish" : "2016-12-10 12:00:00" }, { "taskID" : "21sdd1sb0-9fe4-11e6-9ce4-001ef892a4ee", "task" : "заметка №3", "start" : "2016-12-20 09:00:00", "finish" : "2016-12-20 18:00:00" }, { "taskID" : "11lc40b0-5fkh-11e6-9ce4-001ef892a4ee", "task" : "заметка №4", "start" : "2016-12-25 09:00:00", "finish" : "2016-12-25 18:00:00" } ]

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

      Метод возвращает список из элементов, каждый из которых описывает одну личную карточку.

      • 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
kz.arta.synergy.api.rest.groups

Class GroupsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.groups.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
      java.lang.String 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) 
      java.lang.String getGroups(java.lang.String search, java.lang.Integer parentGroupID, java.lang.Integer startRecord, java.lang.Integer recordsCount, boolean loadAllHierarchy, java.lang.Integer right, boolean loadAutoGroups, java.lang.String locale)
      поиск групп
      url: /rest/api/groups/find
      method: GET
      • 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 java.lang.String getGroups(java.lang.String search,
                                          java.lang.Integer parentGroupID,
                                          java.lang.Integer startRecord,
                                          java.lang.Integer recordsCount,
                                          boolean loadAllHierarchy,
                                          java.lang.Integer right,
                                          boolean loadAutoGroups,
                                          java.lang.String locale)
        поиск групп
        url: /rest/api/groups/find
        method: GET
        Parameters:
        search - поисковая строка
        parentGroupID - родительская группа
        startRecord - начальная запись
        recordsCount - количество записей
        loadAllHierarchy - поднимать ли всю иерархию
        right - право пользователя (поднимать только группы, на котрые у пользователя соответствующее право)
        loadAutoGroups - подгружать автогруппы
        locale - локаль
        Returns:
        json с полями
        count: количество
        begin: начальная позиция
        length: последняя
        array: массив групп, каждый элемент которого содержит
        - groupID: идентификатор группы
        - name: наименование
        - parentName: наименование родительской группы
        - innerGroupsCount: количество вложенных групп
        - usersCount: количество пользователей
        - parentID: идентификатор родительской группы
      • getGroupContent

        public java.lang.String 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)
kz.arta.synergy.api.rest.filecabinet

Class DepartmetnsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.filecabinet.DepartmetnsService


  • public class DepartmetnsService
    extends java.lang.Object

    Created by IntelliJ IDEA.
    User: topa
    Date: 23.08.13
    Time: 18:30
    Содержит методы для управления департаментами - создание/изменение, удаление, получение информации о департаменте
    Корневым подразделением орг структуры является депертамент, создаваемый по умолчанию, он имеет идентификатор "1".
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String deleteDepartment(java.lang.String departmentID, java.lang.String locale)
      Метод удаляет подразделение

      URL rest/api/departments/delete
      Method GET

      java.lang.String getDepartment(java.lang.String departmentID, java.lang.String locale)
      Метод возвращает информацию о подразделении подразделение

      URL rest/api/departments/get
      Method GET

      java.lang.String getDepartmentCards(java.lang.String departmentID, java.lang.String locale)
      Возвращает список дополнительных карточек для данного подразделения

      URL rest/api/departments/get_cards
      Method GET
      Для заполнения полей карточки надо использовать метод APIFormsService#save

      java.lang.String getDepartmentsAsList(java.lang.String locale, java.lang.Integer partNumber, java.lang.Integer countInPart)
      Метод возвращает список подразделений (без учета структуры)

      URL rest/api/departments/list
      Method GET
      * @return Список департаментов, описание полей департамента смотрите в методе FileCabinetWrapper#getDepartmentasJson

      java.lang.String getDepartmentsByFieldValue(java.lang.String formUUID, java.lang.String formCode, java.lang.String fieldName, java.lang.String value, java.lang.String locale)
      ВНИМАНИЕ!
      java.lang.String getDepartmentsContent(java.lang.String departmentID, boolean onlyPosition, boolean onlyDepartments, java.lang.String locale)
      Метод используется для получения информации о департаменте (подразделения и должности)
      Тип: GET
      URL: rest/api/departments/content
      java.lang.String saveDepartment(java.lang.String nameRu, java.lang.String nameKz, java.lang.String nameEn, java.lang.String positionNameRu, java.lang.String positionNameKz, java.lang.String positionNameEn, java.lang.String pointersCode, java.lang.String departmentID, java.lang.String parentDepartmentID, int number, java.lang.String locale)
      Метод создает/изменяет подразделение орг структуры

      URL rest/api/departments/save
      Method POST

      Response searchDepartments(java.util.List<java.lang.String> codes, java.util.List<java.lang.String> names, int recordsCount, int startRecord, java.lang.String codeSearchTypeP, java.lang.String nameSearchTypeP, java.lang.String deleted, java.lang.String locale)
      Метод поиска подразделений URL: /rest/api/departments/search Тип: GET
      • Methods inherited from class java.lang.Object

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

      • DepartmetnsService

        public DepartmetnsService()
    • Method Detail

      • saveDepartment

        public java.lang.String saveDepartment(java.lang.String nameRu,
                                               java.lang.String nameKz,
                                               java.lang.String nameEn,
                                               java.lang.String positionNameRu,
                                               java.lang.String positionNameKz,
                                               java.lang.String positionNameEn,
                                               java.lang.String pointersCode,
                                               java.lang.String departmentID,
                                               java.lang.String parentDepartmentID,
                                               int number,
                                               java.lang.String locale)

        Метод создает/изменяет подразделение орг структуры

        URL rest/api/departments/save
        Method POST

        Parameters:
        nameRu - Название подразделения на русском языке, FormParam
        nameKz - Название подразделения на казахском языке, FormParam
        nameEn - Название подразделения на английском языке, FormParam
        positionNameRu - Название должности руководителя на русском языке, FormParam
        positionNameKz - Название должности руководителя на казахском языке, FormParam
        positionNameEn - Название должности руководителя на английском языке, FormParam
        pointersCode - код показателя, FormParam
        number - порядковый номер подразделения
        departmentID - UUID подразделения (для создания нового подразделения необходимо передать null), FormParam
        parentDepartmentID - UUID родительского подразделения, FormParam
        locale - локаль, QueryParam
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке. В случае успешного выполнения так же возвращается departmentID созданного/измененного подразделения.
      • deleteDepartment

        public java.lang.String deleteDepartment(java.lang.String departmentID,
                                                 java.lang.String locale)

        Метод удаляет подразделение

        URL rest/api/departments/delete
        Method GET

        Parameters:
        departmentID - UUID подразделения, которое надо удалить (QueryParam)
        locale - локаль (QueryParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке/успешном выполнении
      • getDepartment

        public java.lang.String getDepartment(java.lang.String departmentID,
                                              java.lang.String locale)

        Метод возвращает информацию о подразделении подразделение

        URL rest/api/departments/get
        Method GET

        Parameters:
        departmentID - UUID подразделения, QueryParam
        locale - локаль, QueryParam
        Returns:
        json, описание полей см в FileCabinetWrapper#getDepartmentasJson
        See Also:
        FileCabinetWrapper#getDepartmentasJson(arta.synergy.web.common.client.data.filecabinet.Department, String)
      • getDepartmentsAsList

        public java.lang.String getDepartmentsAsList(java.lang.String locale,
                                                     java.lang.Integer partNumber,
                                                     java.lang.Integer countInPart)

        Метод возвращает список подразделений (без учета структуры)

        URL rest/api/departments/list
        Method GET
        * @return Список департаментов, описание полей департамента смотрите в методе FileCabinetWrapper#getDepartmentasJson

        See Also:
        FileCabinetWrapper#getDepartmentasJson(arta.synergy.web.common.client.data.filecabinet.Department, String)
      • getDepartmentsContent

        public java.lang.String getDepartmentsContent(java.lang.String departmentID,
                                                      boolean onlyPosition,
                                                      boolean onlyDepartments,
                                                      java.lang.String locale)
        Метод используется для получения информации о департаменте (подразделения и должности)
        Тип: GET
        URL: rest/api/departments/content
        Parameters:
        departmentID - идентификатор департамента
        onlyPosition - true - отображение должностей только одного департамента (по умолчанию false)
        onlyDepartments - true - отображение подотделов только одного департамента (по умолчанию false)
        locale - локаль
        Returns:
        Пример возвращаемого массива:
                [
                  {
                    "departments":
                    [
                      {
                        "departmentID": "7b097e72-e303-487f-83a1-cb76397abd57",
                        "departmentName": "Департамент технологий",
                        "hasChildDepartments" : false,
                        "pointerCode" : "code",
                        "departmentHead":
                        {
                          "headID": "f9b0b304-c856-4bcf-8615-e13cded16a14",
                          "headName": "Иванов И.И."
                        }
                      },
                      {
                        "departmentID": "8ii056e72-e563-667f-14j7-cb31867qwe66",
                        "departmentName": "Департамент развития",
                        "hasChildDepartments" : true,
                        "departmentHead":
                        {
                          "headID": "179bda2e-6d55-4ed5-b1be-890ffad280ba",
                          "headName": "Петров П.П."
                        }
                      }
                    ],
                    "positions":
                    [
                      {
                        "positionID": "dc890ecf-e340-4ada-b7e6-d6541486a599",
                        "positionName": "Маркетолог",
                        "code": "shifr2",
                        "pointerCode": "code2",
                        "employees":
                        [
                          {
                            "employeeID": "f40b665c-f1f4-40b3-bdc5-291911def539",
                            "employeeName": "Попов П.В."
                          },
                          {
                            "employeeID": "22cc3118-3bcd-4543-98b4-a30982ba5c2a",
                            "employeeName": "Сидоров С.В."
                          },
                          {
                            "employeeID": "414acd59-aaf8-4202-8c00-b39e1fe73bbc",
                            "employeeName": "Орлов О.О."
                          }
                        ]
                      },
                      {
                        "positionID": "2d9a641d-178c-4b05-b2f4-a231958718fd",
                        "positionName": "Финансовый аналитик",
                        "code": "shifr1",
                        "pointerCode": "code1",
                        "employees":
                        [
                          {
                            "employeeID": "c4ddd6b1-ade2-4ee2-ace5-aaec6a81d02a",
                            "employeeName": "Мартынов М.М."
                          },
                          {
                            "employeeID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
                            "employeeName": "Быков Г.Г."
                          }
                        ]
                      },
                      {
                        "positionID": "22a48f88-199a-4398-8eb6-15ba8ef35deb",
                        "positionName": "Юрист",
                        "code": "shifr3",
                        "pointerCode": "code3",
                        "employees":
                        [
                          {
                            "employeeID": "a2ba229b-366f-4d9c-b8bd-31742a7a519a",
                            "employeeName": "Мусина А.М."
                          },
                          {
                            "employeeID": "a5b67a57-bcba-4513-bc2d-089400457a53",
                            "employeeName": "Дарбаева Г.Г."
                          },
                          {
                            "employeeID": "ca936f83-3d4e-4c09-b393-9e548d18bc04",
                            "employeeName": "Жакин Н.Б."
                          },
                          {
                            "employeeID": "ff666f77-7ii8-5b09-o565-2f555v33qq11",
                            "employeeName": "Васильев Г.В."
                          }
                        ]
                      }
                    ]
                  }
                ]
             
        departments - массив подотделов данного департамента:
        departmentID - UUID подразделения
        departmentName - название подотдела на языке локали, переданной в параметре locale
        hasChildDepartments - есть ли дочерние департаменты
        pointerCode - код для показателей департамента
        departmentHead - руководитель подотдела:
        headID - UUID руководителя
        headName - Ф.И.О. руководителя в формате "Фамилия И.О."
        positions - массив должностей данного департамента:
        positionID - UUID должности
        positionName - название должности на языке локали, переданной в параметре locale
        pointerCode - код для показателей должности
        code - шифр должности
        type - тип должности
        employees - массив сотрудников на данной должности:
        employeeID - UUID сотрудника
        employeeName - Ф.И.О. сотрудника в формате "Фамилия И.О."
      • getDepartmentCards

        public java.lang.String getDepartmentCards(java.lang.String departmentID,
                                                   java.lang.String locale)

        Возвращает список дополнительных карточек для данного подразделения

        URL rest/api/departments/get_cards
        Method GET
        Для заполнения полей карточки надо использовать метод APIFormsService#save

        Parameters:
        departmentID - UUID подразделения
        locale - локаль пользователя
        Returns:
        список json объектов с информацией о карточке подразделения, для каждой карточки присутствуют поля:
        form-uuid uuid формы
        formCode - код формы
        name название карточки
        editable true - есть право наредактирование, иначе - false
        data-uuid uuid данных по данной карточке
        mandatory true - карточкая обязательна для заполнения, иначе - false
        See Also:
        APIFormsService.save(String, String, String, String, String, String)
      • getDepartmentsByFieldValue

        public java.lang.String getDepartmentsByFieldValue(java.lang.String formUUID,
                                                           java.lang.String formCode,
                                                           java.lang.String fieldName,
                                                           java.lang.String value,
                                                           java.lang.String locale)

        ВНИМАНИЕ! Логика данного метода реализована некорректно, поэтому не рекомендуем его использовать. В скором времени метод будет заменен на правильный

        Находит подразделения по значению поля дополнительной карточки и возвращает список их идентификаторов

        URL rest/api/departments/get_by_field_value
        Method GET


        Предполагается, что данный метод будет использоваться для реализации интеграционных решений (синхронизации орг структуры ARTA Synergy с орг структурой сторонней системы). В дополнительной карточке подразделения может храниться идентификатор соответствующего подразделения в сторонней системе, этот метод позволит найти идентификатор подразделения в нашей системе по его идентификатору из сторонней системы

        Поиск производится по сначала по ключу, а в случае отсутствия ключа - по значению (key и value из данных компонента, /api/asforms/data/{dataUUID}).

        Для компонента "Переключатель вариантов" это порядок обратный, сначала по value, затем - по key. Надо учитывать, что в этом компоненте из-за особенностей реализации в key хранится название вариантов, а в value - значение.

        Parameters:
        formUUID - uuid формы, по полю которой необходимо произвести поиск
        formCode - code формы, по полю которой необходимо произвести поиск
        fieldName - название поля, по которому необходимо произвести поиск
        value - значение поля
        locale - локаль пользователя
        Returns:
        список, состоящий из идентификаторов подразделений
      • searchDepartments

        public Response searchDepartments(java.util.List<java.lang.String> codes,
                                          java.util.List<java.lang.String> names,
                                          int recordsCount,
                                          int startRecord,
                                          java.lang.String codeSearchTypeP,
                                          java.lang.String nameSearchTypeP,
                                          java.lang.String deleted,
                                          java.lang.String locale)

        Метод поиска подразделений

        URL: /rest/api/departments/search

        Тип: GET

        Parameters:

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

        • name - название подразделения (необяз.), может быть передано несколько значений
        • pointer_code - код показателя (необяз.), может быть передано несколько значений
        • recordsCount - количество результатов, которые необходимо вернуть (по умолчанию 30). Максимальное значение параметра 100
        • startRecord - номер записи результатов, начиная с которой будут возвращены записи (по умолчанию 0)
        • searchTypeN - тип сравнения для параметра name (по умолчанию partial). Может принимать следующие значения:
          • exact - точное совпадение поискового запроса и значения поля
          • partial - вхождение поискового запроса в значение поля
        • searchTypePC - тип сравнения для параметра pointer_code (по умолчанию exact). Может принимать следующие значения:
          • exact - точное совпадение поискового запроса и значения поля
          • partial - вхождение поискового запроса в значение поля
        • deleted - включать ли в результат поиска удаленные департаменты. Допустимые значения: true или false
        • locale - локаль пользователя. Данный параметр учитывается при поиске по названию должности
        Returns:

        В случае успешного выполнения метод возвращает массив строк, являющихся идентификаторами подразделений.

        Пример запроса:

        /rest/api/departments/search?pointer_code=dep1&pointer_code=dep3

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

        [ "rgg66d1-ad54-5462-aef5-aggrr55fd02a", "vgikwj4c6-88gh-ef44-3ffe-oepjfee5d6" ]

        При указании одновременно разных параметров результат запроса будет связан логическим И.

        Пример запроса: /rest/api/departments/search?pointer_code=dep5&name=Департамент5

        А при указании одновременно одинаковых параметров, результат будет производится по логическому ИЛИ.

        Пример запроса: /rest/api/departments/search?pointer_code=code1&pointer_code=code2

        В случае если по переданным входным параметрам ничего не найдено, сервер возвращает пустой массив.

kz.arta.synergy.api.rest.filecabinet

Class UsersService

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


  • public class UsersService
    extends java.lang.Object
     User: topa
     Date: 03.05.13
     Time: 17:52
     
    Since:
    2.31
    • Constructor Summary

      Constructors 
      Constructor and Description
      UsersService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String createUser(java.lang.String lastname, java.lang.String firstname, java.lang.String patronymic, java.lang.String pointersCode, boolean isChancellery, boolean isConfigurator, boolean isAdmin, java.lang.String email, java.lang.String jid, java.lang.String privateFolder, boolean hasAccess, boolean hasPrivateFolder, boolean hasPointersBookAccess, boolean hasStrategyAccess, java.util.List<java.lang.String> hrDepartmentID, java.lang.String userID, java.lang.String locale)
      Метод создает/изменяет пользователя

      URL rest/api/filecabinet/user/save
      Method POST

      java.lang.String deleteUser(java.lang.String userID, java.lang.String locale)
      Метод удаляет пользователя из системы

      URL rest/api/filecabinet/user/delete
      Method GET

      java.lang.String getUser(java.lang.String userID, java.lang.String locale, boolean getGroups)
      Load and return basic iformation on user as json object

      URL rest/api/filecabinet/user/{userID}
      Method GET

      java.lang.String getUserContacts(java.lang.String userID, java.lang.String locale)
      Load and return user contacts as list of json objects
      java.lang.String getUsersByFieldValue(java.lang.String formUUID, java.lang.String formCode, java.lang.String fieldName, java.lang.String value, java.lang.String locale)
      ВНИМАНИЕ!
      • Methods inherited from class java.lang.Object

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

      • UsersService

        public UsersService()
    • Method Detail

      • getUser

        public java.lang.String getUser(java.lang.String userID,
                                        java.lang.String locale,
                                        boolean getGroups)
        Load and return basic iformation on user as json object

        URL rest/api/filecabinet/user/{userID}
        Method GET

        Parameters:
        userID - user's UUID, path param
        locale - actor's locale, query param
        Returns:
        info on person as json object
        See Also:
        PersonWrapper#getJsonObject(arta.synergy.web.common.client.data.filecabinet.Person)
      • getUserContacts

        public java.lang.String getUserContacts(java.lang.String userID,
                                                java.lang.String locale)
        Load and return user contacts as list of json objects
        Parameters:
        userID -
        locale -
        Returns:
      • createUser

        public java.lang.String createUser(java.lang.String lastname,
                                           java.lang.String firstname,
                                           java.lang.String patronymic,
                                           java.lang.String pointersCode,
                                           boolean isChancellery,
                                           boolean isConfigurator,
                                           boolean isAdmin,
                                           java.lang.String email,
                                           java.lang.String jid,
                                           java.lang.String privateFolder,
                                           boolean hasAccess,
                                           boolean hasPrivateFolder,
                                           boolean hasPointersBookAccess,
                                           boolean hasStrategyAccess,
                                           java.util.List<java.lang.String> hrDepartmentID,
                                           java.lang.String userID,
                                           java.lang.String locale)

        Метод создает/изменяет пользователя

        URL rest/api/filecabinet/user/save
        Method POST

        Parameters:
        lastname - фамилия, FormParam
        firstname - имя, FormParam
        patronymic - отчество, FormParam
        pointersCode - код показателя, FormParam
        isChancellery - является ли сотрудником канцелярии, FormParam
        isConfigurator - является ли методологом, FormParam
        isAdmin - является ли администратором системы, FormParam
        email - почтовый адрес для уведомлений, FormParam
        jid - адрес jabber аккаунта, FormParam
        privateFolder - личная папка, FormParam
        hasAccess - имеет ли доступ в систему, FormParam
        hasPointersBookAccess - имеет ли доступ к справочнику показателей, FormParam
        hasStrategyAccess - имеет ли доступ к стратегии, FormParam
        hrDepartmentID - UUID подразделений, в которых является сотрудником ОКК, FormParam
        userID - идентификатор пользователя. Необходимо передавать если должно выполниться изменение существующего пользователя
        hasPrivateFolder - создавать ли личную папку пользователя. Имеет смысл только при создании пользователя
        locale - локаль пользователя, QueryParam
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке. В случае успешного выполнения так же возвращается userID идентификатор созданного/измененного пользователя
      • deleteUser

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

        Метод удаляет пользователя из системы

        URL rest/api/filecabinet/user/delete
        Method GET

        Parameters:
        userID - UUID пользователя, которого надо удалить (QueryParam)
        locale - локаль пользователя, выполняющего действие (QueryParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке.
      • getUsersByFieldValue

        public java.lang.String getUsersByFieldValue(java.lang.String formUUID,
                                                     java.lang.String formCode,
                                                     java.lang.String fieldName,
                                                     java.lang.String value,
                                                     java.lang.String locale)

        ВНИМАНИЕ! Логика данного метода реализована некорректно, поэтому не рекомендуем его использовать. В скором времени метод будет заменен на правильный

        Находит пользователей по значению поля дополнительной карточки и возвращает список их идентификаторов

        URL rest/api/filecabinet/get_by_field_value
        Method GET


        Предполагается, что данный метод будет использоваться для реализации интеграционных решений (синхронизации пользователей ARTA Synergy с пользователями сторонней системы). В дополнительной карточке пользователя может храниться идентификатор соответствующего пользователя в сторонней системе (или иное поле, присутствующее в обоих системах и позволяющее установить соответствие между пользователями, например, ИИН) этот метод позволит найти идентификатор пользователя в нашей системе по его идентификатору из сторонней системы

        Поиск производится по сначала по ключу, а в случае отсутствия ключа - по значению (key и value из данных компонента, /api/asforms/data/{dataUUID}).

        Для компонента "Переключатель вариантов" это порядок обратный, сначала по value, затем - по key. Надо учитывать, что в этом компоненте из-за особенностей реализации в key хранится название вариантов, а в value - значение.

        Parameters:
        formUUID - uuid формы, по полю которой необходимо произвести поиск
        formCode - uuid формы, по полю которой необходимо произвести поиск
        fieldName - название поля, по которому необходимо произвести поиск
        value - значение поля
        locale - локаль пользователя
        Returns:
        список, состоящий из идентификаторов пользователей
kz.arta.synergy.api.rest.filecabinet

Class PositionsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.filecabinet.PositionsService


  • public class PositionsService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 23.08.13 Time: 18:08

    Содержит методы для управления должностями, назначением на должности

    • Constructor Summary

      Constructors 
      Constructor and Description
      PositionsService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String appointAssistant(java.lang.String nameRu, java.lang.String nameKz, java.lang.String nameEn, int number, java.lang.String departmentID, java.util.List<java.lang.String> childDepartmentID, java.lang.String userID, java.lang.String locale)
      Метод создает должность заместителя подразделения и назначает на него пользователя

      URL rest/api/positions/assistant/appoint
      Method POST

      java.lang.String appointToPosition(java.lang.String positionID, java.lang.String userID, java.lang.String locale)
      Метод назначает на должность специалиста/руководителя подразделения

      URL rest/api/positions/appoint
      Method GET

      java.lang.String deleteAssistant(java.lang.String assistantID, java.lang.String locale)
      Метод удаляет должность заместителя и увольняет с нее назначенного пользователя

      URL rest/api/positions/assistant/delete
      Method GET

      java.lang.String deletePosition(java.lang.String positionID, java.lang.String locale)
      Метод удаляет должность специалиста

      URL rest/api/positions/delete
      Method GET

      java.lang.String dischargeFromPosition(java.lang.String positionID, java.lang.String userID, java.lang.String locale)
      Метод снимает с должности специалиста/руководителя подразделения

      URL rest/api/positions/discharge
      Method GET

      java.lang.String getAssistants(java.lang.String departmentID, java.lang.String locale)
      Возвращает информацию о заместителях руководителя подразделения

      URL rest/api/positions/assistant/get
      Method GET

      java.lang.String getPosition(java.lang.String positionID, java.lang.String locale)
      Метод возвращает информацию о должности

      URL rest/api/positions/get
      Method GET

      java.lang.String getPositionCards(java.lang.String positionID, java.lang.String locale)
      Возвращает список дополнительных карточек для данной должности

      URL rest/api/positions/get_cards
      Method GET


      Для заполнения полей карточки надо использовать метод APIFormsService#save

      java.lang.String getPositionsByFieldValue(java.lang.String formUUID, java.lang.String formCode, java.lang.String fieldName, java.lang.String value, java.lang.String locale)
      ВНИМАНИЕ!
      Response getPositionsWithCards(java.lang.String departmentID, int startRecord, int recordsCount, java.lang.String locale)
      Метод для получения информации о должностях департамента с карточками

      URL /rest/api/positions/getPositionsWithCards
      Method GET

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

      java.lang.String saveAssistant(java.lang.String nameRu, java.lang.String nameKz, java.lang.String nameEn, int number, java.lang.String departmentID, java.util.List<java.lang.String> childDepartmentID, java.lang.String userID, java.lang.String assistantID, java.lang.String locale)
      Метод изменяет данные заместителя руководителя

      URL rest/api/positions/assistant/save
      Method POST

      java.lang.String savePosition(java.lang.String nameRu, java.lang.String nameKz, java.lang.String nameEn, java.lang.String pointersCode, java.lang.String departmentID, java.lang.String positionID, int positionType, int number, java.lang.String locale)
      Метод создает/изменяет должность (специалиста/руководителя) орг структуры

      URL rest/api/positions/save
      Method POST

      Response searchPositions(java.util.List<java.lang.String> pointerCodes, java.lang.String pointerCodeSearchTypeP, java.util.List<java.lang.String> names, java.lang.String nameSearchTypeP, java.util.List<java.lang.String> codes, java.lang.String codeSearchTypeP, java.lang.String deleted, int recordsCount, int startRecord, java.lang.String locale)
      Метод поиска должностей URL: /rest/api/positions/search Тип: GET
      Response searchPositionWithCardFields(int startRecord, int recordsCount, boolean showAll, boolean showOnlyVacant, java.lang.String locale, java.lang.String userID, java.lang.String search, java.lang.String departmentID, java.lang.String filterDepartmentID, java.lang.String filterUserID, java.lang.String formID, java.util.List<java.lang.String> cmpIds)
      получение списка должностей с полями карточек
      url: /rest/api/positions/searchPositionWithCardFields
      method : GET
      startRecord - по умолчанию 0
      recordsCount - по умолчанию 30
      locale - локаль
      departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
      search параметр текстового поиска
      showAll - false по умолчанию; отображать все должности (false - отображать подчиненные должности)
      showOnlyVacant - false по умолчанию, отображать только вакантные должности (по ним определяется максимальный уровень иерархии верх который нужно отображать и подчиненные должности)
      userID пользователь от имени которого выполнять поиск
      filterDepartmentID идентификатор непосредственного родительского подразделения
      filterUserID идентификатор пользователя чьи должности необходимо показать
      formID идентификатор формы поля карточки которой нужно поднять
      cmpId идентификаторы полей (можно передавать несколько cmpId=id1&cmpId=id2&cmpId=id3 и так далее)
      • Methods inherited from class java.lang.Object

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

      • PositionsService

        public PositionsService()
    • Method Detail

      • savePosition

        public java.lang.String savePosition(java.lang.String nameRu,
                                             java.lang.String nameKz,
                                             java.lang.String nameEn,
                                             java.lang.String pointersCode,
                                             java.lang.String departmentID,
                                             java.lang.String positionID,
                                             int positionType,
                                             int number,
                                             java.lang.String locale)

        Метод создает/изменяет должность (специалиста/руководителя) орг структуры

        URL rest/api/positions/save
        Method POST

        Parameters:
        nameRu - Название должности на русском языке, FormParam
        nameKz - Название должности на казахском языке, FormParam
        nameEn - Название должности на английском языке, FormParam
        pointersCode - код показателя, FormParam
        positionID - UUID должности, FormParam
        departmentID - UUID родительского подразделения, FormParam
        positionType - тип должности, FormParam
        number - порядковый номер дожности, может отсутствовать, FormParam
        locale - локаль, QueryParam
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке. В случае успешного выполнения так же возвращается positionID идентификатор созданной/измененной должности
      • deletePosition

        public java.lang.String deletePosition(java.lang.String positionID,
                                               java.lang.String locale)

        Метод удаляет должность специалиста

        URL rest/api/positions/delete
        Method GET

        Parameters:
        positionID - UUID должности, которую необходимо удалить (QueryParam)
        locale - локаль (QueryParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке/успешном выполнении
      • getPosition

        public java.lang.String getPosition(java.lang.String positionID,
                                            java.lang.String locale)

        Метод возвращает информацию о должности

        URL rest/api/positions/get
        Method GET

        Parameters:
        positionID - UUID должности (QueryParam)
        locale - локаль (QueryParam)
        Returns:
      • getPositionsWithCards

        public Response getPositionsWithCards(java.lang.String departmentID,
                                              int startRecord,
                                              int recordsCount,
                                              java.lang.String locale)

        Метод для получения информации о должностях департамента с карточками

        URL /rest/api/positions/getPositionsWithCards
        Method GET

        Можно указать несколько компонентов для каждой карточки. При этом необходимо будет указать параметр positionFormID и один или несколько cmpID.
        При указании одновременно нескольких наборов параметров необходимо дополнительно передать параметры поиска, прибавив к названиям параметров
        порядковый номер набора параметров. Количество наборов параметров, которые можно добавить неограничено. Главное соблюдать правильную нумерацию
        названий параметров: 1, 2, 3 и т.д. Первый набор не имеет порядкового номера. Таким образом, метод получит дополнительный набор параметров
        positionFormID1, cmpID1, positionFormID2, cmpID2 и т.д.Соотношение positionFormIDx к cmpIDx - один ко многим.
        Пример запроса:
        /rest/api/positions/getPositionsWithCards?departmentID=4df92af0-da1d-11e5-9c63-1e88d1bc0767&positionFormID=373c3270-cf0b-11e5-a154-1e88d1bc0767&cmpID=category&cmpID=rang
        &positionFormID1=23727710-cf22-11e5-a154-1e88d1bc0767&cmpID1=group&positionFormID2=13727710-cf22-11e5-a154-1e88d1bc0767&cmpID2=text&cmpID2=date

        Parameters:
        departmentID - идентификатор подразделения, должности которого необходимо вернуть;
        recursive - флаг рекурсивности поиска должностей (по умолч. false, необязательный):
        • true - поиск производится по всему дереву подразделения;
        • false - поиск производится непосредственно в указанном подразделении;

        cmpIsNeeded - флаг необходимости возврата полей карточки (по умолч. true, не обязательный). Принимает значения:
        • true - возврат полей карточки требуется;
        • false - возврат полей карточки не требуется;

        positionFormID - идентификатор карточки должностей, данные которой необходимо вернуть,обязателен, если в запросе не указан параметр cmpIsNeeded=false;
        positionFormCode - код карточки должностей, данные которой необходимо вернуть,обязателен, если в запросе не указан параметр cmpIsNeeded=false;
        cmpID - идентификатор элемента формы, информацию из которого необходимо вернуть. Может быть передано несколько значений, обязателен, если в запросе не указан параметр cmpIsNeeded=false;
        startRecord - номер записи результатов, начиная с которой будут возвращены записи(по умолчанию 0, не обязательный);
        recordsCount - количество результатов, которые необходимо вернуть (по умолчанию 30, максимум 50, не обязательный);
        locale - локаль;
        Returns:
        В случае успешного выполнения метод возвращает JSON в виде объектов с ключами по positionFormID и cmpID:
        • positionID - идентификатор должности;
        • positionName - наименование должности;
        • positionType - тип должности, один из следующих вариантов:
          • 1 - Руководитель;
          • 2 - Специалист;
          • 32 - Исполняющий обязанности;
          • 256 - Заместитель;
        • formUUID - идентификатор формы карточки должности;
        • formCode - код формы карточек должностей;
        • cmpData - данные из поля в карточке должностей.

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

         [
         { "positionID": "81ac53f0-c351-11e5-ab17-1e88d1bc0767",
          "positionName": "Водитель",
          "positionType": "256",
          "forms":[
            {
               "formUUID":"373c3270-cf0b-11e5-a154-1e88d1bc0767",
               "formCode":"form_code",
               "asfDataUUID":"41fd8240-b822-11e5-8630-525400bb7fc6",
            "values":[
               { "category":"2" },
               { "rang":"5" } ]
         },
         {
           "formUUID":"23727710-cf22-11e5-a154-1e88d1bc0767",
           "formCode":"form_code",
          "asfDataUUID":"182eeca0-d98e-11e5-8c91-525400bb7fc6",
           "values":[
               { "group":"основная" } ]
         },
         {
           "formUUID":"13727710-cf22-11e5-a154-1e88d1bc0767",
           "formCode":"form_code",
           "asfDataUUID":"45dg8240-b822-11e5-8630-525400bb7fc6",
           "values":[
               { "text":"Добавить в штатное расписание" },
               { "date":"2016-05-02" } ]
         }
           ]
         },
         { "positionID": "693616c0-d49b-11e5-a5fb-1e88d1bc0767",
          "positionName": "Водитель",
          "positionType": "2",
          "forms":[
          {
            "formUUID":"373c3270-cf0b-11e5-a154-1e88d1bc0767",
            "formCode":"form_code",
            "asfDataUUID":"c952f930-cfd5-11e5-bae8-525400bb7fc6",
            "values":[
               { "category":"3" },
               { "rang":"7" } ]
         },
         {
           "formUUID":"23727710-cf22-11e5-a154-1e88d1bc0767",
           "formCode":"form_code",
           "asfDataUUID":"1d8b0c40-91dd-11e5-9fa7-525400bb7fc6",
           "values":[
               { "group":"вспомогательная" } ]
         },
         {
           "formUUID":"13727710-cf22-11e5-a154-1e88d1bc0767",
           "formCode":"form_code",
           "asfDataUUID":"26lg8240-25jz-11e5-8630-525400bb7fc6",
           "values":[
               { "text":"Есть в штатном расписании" },
               { "date":"2015-06-02" } ]
               }
         ]
         },
         { "positionID": "ccee5340-c991-11e5-afba-1e88d1bc0767",
          "positionName": "Водитель",
          "positionType": "2",
          "forms":[
         {
            "formUUID":"373c3270-cf0b-11e5-a154-1e88d1bc0767",
            "formCode":"form_code",
            "asfDataUUID":"822ac240-b428-11e5-8630-525400bb7fc6",
            "values":[
               { "category":"2" },
               { "rang":"6" } ]
         },
         {
           "formUUID":"23727710-cf22-11e5-a154-1e88d1bc0767",
           "formCode":"form_code",
           "asfDataUUID":"39877130-9f17-11e5-9ae6-525400bb7fc6",
           "values":[
               { "group":"обслуживающая" } ]
         },
         {
           "formUUID":"13727710-cf22-11e5-a154-1e88d1bc0767",
           "formCode":"form_code",
           "asfDataUUID":"d66dd140-b822-11e5-8630-525400bb7fc6",
           "values":[
               { "text":"Добавить в штатное расписание" },
               { "date":"2016-02-15" } ]
         }
           ]
         }
         ]
         

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

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

        public java.lang.String appointToPosition(java.lang.String positionID,
                                                  java.lang.String userID,
                                                  java.lang.String locale)

        Метод назначает на должность специалиста/руководителя подразделения

        URL rest/api/positions/appoint
        Method GET

        Parameters:
        positionID - UUID должности на которую надо назначить специалиста (QueryParam)
        userID - UUID пользоватля, которого надо назначить на должность (QueryParam)
        locale - локаль пользователя, вызвавшего метод (QueryParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке/успешном выполнении
      • dischargeFromPosition

        public java.lang.String dischargeFromPosition(java.lang.String positionID,
                                                      java.lang.String userID,
                                                      java.lang.String locale)

        Метод снимает с должности специалиста/руководителя подразделения

        URL rest/api/positions/discharge
        Method GET

        Parameters:
        positionID - UUID должности (QueryParam)
        userID - UUID пользователя, которого надо снять с должности positionID (QueryParam)
        locale - локаль пользователя, вызвавшего метод (QueryParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке/успешном выполнении
      • appointAssistant

        public java.lang.String appointAssistant(java.lang.String nameRu,
                                                 java.lang.String nameKz,
                                                 java.lang.String nameEn,
                                                 int number,
                                                 java.lang.String departmentID,
                                                 java.util.List<java.lang.String> childDepartmentID,
                                                 java.lang.String userID,
                                                 java.lang.String locale)

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

        URL rest/api/positions/assistant/appoint
        Method POST

        Parameters:
        nameRu - название должности на русском языке (FormParam)
        nameKz - название должности на казахском языке (FormParam)
        nameEn - название должности на русском языке (FormParam)
        departmentID - UUID родительского департамента (FormParam)
        childDepartmentID - UUID-ы дочерних подразделений (FormParam)
        userID - UUID пользователя которого надо назначить на должность (FormParam)
        number - порядковый номер для сортировки (по умолчанию 0) (FormParam)
        locale - локаль пользователя, вызвавшего метод (QueryParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке. В случае успешного выполнения так же возвращается assistantID идентификатор созданной должности заместителя
      • saveAssistant

        public java.lang.String saveAssistant(java.lang.String nameRu,
                                              java.lang.String nameKz,
                                              java.lang.String nameEn,
                                              int number,
                                              java.lang.String departmentID,
                                              java.util.List<java.lang.String> childDepartmentID,
                                              java.lang.String userID,
                                              java.lang.String assistantID,
                                              java.lang.String locale)

        Метод изменяет данные заместителя руководителя

        URL rest/api/positions/assistant/save
        Method POST

        Parameters:
        nameRu - название должности на русском языке (FormParam)
        nameKz - название должности на казахском языке (FormParam)
        nameEn - название должности на русском языке (FormParam)
        departmentID - UUID родительского департамента (FormParam)
        childDepartmentID - UUID-ы дочерних подразделений (FormParam)
        userID - UUID пользователя которого надо назначить на должность (FormParam)
        number - порядковый номер для сортировки (по умолчанию 0) (FormParam)
        assistantID - идентификатор заместителя (FormParam)
        locale - локаль пользователя, вызвавшего метод (QueryParam)
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке. В случае успешного выполнения так же возвращается assistantID идентификатор созданной должности заместителя
      • getAssistants

        public java.lang.String getAssistants(java.lang.String departmentID,
                                              java.lang.String locale)

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

        URL rest/api/positions/assistant/get
        Method GET

        Parameters:
        departmentID - идентификатор подразделения, для которого необходимо получить заместителей
        locale - локаль пользователя
        Returns:
        список заместителей, см FileCabinetWrapper#getAssistantJson
        See Also:
        FileCabinetWrapper#getAssistantJson(arta.synergy.web.common.client.data.filecabinet.Assistant)
      • deleteAssistant

        public java.lang.String deleteAssistant(java.lang.String assistantID,
                                                java.lang.String locale)

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

        URL rest/api/positions/assistant/delete
        Method GET

        Parameters:
        assistantID - UUID должности заместителя
        locale - локаль пользователя, вызвавшего метод
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке
      • getPositionCards

        public java.lang.String getPositionCards(java.lang.String positionID,
                                                 java.lang.String locale)

        Возвращает список дополнительных карточек для данной должности

        URL rest/api/positions/get_cards
        Method GET


        Для заполнения полей карточки надо использовать метод APIFormsService#save

        Parameters:
        positionID - uuid должности
        locale - локаль пользователя
        Returns:
        список json объектов с информацией о карточке должности, для каждой карточки присутствуют поля:
        form-uuid uuid формы
        formCode код формы
        name название карточки
        editable true - есть право наредактирование, иначе - false
        data-uuid uuid данных по данной карточке
        mandatory true - карточкая обязательна для заполнения, иначе - false
        See Also:
        APIFormsService#save(String, String, String, boolean, String)
      • getPositionsByFieldValue

        public java.lang.String getPositionsByFieldValue(java.lang.String formUUID,
                                                         java.lang.String formCode,
                                                         java.lang.String fieldName,
                                                         java.lang.String value,
                                                         java.lang.String locale)

        ВНИМАНИЕ! Логика данного метода реализована некорректно, поэтому не рекомендуем его использовать. В скором времени метод будет заменен на правильный

        Находит должности по значению поля дополнительной карточки и возвращает список их идентификаторов

        URL rest/api/positions/get_by_field_value
        Method GET


        Предполагается, что данный метод будет использоваться для реализации интеграционных решений (синхронизации орг структуры ARTA Synergy с орг структурой сторонней системы). В дополнительной карточке должности может храниться идентификатор соответствующей должности в сторонней системе, этот метод позволит найти идентификатор должности в нашей системе по ее идентификатору в сторонней системы

        Поиск производится по сначала по ключу, а в случае отсутствия ключа - по значению (key и value из данных компонента, /api/asforms/data/{dataUUID}).

        Для компонента "Переключатель вариантов" это порядок обратный, сначала по value, затем - по key. Надо учитывать, что в этом компоненте из-за особенностей реализации в key хранится название вариантов, а в value - значение.

        Parameters:
        formUUID - идентификатор формы
        formCode - код формы
        fieldName - название поля
        value - значение поля
        locale - локаль пользователя
        Returns:
        список идентификаторов должностей
      • searchPositions

        public Response searchPositions(java.util.List<java.lang.String> pointerCodes,
                                        java.lang.String pointerCodeSearchTypeP,
                                        java.util.List<java.lang.String> names,
                                        java.lang.String nameSearchTypeP,
                                        java.util.List<java.lang.String> codes,
                                        java.lang.String codeSearchTypeP,
                                        java.lang.String deleted,
                                        int recordsCount,
                                        int startRecord,
                                        java.lang.String locale)

        Метод поиска должностей

        URL: /rest/api/positions/search

        Тип: GET

        Parameters:

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

        • name - название должности (необяз.), может быть передано несколько значений
        • code - шифр должности (необяз.), может быть передано несколько значений
        • pointer_code - код показателя (необяз.), может быть передано несколько значений
        • recordsCount - количество результатов, которые необходимо вернуть (по умолчанию 30). Максимальное значение параметра 100
        • startRecord - номер записи результатов, начиная с которой будут возвращены записи (по умолчанию 0)
        • searchTypeN - тип сравнения для параметра name (по умолчанию partial). Может принимать следующие значения:
          • exact - точное совпадение поискового запроса и значения поля
          • partial - вхождение поискового запроса в значение поля
        • searchTypeC - тип сравнения для параметра code (по умолчанию partial). Может принимать следующие значения:
          • exact - точное совпадение поискового запроса и значения поля
          • partial - вхождение поискового запроса в значение поля
        • searchTypePC - тип сравнения для параметра pointer_code (по умолчанию exact). Может принимать следующие значения:
          • exact - точное совпадение поискового запроса и значения поля
          • partial - вхождение поискового запроса в значение поля
        • deleted - включать ли в результат поиска удаленные должности. Допустимые значения: true или false
        • locale - локаль пользователя. Данный параметр учитывается при поиске по названию должности
        Returns:

        В случае успешного выполнения метод возвращает массив строк, являющихся идентификаторами должностей.

        Пример запроса:

        /rest/api/positions/search?name=Администратор&name=Менеджер

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

        [ "rgg66d1-ad54-5462-aef5-aggrr55fd02a", "vgikwj4c6-88gh-ef44-3ffe-oepjfee5d6" ]

        При указании одновременно разных параметров результат запроса будет связан логическим И.

        Пример запроса: /rest/api/positions/search?pointer_code=dep5&code=TRJ163

        А при указании одновременно одинаковых параметров, результат будет производится по логическому ИЛИ.

        Пример запроса: /rest/api/positions/search?name=Админ&name=Ассистент

        В случае если по переданным входным параметрам ничего не найдено, сервер возвращает пустой массив.

      • searchPositionWithCardFields

        public Response searchPositionWithCardFields(int startRecord,
                                                     int recordsCount,
                                                     boolean showAll,
                                                     boolean showOnlyVacant,
                                                     java.lang.String locale,
                                                     java.lang.String userID,
                                                     java.lang.String search,
                                                     java.lang.String departmentID,
                                                     java.lang.String filterDepartmentID,
                                                     java.lang.String filterUserID,
                                                     java.lang.String formID,
                                                     java.util.List<java.lang.String> cmpIds)
        получение списка должностей с полями карточек
        url: /rest/api/positions/searchPositionWithCardFields
        method : GET
        startRecord - по умолчанию 0
        recordsCount - по умолчанию 30
        locale - локаль
        departmentID идентификатора департамент чьи дочерние должности (всю иерархию) нужно вернуть
        search параметр текстового поиска
        showAll - false по умолчанию; отображать все должности (false - отображать подчиненные должности)
        showOnlyVacant - false по умолчанию, отображать только вакантные должности (по ним определяется максимальный уровень иерархии верх который нужно отображать и подчиненные должности)
        userID пользователь от имени которого выполнять поиск
        filterDepartmentID идентификатор непосредственного родительского подразделения
        filterUserID идентификатор пользователя чьи должности необходимо показать
        formID идентификатор формы поля карточки которой нужно поднять
        cmpId идентификаторы полей (можно передавать несколько cmpId=id1&cmpId=id2&cmpId=id3 и так далее)
        Returns:
        массив найденных должностей поля возвращаемой сущности
        code код
        departmentName наименование департамента
        elementID идентификатор должности
        elementName наименование должности
        translation не используется
        type не используется
        customFields дополнительные поля тут будет информация о карточке должности и полях (cmpIds)
        например
        customFields.asfDataId - идентификатор файла по форме карточки должности
        customFields.cmpId1_key - ключ значения поля карточки 1
        customFields.cmpId1_value - значение поле карточки 1
        customFields.cmpId2_key - ключ значения поля карточки 2
        customFields.cmpId2_value - значение поле карточки 2

        если в процессе произошла ошибка метод возвращает http status 500 INTERNAL_SERVER_ERROR
kz.arta.synergy.api.rest.cors

Class AccessForbiddenServlet

  • java.lang.Object
    • HttpServlet
      • kz.arta.synergy.api.rest.cors.AccessForbiddenServlet


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

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

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

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

      • WWW_AUTHENTICATE

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

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

      • AccessForbiddenServlet

        public AccessForbiddenServlet()
    • Method Detail

      • service

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

Class ReportService

  • java.lang.Object
    • kz.arta.synergy.api.rest.report.ReportService


  • public class ReportService
    extends java.lang.Object
    Класс отвечает за API взаимодействия с модулем отчетов. User: MGetmanov Date: 05.09.14 Time: 11:32
    • Constructor Summary

      Constructors 
      Constructor and Description
      ReportService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String getReport(java.lang.String fileName, java.lang.String reportID, java.lang.String parentIdentifier, java.lang.Boolean inline, java.lang.String locale)
      Метод позволяет получить результат выполнения отчета для пользователя.
      java.lang.String getReportListForUser(java.lang.String locale)
      Метод позволяет получить информацию о доступных текущему пользователю отчетов.
      • Methods inherited from class java.lang.Object

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

      • ReportService

        public ReportService()
    • Method Detail

      • getReportListForUser

        public java.lang.String getReportListForUser(java.lang.String locale)
        Метод позволяет получить информацию о доступных текущему пользователю отчетов. Данные передаются в формате JSON в кодировке utf-8. JSON имеет поля: reportID - идентификатор отчета nameen - название отчета для англоязычной локали nameru - название отчета для русскоязычной локали namekz - название отчета для казахскоязычной локали defaultName - имя файла по умолчанию fileName - имя файла objectType - идентификатор objectType отчета. Object Type - задается битовой маской

        Объект конфигуратора - 0

        Тип объекта цель - 2

        Тип объекта поручение - 4

        Тип объекта мероприятие (план) - 64

        Тип объекта Задача - 8

        Тип объекта показатель - 16

        Пользователь - 32

        План - 256

        Портфель проектов - 128

        Документ в журнале документов - 1024

        Процесс - 512

        Департамент - 2048

        Должность - 4096

        Маршрут - 8192

        Карта - 16384

        Файл - 32768

        Реестр - 65536

        Карточка документа - 131072

        Группа - 262144

        loadType - идентификатор типа загрузки отчета

        1 - загрузить файл, 2 - сохранить в хранилище

        Так же предаются параметры для каждого отчета. Они предаются в поле params, являющимся массивом JSON объектов Объект с описанием параметров содержит поля: code - Код параметра label - Подпись параметра value - Значение параметра по умолчанию type - Java класс, определяющий тип данных принимаемым в качетсве объекта параметра isOptional - является ли данный параметр опциональным

        Для обращения к API методу необходимо обратиться по URL [SYNERGY_HOST]/Synergy/rest/api/report/list

        Parameters:
        locale - - не обязательный параметр указывающий необходимую локаль
        Returns:
        - JSON с результатами запроса
      • getReport

        public java.lang.String getReport(java.lang.String fileName,
                                          java.lang.String reportID,
                                          java.lang.String parentIdentifier,
                                          java.lang.Boolean inline,
                                          java.lang.String locale)
        Метод позволяет получить результат выполнения отчета для пользователя. Данные передаются в формате JSON в кодировке utf-8 или байтовым потоком - в зависимости от настроек отчета. При передаче параметров необходимо учитывать, что идентификаторы параметров регистрозависимые JSON имеет поля: reportDate - Дата создания отчета в формате GWT identifier - идентификатор файла отчета в хранилище path - путь отчету в хранилище parentIdentifier - идентификатор родительской директории В случае если отчет требует передачи параметров они должны быть переданы в url параметрах. Например если отчет требует передачи userID то в строку запроса необходимо добавить &userID=[USER_ID]. Для параметров users_names, user_names, department_name, departments_name, action_name, actions_name нужно передавать соответствующие идентификаторы. В случае перечисления идентификаторы разделять запятыми. Например, &user_names=userID1, userID2 Обязательные параметры для отчета обязательно должны присутствовать в строке запроса. Для обращения к API методу необходимо обратиться по URL [SYNERGY_HOST]/Synergy/rest/api/report/do
        Parameters:
        fileName - - требуемое имя файла. Если имя файла не было передано то будет использовано имя файла по умолчанию.
        reportID - - идентификатор отчета
        parentIdentifier - - идентификатор папки для сохранения отчета
        inline - - тип передачи (true - inline/false - attachment)
        locale - - требуемая локаль
        Returns:
        - результат выполнения запроса
kz.arta.synergy.api.rest.storage

Class FileDownloadServlet

  • java.lang.Object
    • DefaultHttpServlet
      • kz.arta.synergy.api.rest.storage.FileDownloadServlet


  • public class FileDownloadServlet
    extends DefaultHttpServlet
    Created by IntelliJ IDEA. User: neox Date: 06.02.2015 Time: 14:07:12 Сервелет для загрузки исходного файла
    • 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

      • FileDownloadServlet

        public FileDownloadServlet()
    • 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.storage

Class StorageGroupsService

  • java.lang.Object
    • kz.arta.synergy.api.rest.storage.StorageGroupsService


  • public class StorageGroupsService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 26.05.13 Time: 16:37 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 addUserToGroup(java.lang.String userID, int groupID, java.lang.String locale)
      Метод добавляет пользователя в группу

      URL rest/api/storage/groups/add_user
      Method GET

      java.lang.String getGroups(java.lang.String locale, int startRecord, int recordsCount)
      Метод возвращает список групп

      URL rest/api/storage/groups/list
      Method GET

      java.lang.String removeUserFromGroup(java.lang.String userID, int groupID, java.lang.String locale)
      Удаляет пользователя из группы

      URL rest/api/storage/groups/remove_user
      Method GET

      • Methods inherited from class java.lang.Object

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

      • StorageGroupsService

        public StorageGroupsService()
    • Method Detail

      • addUserToGroup

        public java.lang.String addUserToGroup(java.lang.String userID,
                                               int groupID,
                                               java.lang.String locale)

        Метод добавляет пользователя в группу

        URL rest/api/storage/groups/add_user
        Method GET

        Parameters:
        userID - идентификатор пользователя
        groupID - идентификатор группы
        locale -
        Returns:
      • removeUserFromGroup

        public java.lang.String removeUserFromGroup(java.lang.String userID,
                                                    int groupID,
                                                    java.lang.String locale)

        Удаляет пользователя из группы

        URL rest/api/storage/groups/remove_user
        Method GET

        Parameters:
        userID - идентификатор пользователя
        groupID - идентификатор группы
        locale -
        Returns:
      • getGroups

        public java.lang.String getGroups(java.lang.String locale,
                                          int startRecord,
                                          int recordsCount)

        Метод возвращает список групп

        URL rest/api/storage/groups/list
        Method GET

        Parameters:
        locale - локаль авторизованного пользователя
        startRecord - номер первой записи
        recordsCount - количество записей в списке
        Returns:
        json объект - список групп, для каждой группы указаны:
        groupID - идентификатор группы
        name - название группы
kz.arta.synergy.api.rest.storage

Class PDFDownloadServlet

  • java.lang.Object
    • DefaultHttpServlet
      • kz.arta.synergy.api.rest.storage.PDFDownloadServlet


  • public class PDFDownloadServlet
    extends DefaultHttpServlet
    Created by IntelliJ IDEA. User: topa Date: 05.04.2010 Time: 16:17:12
    • 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

      • PDFDownloadServlet

        public PDFDownloadServlet()
    • 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.storage

Class ASFFileServlet

  • java.lang.Object
    • DefaultHttpServlet
      • kz.arta.synergy.api.rest.storage.ASFFileServlet


  • public class ASFFileServlet
    extends DefaultHttpServlet
    Created by val Date: 01.04.2013 Time: 16:27
    • Constructor Summary

      Constructors 
      Constructor and Description
      ASFFileServlet() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected void doGet(HttpServletRequest req, HttpServletResponse res) 
      protected void doPost(HttpServletRequest req, HttpServletResponse res) 
      java.util.Map<java.lang.String,java.lang.Object> getImportingForms() 
      • Methods inherited from class java.lang.Object

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

      • ASFFileServlet

        public ASFFileServlet()
    • Method Detail

      • doPost

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

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

        public java.util.Map<java.lang.String,java.lang.Object> getImportingForms()
kz.arta.synergy.api.rest.storage

Class IconServlet

  • java.lang.Object
    • HttpServlet
      • kz.arta.synergy.api.rest.storage.IconServlet


  • public class IconServlet
    extends HttpServlet
    Created by IntelliJ IDEA. User: topa Date: 05.07.13 Time: 16:51 To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      IconServlet() 
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      protected void doGet(HttpServletRequest request, HttpServletResponse response) 
      static void init(ServletContext cnxt) 
      • Methods inherited from class java.lang.Object

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

      • IconServlet

        public IconServlet()
    • Method Detail

      • init

        public static void init(ServletContext cnxt)
      • doGet

        protected void doGet(HttpServletRequest request,
                             HttpServletResponse response)
                      throws ServletException,
                             java.io.IOException
        Throws:
        ServletException
        java.io.IOException
kz.arta.synergy.api.rest.storage

Class StorageService

  • java.lang.Object
    • kz.arta.synergy.api.rest.storage.StorageService


  • public class StorageService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 04.09.13 Time: 10:33 To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      StorageService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String add(java.lang.String folderID, java.lang.String path, java.lang.String name, java.lang.String locale)
      Метод используется для добавления файла в хранилище
      Тип: POST
      URL: rest/api/storage/add
      Response addFile(java.lang.String dataUUID, java.lang.String filePath, java.lang.String fileName)
      добавляет загруженный на сервер файл в файл по форме Path rest/api/storage/asffile/addFile
      Response asfFile(MultipartFormDataInput input, java.lang.String nodeID, java.lang.String dataUUID)
      загрузка файла в файл по форме (для реквестов более 2-х мегабайт работать не будет) Path rest/api/storage/asffile/upload
      Response copy(java.util.Map<java.lang.String,java.lang.String> params)
      копировать файл из хранилища в файл по форме Path rest/api/storage/asffile/copy
      java.lang.String copy(java.lang.String fileID, java.lang.String documentID, java.lang.String container, java.lang.String locale)
      Метод используется для копирования файла из хранилища в документ
      Тип: POST
      URL: rest/api/storage/copy
      java.lang.String create(java.lang.String folderID, java.lang.String folderName, java.lang.String locale)
      Метод используется для создания папки в хранилище
      Тип: POST
      URL: rest/api/storage/create
      java.lang.String createAttachment(java.lang.String docID, java.lang.String path, java.lang.String fileName, java.lang.String filePath, java.lang.String locale)
      Метод добавляет вложение к документу из временного файла, загруженного на сервер с помощью API хранилища

      URL rest/api/storage/document/{docID}/attachment/create
      Method POST

      Response createHtd(java.util.Map<java.lang.String,java.lang.String> params)
      Path rest/api/storage/asffile/createHtd
      java.lang.String getDescription(java.lang.String elementID, boolean mobile, java.lang.String locale)
      Возвращает детальную информацию папки/файла
      URL: rest/api/storage/description
      Тип: GET
      java.lang.String getIdentifierByPath(java.lang.String path)
      Получение идентификатора файла либо папки по пути

      URL: rest/api/storage/get_identifier_by_path
      Тип: GET

      java.lang.String getPathToElement(java.lang.String elementID, java.lang.String locale) 
      java.lang.String listFavoriteFolders()
      Метод возвращает избранные папки в хранилище Метод не принимает никакие параметры.
      java.lang.String listFiles(java.lang.String parentID, boolean getOnlyFolders, java.lang.String locale)
      Метод возвращает список файлов в папке с идентификатором parentID

      URL rest/api/storage/list
      Method GET

      java.lang.String move(java.lang.String elementID, java.lang.String folderID, java.lang.String locale)
      Метод используется для перемещения файла или папки в хранилище
      Тип: POST
      URL: rest/api/storage/move
      java.lang.String remove(java.lang.String elementID, java.lang.String locale)
      Метод используется для удаления файла или папки в хранилище
      Тип: POST
      URL: rest/api/storage/remove
      java.lang.String rename(java.lang.String elementID, java.lang.String elementName, java.lang.String locale)
      Метод используется для переименования файла/папки в хранилище
      Тип: POST
      URL: rest/api/storage/rename
      java.lang.String search(java.lang.String contains, java.lang.String notContains, java.util.List<java.lang.Integer> categoryID, java.lang.String aiType, java.lang.String folderID, java.lang.String modifiedFrom, java.lang.String modifiedTo, int sizeType, int sortType, boolean includeUnpublished, boolean includeExpired, boolean includeCompanions, int firstResult, int maxResult, java.lang.String searchArea, java.lang.String locale)
      Выполняет поиск в хранилище и возвращает список найденных файлов/папок

      URL rest/api/storage/search
      Method POST

      java.lang.String startUploadFile(java.lang.String locale)
      Метод создает временный файл на стороне сервера

      URL rest/api/storage/start_upload
      Method GET
      Метод создает временный файл, для дальнейшего его использования в процессе загрузки файла на сервер.

      java.lang.String uploadPart(MultipartFormDataInput input, java.lang.String file, java.lang.String locale)
      Дописывает байты во временный файл

      URL rest/api/storage/upload_part
      Method POST
      Enctype multipart/form-data

      название поля формы для части файла должно называться - body

      • Methods inherited from class java.lang.Object

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

      • StorageService

        public StorageService()
    • Method Detail

      • startUploadFile

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

        Метод создает временный файл на стороне сервера


        URL rest/api/storage/start_upload
        Method GET

        Метод создает временный файл, для дальнейшего его использования в процессе загрузки файла на сервер. Метод возвращает путь к созданному файлу, который необходимо использовать далее в методе upload_part

        Процесс загрузки файла на сервер должен выглядить следующим образом:

        • 1. Вызываем метод start_upload и получаем путь ко временному файлу
        • 2. Записываем частями байты файла, несколько раз последовательно вызывая метод upload_part
        • 3. используем идентификатор файла в другом методе API, где это необходимо (добавление файла к работе, указание результата работы и т.п.)

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

        public java.lang.String uploadPart(MultipartFormDataInput input,
                                           java.lang.String file,
                                           java.lang.String locale)

        Дописывает байты во временный файл


        URL rest/api/storage/upload_part
        Method POST
        Enctype multipart/form-data

        название поля формы для части файла должно называться - body

        Parameters:
        file - имя временного файла, полученного методом startUploadFile (QueryParam)
        locale - локаль пользователя (QueryParam)
        Returns:
        See Also:
        startUploadFile(String)
      • getIdentifierByPath

        public java.lang.String getIdentifierByPath(java.lang.String path)
        Получение идентификатора файла либо папки по пути

        URL: rest/api/storage/get_identifier_by_path
        Тип: GET

        Parameters:
        path - путь до файла или папки хранилища
        Returns:
        json с описанием папки/файла:
        * identifier - идентификатор папки или файла;
        * is_folder (true/false) - папка («true») или файл («false»);
        * size - размер файла в байтах (для папки значение = 0);
        * path - полный путь до папки или файла;
        * name - название папки или файла;
        * modified - дата и время последнего изменения папки или файла (в формате yyyy-mm-dd hh:mm:ss);
        * userName - ФИО пользователя, выполнившего последнее изменение папки или файла (в формате Фамилия Имя О.);
        * userID - идентификатор пользователя, выполнившего последнее изменение папки или файла;
        * right - сумма чисел, определяющая набор прав на папку или файл;
        * mime - mime тип файла (отображается только при значении is_folder = «false»);
        * icon - ссылка до иконки файла (отображается только при значении is_folder = «false»).

        Пример возвращаемого json для папки http://host:port/Synergy/rest/api/storage/get_identifier_by_path?path=Хранилище/01_
             {
                "identifier": "6cacb59f-a1d6-447b-9f85-06829e942309",
                "is_folder": true,
                "size": "0",
                "path": "/company_root/01_",
                "name": "01_",
                "modified": "2013-05-24 16:15:03",
                "userName": "Admin1 Admin1 A.",
                "userID": "1",
                "right": 0,
                "notEmpty": true
             }
         
        
         Пример возвращаемого json для файла http://host:port/Synergy/rest/api/storage/get_identifier_by_path?path=Хранилище/01_/1.doc
         
             {
                "identifier": "d2a75a06-618a-4058-a6ae-99f8440d8973",
                "is_folder": false,
                "size": "2218",
                "path": "/company_root/01_/1.doc",
                "name": "1.doc",
                "modified": "2014-01-28 11:05:39",
                "userName": "Petrov Petrov ",
                "userID": "a8b370ee-138a-40a6-bd32-7f6435a1b4af",
                "right": 0,
                "mime": "text/html",
                "ai_type": "ai_text",
                "icon": "rest/api/storage/icons/get?aiType=ai_text&fileName=1.doc",
                "notEmpty": false
             }
         
      • listFiles

        public java.lang.String listFiles(java.lang.String parentID,
                                          boolean getOnlyFolders,
                                          java.lang.String locale)

        Метод возвращает список файлов в папке с идентификатором parentID


        URL rest/api/storage/list
        Method GET

        Parameters:
        parentID - - идентификатор папки, если не передан, то возвращаются все корневые папки, на которые пользователь имеет право, в том числе личная папка пользователя
        getOnlyFolders - - (true/false) - отображать ли только папки (не обяз., по умолчанию значение false);
        locale - - локаль пользователя
        Returns:
        json со списком файлов и папок:
        * identifier - идентификатор папки или файла;
        * is_folder (true/false) - папка («true») или файл («false»);
        * size - размер файла в байтах (для папки значение = 0);
        * path - полный путь до папки или файла;
        * name - название папки или файла;
        * modified - дата и время последнего изменения папки или файла (в формате yyyy-mm-dd hh:mm:ss);
        * userName - ФИО пользователя, выполнившего последнее изменение папки или файла (в формате Фамилия Имя О.);
        * userID - идентификатор пользователя, выполнившего последнее изменение папки или файла;
        * right - сумма чисел, определяющая набор прав на папку или файл;
        * mime - mime тип файла (отображается только при значении is_folder = «false»);
        * icon - ссылка до иконки файла (отображается только при значении is_folder = «false»).

        Пример возвращаемого массива для папок
           [
             {
               "identifier": "5719212b-97b9-4558-9e67-baa04d0adc62",
               "is_folder": true,
               "size": "0",
               "path": "/aiservice/home/ee71a4c6-888a-4f04-86de-44ab394f5749",
               "name": "Мои документы",
               "modified": "0007-05-04 10:12:00",
               "userName": "Слепаков Иван И.",
               "userID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
               "right": 7,
              },
              {
                "identifier": "91d1816a-b30e-47ea-988c-bd8864daa253",
                "is_folder": true,
                "size": "0",
                "path": "/company_root",
                "name": "company_root",
                "modified": "2011-10-10 09:13:39",
                "userName": " ",
                "userID": "0000-0000-0000-0002",
                "right": 7,
              }
           ]
         
        Пример возвращаемого массива для файлов
           [
             {
               "identifier":"f5003070-3740-4920-a4c5-01f8bf440774",
               "is_folder":false,
               "size":"19644",
               "path":"/company_root/Проект/Файл1.odt",
               "name":"Файл1.odt",
               "modified":"2013-03-13 16:35:45",
               "userName":"Слепаков Иван И.",
               "userID":"ee71a4c6-888a-4f04-86de-44ab394f5749",
               "right":7,
               "mime ":"application/vnd.oasis.opendocument.text",
               "icon":"rest/api/storage/icons/get?aiType=ai_text&fileName=Файл1.odt"
             },
             {
               "identifier":"a8bb8fba-b418-4fcb-9b86-519c261c446f",
               "is_folder":false,
               "size":"850",
               "path":"/company_root/Проект/Файл2.htd",
               "name":"Файл2.htd",
               "modified":"0016-05-03 03:15:00",
               "userName":"Слепаков Иван И.",
               "userID":"ee71a4c6-888a-4f04-86de-44ab394f5749",
               "right":7,
               "mime ":"text/htd",
               "icon":"rest/api/storage/icons/get?aiType=ai_htd&fileName=Файл2.htd"
             }
           ]
           
      • listFavoriteFolders

        public java.lang.String listFavoriteFolders()

        Метод возвращает избранные папки в хранилище

        Метод не принимает никакие параметры.


        URL: rest/api/storage/favorite_folders
        Тип: GET

        Returns:

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

        • identifier - идентификатор папки
        • name - название закладки.

        Пример возвращаемого массива
          [
             {
                 "identifier": "5719212b-97b9-4558-9e67-baa04d0adc62"
                 "name": "Общие документы"
             },
             {
                 "identifier": "91d1816a-b30e-47ea-988c-bd8864daa253"
                 "name": "Регламенты"
             }
          ]
         
      • search

        public java.lang.String search(java.lang.String contains,
                                       java.lang.String notContains,
                                       java.util.List<java.lang.Integer> categoryID,
                                       java.lang.String aiType,
                                       java.lang.String folderID,
                                       java.lang.String modifiedFrom,
                                       java.lang.String modifiedTo,
                                       int sizeType,
                                       int sortType,
                                       boolean includeUnpublished,
                                       boolean includeExpired,
                                       boolean includeCompanions,
                                       int firstResult,
                                       int maxResult,
                                       java.lang.String searchArea,
                                       java.lang.String locale)

        Выполняет поиск в хранилище и возвращает список найденных файлов/папок


        URL rest/api/storage/search
        Method POST

        Parameters:
        contains - строка, которая должна содержаться в искомых файлах
        notContains - строка, которая не должна содержаться в искомых файлах
        categoryID - идентификатор классификатора, которому должны принадлежать искомые файлы. Значение данного параметра может быть передано несколько раз.
        aiType - определяет тип искомых файлов. Может быть передано значение одной из констант:
        • AIConstants.AI_FOLDER
        • AIConstants.AI_DOCUMENT
        • AIConstants.AI_IMAGE
        • AIConstants.AI_AUDIO
        • AIConstants.AI_VIDEO
        • AI_APPLICATION

        Параметр можно не передавать. В этом случае поиск вернет все файлы.
        folderID - идентификатор папки хранилища, в которой необходимо осуществить поиск. Параметр можно не передавать, в этом случае поиск будет произведен по всем файлам, на которые у пользователя есть права
        modifiedFrom - начало периода последнего изменения в формате yyyy-MM-dd, параметр не нужно передавать если нет необходимости выполнять поиск по дате изменения
        modifiedTo - завершение периода последнего изменения в формате yyyy-MM-dd, параметр не нужно передавать если нет необходимости выполнять поиск по дате изменения
        sizeType - определяет размер искомого файла. Значением параметра может быть одно из значений констант:
        • AIConstants.ALL_SIZES
        • AIConstants.LITTLE
        • AIConstants.MIDDLE
        • AIConstants.BIG
        Значение по-умолчанию: AIConstants.ALL_SIZES
        sortType - параметр определяет тип сортировки файлов. Значением параметра может быть одно из значений констант:
        • ExtendedSearchParams.SORT_RELEVANCE
        • ExtendedSearchParams.SORT_DATE
        • ExtendedSearchParams.SORT_READSCOUNT
        Значение по-умолчанию ExtendedSearchParams.SORT_RELEVANCE
        includeUnpublished - отображать ли в результатах поиска неопубликованные файлы, значение по-умолчаню - нет
        includeExpired - отображать ли в результатах поиска файлы, срок действия которых истек,
        includeCompanions - осуществлять ли поиск в папках документов, проектов, значение по-умолчанию - нет
        firstResult - номер первой записи для возвращаемых результатов выборки, значение по-умолчанию - 1
        maxResult - количество записей, которые должны быть возвращены, значение по-умолчанию - 30
        locale - локаль пользователя
        searchArea - определяет область действия поиска. Значением параметра может быть одно из значений констант:
        • name - осуществлять поиск только по названиям файлов
        • content - осуществлять поиск только по содержимому файлов
        • all - осуществлять поиск одновременно и по названию, и по содержимому файлов. Значение по умолчанию.
        Returns:
        json вида
         
        {
        "list": [] список найденных файлов
        "begin": "", номер первой записи
        "length": "", количество возвращенных записей
        "count": "" общее количество найденных записей
        }
        Json каждого результата поиска имеет вид
         
        {
        identifier: идентификатор файла
        ai_type: тип файла
        name: название файла
        path: путь к файлу
        modified: стам изменения
        parentID: идентификатор родительского элемента
        fragments: фрагменты текста файла наиболее удовлетворяющие поиску (поле может отсутствовать)
        icon_url: ссылка до иконки файла (поле может отсутствовать)
        right: сумма чисел, определяющая набор прав на папку или файл
        }
        See Also:
        arta.remote.client.AIConstants#AI_FOLDER, arta.remote.client.AIConstants#AI_DOCUMENT, arta.remote.client.AIConstants#AI_IMAGE, arta.remote.client.AIConstants#AI_AUDIO, arta.remote.client.AIConstants#AI_VIDEO, arta.remote.client.AIConstants#AI_APPLICATION, arta.remote.client.AIConstants#ALL_SIZES, arta.remote.client.AIConstants#LITTLE, arta.remote.client.AIConstants#MIDDLE, arta.remote.client.AIConstants#BIG, ExtendedSearchParams#SORT_RELEVANCE, ExtendedSearchParams#SORT_DATE, ExtendedSearchParams#SORT_READSCOUNT
      • getPathToElement

        public java.lang.String getPathToElement(java.lang.String elementID,
                                                 java.lang.String locale)
      • createAttachment

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

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


        URL rest/api/storage/document/{docID}/attachment/create
        Method POST

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

        public java.lang.String remove(java.lang.String elementID,
                                       java.lang.String locale)
        Метод используется для удаления файла или папки в хранилище
        Тип: POST
        URL: rest/api/storage/remove
        Parameters:
        elementID - идентификатор файла либо папки (обязательный параметр)
        locale - локаль
        Returns:
        метод возвращает объект json с полями
        errorCode код выполнения (0 - успешно, иначе - ошибка)
        errorMessage сообщение, характеризующее успешное выполнение либо ошибку
      • move

        public java.lang.String move(java.lang.String elementID,
                                     java.lang.String folderID,
                                     java.lang.String locale)
        Метод используется для перемещения файла или папки в хранилище
        Тип: POST
        URL: rest/api/storage/move
        Parameters:
        elementID - идентификатор файла либо папки (что перемещаем, обязательный параметр)
        folderID - идентификатор папки (куда перемещаем, обязательный параметр)
        locale - локаль
        Returns:
        метод возвращает объект json с полями
        errorCode код выполнения (0 - успешно, иначе - ошибка)
        errorMessage сообщение, характеризующее успешное выполнение либо ошибку
      • rename

        public java.lang.String rename(java.lang.String elementID,
                                       java.lang.String elementName,
                                       java.lang.String locale)
        Метод используется для переименования файла/папки в хранилище
        Тип: POST
        URL: rest/api/storage/rename
        Parameters:
        elementID - идентификатор файла либо папки (обязательный параметр)
        elementName - новое имя файла либо папки (обязательный параметр)
        locale - локаль
        Returns:
        объект json с полями
        errorCode код выполнения (0 - успешно, иначе - ошибка)
        errorMessage сообщение, характеризующее успешное выполнение либо ошибку
      • create

        public java.lang.String create(java.lang.String folderID,
                                       java.lang.String folderName,
                                       java.lang.String locale)
        Метод используется для создания папки в хранилище
        Тип: POST
        URL: rest/api/storage/create
        Parameters:
        folderID - идентификатор папки, внутри которой происходит создание (обязательный параметр)
        folderName - имя новой папки
        locale - локаль
        Returns:
        в случае успешного выполнения метод возвращает объект json с одним полем folderID - идентификатор новой папки, в случае ошибки:

        errorCode 13
        errorMessage сообщение, характеризующее ошибку
        Пример успешного выполнения: {"folderID" : "550e8400-e29b-41d4-a716-446655440000"}
      • copy

        public java.lang.String copy(java.lang.String fileID,
                                     java.lang.String documentID,
                                     java.lang.String container,
                                     java.lang.String locale)
        Метод используется для копирования файла из хранилища в документ
        Тип: POST
        URL: rest/api/storage/copy
        Parameters:
        fileID - идентификатор файла (обязательный параметр)
        documentID - идентификатор документа, куда будет копироваться файл (обязательный параметр)
        container - контейнер (приложения либо прочие, по умолчанию - ase:attachmentContainer)
        locale - локаль
        Returns:
        в случае успешного выполнения сервер возвращает объект json с одним полем fileID - идентификатор нового файла, в случае ошибки:

        errorCode 13
        errorMessage сообщение, характеризующее ошибку
        Пример успешного выполнения: {"fileID" : "550e8400-e29b-41d4-a716-446655440000"}
        See Also:
        arta.synergy.web.common.client.data.bp.docflow.constants.DocFileType#INBOX_FILE, arta.synergy.web.common.client.data.bp.docflow.constants.DocFileType#WORK_FILE
      • add

        public java.lang.String add(java.lang.String folderID,
                                    java.lang.String path,
                                    java.lang.String name,
                                    java.lang.String locale)
        Метод используется для добавления файла в хранилище
        Тип: POST
        URL: rest/api/storage/add
        Parameters:
        folderID - идентификатор папки куда будет добавляться файл (обязательное поле)
        path - абсолютный путь до файла (обязательное поле)
        name - имя файла (обязательное поле)
        locale - локаль
        Returns:
        в случае успешного выполнения сервер возвращает объект json с одним полем fileID - идентификатор нового файла, в случае ошибки:

        errorCode 13
        errorMessage сообщение, характеризующее ошибку
        Пример успешного выполнения: {"fileID" : "550e8400-e29b-41d4-a716-446655440000"}
      • getDescription

        public java.lang.String getDescription(java.lang.String elementID,
                                               boolean mobile,
                                               java.lang.String locale)
        Возвращает детальную информацию папки/файла
        URL: rest/api/storage/description
        Тип: GET
        Parameters:
        elementID - идентификатор папки или файла (обяз.)
        locale - локаль пользователя
        Returns:
        В случае успешного выполнения возвращаемый json содержит следующие поля:
        • identifier - идентификатор папки или файла
        • is_folder (true/false) - папка («true») или файл («false»)
        • size - размер файла в байтах (для папки значение = 0)
        • path - полный путь до папки или файла
        • name - название папки или файла
        • modified - дата и время последнего изменения папки или файла (в формате yyyy-mm-dd hh:mm:ss)
        • userName - ФИО пользователя, выполнившего последнее изменение папки или файла (в формате Фамилия Имя О.)
        • userID - идентификатор пользователя, выполнившего последнее изменение папки или файла
        • right - сумма чисел, определяющая набор прав на папку или файл
        • mime - mime тип файла (отображается только при значении is_folder = «false»)
        • icon - ссылка до иконки файла (отображается только при значении is_folder = «false»)
        • parents - массив идентификаторов всех папок из path, причем порядок следования идентификаторов в массиве должен соответствовать порядку в параметре path (слева направо)
        • ai_type - тип элемента хранилища, один из следующих вариантов:
          • ai_folder - папка
          • ai_document - текстовый файл
          • ai_image - файл изображения
          • ai_audio - аудиофайл
          • ai_video - видеофайл
          • ai_application - прочие файлы

        Набор прав на папку или файл, права в системе:

           READ = 1 (право на просмотр элемента)
           ADD = 2 (право на добавление нового элемента)
           DELETE = 4 (право на удаление элемента)
           EDIT_FOLDER_VIEW = 8 (право на редактирование index страницы папки)
           EDIT_DOCUMENT = 16 (право на редактирование документа)
           ADD_COMMENT = 32 (право на добавление комментариев)
           EDIT_COMMENT = 64 (право на редактирование комментариев)
           DELETE_COMMENT = 128 (право на удаление комментариев)
           READ_COMMENT = 256 (право на просмотр комментариев)
           READ_VERSIONS = 512 (право на просмотр версий документа)
           EDIT_VERSIONS = 1024 (право на восстановление версий документа)
           EDIT_METADATA = 2048 (право на редактирование свойств документа)
           READ_METADATA = 4096 (право на просмотр свойств документа)
           EDIT_CATEGORIES = 8192 (право на редактирование классификатора документа)
           READ_CATEGORIES = 16384 (право на просмотр классификатора документа)
           ADD_DOCUMENT_REFERENCES = 32768 (право на добавление документа в список ссылок документа)
           EDIT_DOCUMENT_REFERENCES = 65536 (право на редактирование списка ссылок документа)
           DELETE_DOCUMENT_REFERENCES = 131072 (право на удаление ссылок документа)
           READ_DOCUMENT_REFERENCES = 262144 (право на просмотр списка ссылок документа)
           LOAD_DOCUMENT = 524288 (право на загрузку файла документа)
           MOVE = 2097152 (право на перемещение / переименовывание элемента)
           CHANGE_PERMISSION = 4194304 (право на назначение прав)
           FULL_ACCESS = 2147483647
         

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

        • errorCode - код выполнения (число, отличное от 0)
        • errorMessage - сообщение об ошибке (см. ниже)

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

          {
              "identifier": "f5003070-3740-4920-a4c5-01f8bf440774",
              "is_folder": false,
              "size": "19644",
              "path": "/company_root/Проект/Файл1.odt",
              "name": "Файл1.odt",
              "modified": "2013-03-13 16:35:45",
              "userName": "Слепаков Иван И.",
              "userID": "ee71a4c6-888a-4f04-86de-44ab394f5749",
              "right": 7,
              "mime ": "application/vnd.oasis.opendocument.text",
              "icon": "rest/api/storage/icons/get?aiType=ai_text&fileName=Файл1.odt",
              "parents": ["d1f91787-ac5d-4650-a7c0-1cdfbdd12165", "5860da7f-0615-4f46-8264-d8605d97ef9e"],
        "     ai_type": "ai_document"
          }
         
      • createHtd

        public Response createHtd(java.util.Map<java.lang.String,java.lang.String> params)
        Path rest/api/storage/asffile/createHtd
        Parameters:
        params - {name : , nodeId : , dataId : } где name - наименование nodeId - идентификатор ноды данных по форме dataId - идентификатор данных по форме
        Returns:
      • copy

        public Response copy(java.util.Map<java.lang.String,java.lang.String> params)
        копировать файл из хранилища в файл по форме Path rest/api/storage/asffile/copy
        Parameters:
        params - {objectId : , targetId : , dataId : } где objectId - идентификатор объекта targetId - идентификатор ноды данных по форме dataId - идентификатор данных по форме
        Returns:
      • asfFile

        public Response asfFile(MultipartFormDataInput input,
                                java.lang.String nodeID,
                                java.lang.String dataUUID)
                         throws java.io.IOException,
                                javax.naming.NamingException,
                                RepositoryException
        загрузка файла в файл по форме (для реквестов более 2-х мегабайт работать не будет) Path rest/api/storage/asffile/upload
        Parameters:
        input - данные файла
        nodeID - идентификатор ноды
        dataUUID - идентификатор данных
        Returns:
        {fileId : identifier}
        Throws:
        java.io.IOException
        javax.naming.NamingException
        RepositoryException
      • addFile

        public Response addFile(java.lang.String dataUUID,
                                java.lang.String filePath,
                                java.lang.String fileName)
                         throws java.io.IOException,
                                javax.naming.NamingException,
                                RepositoryException
        добавляет загруженный на сервер файл в файл по форме Path rest/api/storage/asffile/addFile
        Parameters:
        dataUUID - идентификатор данных по форме
        filePath - путь до загруженного файла
        fileName - имя файла
        Returns:
        {fileId : identifier}
        Throws:
        java.io.IOException
        javax.naming.NamingException
        RepositoryException
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 log(java.lang.String providerId, int eventId, java.lang.String type, java.lang.String host, java.lang.String userId, boolean isPublic, java.lang.String objects) 
      java.lang.String registerEvent(java.lang.String providerId, int eventId, java.lang.String jndi) 
      java.lang.String registerProvider(java.lang.String providerId, java.lang.String name, java.lang.String jndi) 
      java.lang.String saveFullProcessLog(java.lang.String dtiId, java.util.List<java.util.HashMap<java.lang.String,java.lang.String>> itemList) 
      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)
      • saveFullProcessLog

        public java.lang.String saveFullProcessLog(java.lang.String dtiId,
                                                   java.util.List<java.util.HashMap<java.lang.String,java.lang.String>> itemList)
      • log

        public java.lang.String log(java.lang.String providerId,
                                    int eventId,
                                    java.lang.String type,
                                    java.lang.String host,
                                    java.lang.String userId,
                                    boolean isPublic,
                                    java.lang.String objects)
      • registerProvider

        public java.lang.String registerProvider(java.lang.String providerId,
                                                 java.lang.String name,
                                                 java.lang.String jndi)
      • registerEvent

        public java.lang.String registerEvent(java.lang.String providerId,
                                              int eventId,
                                              java.lang.String jndi)
      • getHost

        public java.lang.String getHost()
kz.arta.synergy.api.rest.person

Class PersonLoad

  • java.lang.Object
    • kz.arta.synergy.api.rest.person.PersonLoad


  • public class PersonLoad
    extends java.lang.Object
    api работы для работы с нагрузкой и эффективностью пользователей
    Since:
    24.08.15 17:50
    • Constructor Summary

      Constructors 
      Constructor and Description
      PersonLoad() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.util.Map<java.lang.String,java.util.List<PersonLoad.ValueResult>> getEfficiency(java.util.ArrayList<PersonLoad.ReqParams> params)
      Возвращает карту списков значений эффективности для пользователей в указанные диапазоны дат.
      java.util.List<PersonLoad.ValueResult> getEfficiency(PersonLoad.ReqParams params)
      Возвращает список значений эффективности для пользователя в указанный диапазон дат.
      java.util.Map<java.lang.String,java.util.List<PersonLoad.ValueResult>> getWorkload(java.util.ArrayList<PersonLoad.ReqParams> params)
      Возвращает карту списков значений нагрузки для пользователей в указанных диапазонах дат.
      java.util.List<PersonLoad.ValueResult> getWorkload(PersonLoad.ReqParams params)
      Возвращает список значений нагрузки для пользователя в указанный диапазон дат.
      • Methods inherited from class java.lang.Object

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

      • PersonLoad

        public PersonLoad()
    • Method Detail

      • getWorkload

        public java.util.List<PersonLoad.ValueResult> getWorkload(PersonLoad.ReqParams params)
        Возвращает список значений нагрузки для пользователя в указанный диапазон дат.
        Если пользователь не указан, то в качестве пользователя берется пользователь который выполняет запрос.
        Если не указаны даты начала и даты завершения - возвращается нагрузка для текущей даты.

        URL: /rest/person/workload
        Метод: POST
        JSON запроса:
        • userID - String пользователь для которого происходит запрос
        • startDate - String дата начала периода в формате yyyy-MM-dd
        • finishDate - String дата завершения периода в формате yyyy-MM-dd
        Пример запроса:
          {
          "userID":"e5067b88-114b-4a04-6cc6-679655dc652e"
          "startDate": "2015-02-08",
          "finishDate": "2015-02-09"
          }
         
        Parameters:
        params - параметры запроса
        Returns:
        список значений
        JSON ответа:
        • date - String дата начала периода в формате yyyy-MM-dd
        • value - String значения
        Пример результата ответа JSON
         [
         {
         "date": "2015-02-08",
         "value": "72"
         },
         {
         "date": "2015-02-09",
         "value": "84"
         }
         ]
         
      • getWorkload

        public java.util.Map<java.lang.String,java.util.List<PersonLoad.ValueResult>> getWorkload(java.util.ArrayList<PersonLoad.ReqParams> params)
        Возвращает карту списков значений нагрузки для пользователей в указанных диапазонах дат.
        Если пользователь не указан, то в качестве пользователя берется пользователь который выполняет запрос.
        Если не указаны даты начала и даты завершения - возвращается нагрузка для текущей даты.

        URL: /rest/person/workload/m
        Метод: POST

        JSON запроса:
        • userID - String пользователь для которого происходит запрос
        • startDate - String дата начала периода в формате yyyy-MM-dd
        • finishDate - String дата завершения периода в формате yyyy-MM-dd

        Пример запроса:
         [
         {
         "userID":"e5067b88-114b-4a04-6cc6-679655dc652e",
         "startDate": "2015-02-08",
         "finishDate": "2015-02-09"
         },
         {
         "userID":"e5067b88-114b-4a04-6cc6-679655dc6521",
         "startDate": "2015-02-08",
         "finishDate": "2015-02-09"
         }
         ]
         
        Parameters:
        params - параметры запроса
        Returns:
        список значений
        JSON ответа:
        • userID - String пользователь для которого происходит запрос
          • date - String дата начала периода в формате yyyy-MM-dd
          • value - String значения
        Пример результата ответа JSON
         [
         {
         "e5067b88-114b-4a04-6cc6-679655dc6521":[
         {
         "date": "2015-02-08",
         "value": "72"
         },
         {
         "date": "2015-02-09",
         "value": "84"
         }
         ],
         "e5067b88-114b-4a04-6cc6-679655dc652e":[
         {
         "date": "2015-02-08",
         "value": "82"
         },
         {
         "date": "2015-02-09",
         "value": "13"
         }
         ]
         }
         ]
         
      • getEfficiency

        public java.util.List<PersonLoad.ValueResult> getEfficiency(PersonLoad.ReqParams params)
        Возвращает список значений эффективности для пользователя в указанный диапазон дат.
        Если пользователь не указан, то в качестве пользователя берется пользователь который выполняет запрос.
        Если не указаны даты начала и даты завершения - возвращается эффективность для текущей даты.

        URL: /rest/person/efficiency
        Метод: POST

        JSON запроса:
        • userID - String пользователь для которого происходит запрос
        • startDate - String дата начала периода в формате yyyy-MM-dd
        • finishDate - String дата завершения периода в формате yyyy-MM-dd

        Пример запроса:
          {
          "userID":"e5067b88-114b-4a04-6cc6-679655dc652e"
          "startDate": "2015-02-08",
          "finishDate": "2015-02-09"
          }
         
        Parameters:
        params - параметры запроса
        Returns:
        список значений
        JSON ответа:
        • date - String дата начала периода в формате yyyy-MM-dd
        • value - String значения
        Пример результата ответа JSON
         [
         {
         "date": "2015-02-08",
         "value": "72"
         },
         {
         "date": "2015-02-09",
         "value": "84"
         }
         ]
         
      • getEfficiency

        public java.util.Map<java.lang.String,java.util.List<PersonLoad.ValueResult>> getEfficiency(java.util.ArrayList<PersonLoad.ReqParams> params)
        Возвращает карту списков значений эффективности для пользователей в указанные диапазоны дат.
        Если пользователь не указан, то в качестве пользователя берется пользователь который выполняет запрос.
        Если не указаны даты начала и даты завершения - возвращается эффективность для текущей даты.

        URL: /rest/person/efficiency/m
        Метод: POST

        JSON запроса:
        • userID - String пользователь для которого происходит запрос
        • startDate - String дата начала периода в формате yyyy-MM-dd
        • finishDate - String дата завершения периода в формате yyyy-MM-dd

        Пример запроса:
          [
          {
          "userID":"e5067b88-114b-4a04-6cc6-679655dc652e",
          "startDate": "2015-02-08",
          "finishDate": "2015-02-09"
          },
          {
          "userID":"e5067b88-114b-4a04-6cc6-679655dc6521",
          "startDate": "2015-02-08",
          "finishDate": "2015-02-09"
          }
          ]
         
        Parameters:
        params - параметры запроса
        Returns:
        список значений
        JSON ответа:
      • userID - String пользователь для которого происходит запрос
        • date - String дата начала периода в формате yyyy-MM-dd
        • value - String значения

        Пример результата ответа JSON
         [
         {
         "e5067b88-114b-4a04-6cc6-679655dc6521":[
         {
         "date": "2015-02-08",
         "value": "72"
         },
         {
         "date": "2015-02-09",
         "value": "84"
         }
         ],
         "e5067b88-114b-4a04-6cc6-679655dc652e":[
         {
         "date": "2015-02-08",
         "value": "82"
         },
         {
         "date": "2015-02-09",
         "value": "13"
         }
         ]
         }
         ]
         
kz.arta.synergy.api.rest.person

Class PersonService

  • java.lang.Object
    • kz.arta.synergy.api.rest.person.PersonService


  • public class PersonService
    extends java.lang.Object
    Created with IntelliJ IDEA. User: topa Date: 6/3/13 Time: 8:11 PM To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      PersonService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      Response deleteUserAuthKey(java.lang.String moduleID)
      удаляет ключ авторизации пользователя вне сессии

      URL rest/api/person/invalidate_auth_key
      Method GET

      java.lang.String deleteUserPhoto(java.lang.String userID, java.lang.String locale)
      Метод удаляет фотографию пользователя

      URL /rest/api/person/photo/delete
      Method GET

      java.lang.String generateUserAuthToken(java.lang.String moduleID)
      генерирует ключ для авторизации пользователя вне сессии

      URL rest/api/person/generate_auth_key
      Method GET

      java.lang.String getAccountFullName(java.lang.String userID) 
      java.lang.String getSSOHash(java.lang.String clientParams)
      Метод возвращает SSOHash пользователя

      URL /rest/api/person/SSOHash
      Method GET

      java.lang.String getUser(java.lang.String locale, boolean getGroups)
      Авторизует пользователя и возвращает информацию о нем

      URL rest/api/person/auth
      Method GET

      Response updateUserAuthKey(java.lang.String moduleID)
      обновление аренды токена

      URL rest/api/person/update_auth_key_expire
      Method GET

      • Methods inherited from class java.lang.Object

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

      • PersonService

        public PersonService()
    • Method Detail

      • getUser

        public java.lang.String getUser(java.lang.String locale,
                                        boolean getGroups)
        Авторизует пользователя и возвращает информацию о нем

        URL rest/api/person/auth
        Method GET

        Parameters:
        locale - локаль пользователя
        getGroups - если данный параметр true, то метод вернет так же список групп в которых состоит авторизованный пользователь
        Returns:

        Если методу не передано никаих параметров кроме локали, то возвращается только json с информацией о пользователе (PersonWrapper#getJsonObject)
        Если параметр getGroups=true, то возвращается объект вида
         
        {
        person: {}, //информация о пользователе, см PersonWrapper#getJsonObject
        groups: //список групп
        [
        {groupID: "", //идентификатор группы
        name: ""} //название группы
        , ...]
        }
        See Also:
        PersonWrapper#getJsonObject(arta.synergy.web.common.client.data.filecabinet.Person)
      • generateUserAuthToken

        public java.lang.String generateUserAuthToken(java.lang.String moduleID)
        генерирует ключ для авторизации пользователя вне сессии

        URL rest/api/person/generate_auth_key
        Method GET

        Parameters:
        moduleID - идентификатор модуля
        Returns:
        json объект с полями:
        errorCode код выполнения: 0- в случае успешного выпонения, иначе - в случае возниковения ошибки
        errorMessage сообщение об ошибке
        key сгенерированный ключ пользователя
      • deleteUserAuthKey

        public Response deleteUserAuthKey(java.lang.String moduleID)
        удаляет ключ авторизации пользователя вне сессии

        URL rest/api/person/invalidate_auth_key
        Method GET

        Parameters:
        moduleID - идентификатор модуля
        Returns:
        json объект с полями:
        errorCode код выполнения: 0- в случае успешного выпонения, иначе - в случае возниковения ошибки
        errorMessage сообщение об ошибке
      • updateUserAuthKey

        public Response updateUserAuthKey(java.lang.String moduleID)
        обновление аренды токена

        URL rest/api/person/update_auth_key_expire
        Method GET

        Parameters:
        moduleID - идентификатор модуля
        Returns:
        json объект с полями:
        errorCode код выполнения: 0- в случае успешного выпонения, иначе - в случае возниковения ошибки
        errorMessage сообщение об ошибке
      • deleteUserPhoto

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

        Метод удаляет фотографию пользователя

        URL /rest/api/person/photo/delete
        Method GET

        Parameters:
        userID - UUID пользователя
        locale - локаль пользователя, выполняющего действие
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке/успешном выполнении
      • getSSOHash

        public java.lang.String getSSOHash(java.lang.String clientParams)

        Метод возвращает SSOHash пользователя

        URL /rest/api/person/SSOHash
        Method GET

        Parameters:
        clientParams - параметр, содержащий user-agent и host пользователя
        Returns:
        json объект с полями - errorCode - код выполнения операции (0 успешно, иначе - ошибка), errorMessage - сообщение об ошибке/успешном выполнении
      • getAccountFullName

        public java.lang.String getAccountFullName(java.lang.String userID)
kz.arta.synergy.api.rest.person

Class UserPhotoServlet

  • java.lang.Object
    • LoadPhotoServlet
      • kz.arta.synergy.api.rest.person.UserPhotoServlet


  • public class UserPhotoServlet
    extends LoadPhotoServlet
    User: user Date: 20.01.14 Time: 12:14 Сервлет для получения, изменения фотографии пользователя

    POST - добавление, изменении фотографии пользователя, параметр uploadFormElement - файл, userid - uuid пользователя, locale - локаль

    GET - получение фотографии пользователя, параметр userid - uuid пользователя, max_width - макс. ширина, max_height - макс. высота

    Пример получения фотографии
    http://хост:порт/Synergy/rest/api/person/photo/load?userid=1
    • Constructor Summary

      Constructors 
      Constructor and Description
      UserPhotoServlet() 
    • Method Summary

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

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

      • UserPhotoServlet

        public UserPhotoServlet()
    • Method Detail

      • doPost

        protected void doPost(HttpServletRequest request,
                              HttpServletResponse response)
                       throws ServletException,
                              java.io.IOException
        Throws:
        ServletException
        java.io.IOException
      • doGet

        protected void doGet(HttpServletRequest request,
                             HttpServletResponse response)
                      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() 
      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()
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
      java.lang.String addDtiIDLink(java.lang.String dtiId, java.lang.String docID) 
      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
      java.util.Map<java.lang.String,java.lang.String> getDocumetInfo(java.lang.String dtiId, java.lang.String docID) 
      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 getRegUserByDtiID(java.lang.String dtiId) 
      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-метод, позволяющий получить список подписей для данного документа.
      java.lang.String saveCorrespondentOrg(java.lang.String name)
      Добавление корреспондента-организации в общесистемный список
      Тип: POST
      URL: rest/api/docflow/doc/create_correspondent_org
      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 - локаль.
      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

      • 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
        Parameters:
        filterType - тип фильтра
        filterID - id фильтра
        objectID - objectID фильтра
        locale - локаль
        Returns:
        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
      • 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)
      • getRegUserByDtiID

        public java.lang.String getRegUserByDtiID(java.lang.String dtiId)
      • addDtiIDLink

        public java.lang.String addDtiIDLink(java.lang.String dtiId,
                                             java.lang.String docID)
      • getDocumetInfo

        public java.util.Map<java.lang.String,java.lang.String> getDocumetInfo(java.lang.String dtiId,
                                                                               java.lang.String docID)
      • 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 - ФИО исполнителя.
        • 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.map

Class MapService

  • java.lang.Object
    • kz.arta.synergy.api.rest.map.MapService


  • public class MapService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 13.02.14 Time: 9:35 To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      MapService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String addPointersToMap(java.lang.String mapID, java.util.List<java.lang.String> pointerID)
      Метод добавляет показатели на карту

      URL rest/api/maps/add_pointers
      Method POST

      java.lang.String createMap(java.lang.String name, boolean isPublic, java.lang.String parentID, int width, int height)
      Метод создает карту показателей

      URL rest/api/maps/create
      Method POST

      java.lang.String deleteMap(java.lang.String mapID)
      Метод удаляет карту показателей

      URL rest/api/maps/delete
      Method GET

      java.lang.String get(java.lang.String mapID)
      Метод возвращает информацию о карте показателей

      URL rest/api/maps/get
      Method GET

      java.lang.String getHost() 
      java.lang.String getLocale() 
      java.lang.String list(java.lang.String parentMapID)
      Метод возвращает список карт

      URL rest/api/maps/list
      Method GET

      java.lang.String removePointerFromMap(java.lang.String mapID, java.lang.String pointerID)
      Метод удаляет показатель с карты

      URL rest/api/maps/remove_pointer
      Method GET

      java.lang.String save(java.lang.String name, boolean isPublic, java.lang.String parentID, int width, int height, java.lang.String mapID)
      Метод изменяет карту показателей

      URL rest/api/maps/save
      Method POST

      • Methods inherited from class java.lang.Object

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

      • MapService

        public MapService()
    • Method Detail

      • createMap

        public java.lang.String createMap(java.lang.String name,
                                          boolean isPublic,
                                          java.lang.String parentID,
                                          int width,
                                          int height)

        Метод создает карту показателей


        URL rest/api/maps/create
        Method POST

        Parameters:
        name - Название карты
        isPublic - true - доступна всем пользователям, иначе - только тем, кому даны права
        parentID - идентификатор родительской карты (значение по-умолчанию корневой элемент "Стратегия")
        width - ширина карты (значение по-умолчанию MapConstants.DEFAULT_WIDTH)
        height - высота карты (значение по-умолчанию MapConstants.DEFAULT_HEIGHT)
        Returns:
      • save

        public java.lang.String save(java.lang.String name,
                                     boolean isPublic,
                                     java.lang.String parentID,
                                     int width,
                                     int height,
                                     java.lang.String mapID)

        Метод изменяет карту показателей


        URL rest/api/maps/save
        Method POST

        Parameters:
        name - Название карты
        isPublic - true - доступна всем пользователям, иначе - только тем, кому даны права
        parentID - идентификатор родительско карты (значение по-умолчанию корневой элемент "Стратегия")
        width - ширина карты (значение по-умолчанию MapConstants.DEFAULT_WIDTH)
        height - высота карты (значение по-умолчанию MapConstants.DEFAULT_HEIGHT)
        mapID - идентификатор карты
        Returns:
        See Also:
        MapConstants#DEFAULT_WIDTH, MapConstants#DEFAULT_HEIGHT
      • deleteMap

        public java.lang.String deleteMap(java.lang.String mapID)

        Метод удаляет карту показателей


        URL rest/api/maps/delete
        Method GET

        Parameters:
        mapID - идентификатор карты
        Returns:
      • get

        public java.lang.String get(java.lang.String mapID)

        Метод возвращает информацию о карте показателей


        URL rest/api/maps/get
        Method GET

        Parameters:
        mapID - идентификатор карты
        Returns:
        информацию о карте, см метод MapWrapper#getMapJson
        See Also:
        MapWrapper#getMapJson(arta.synergy.web.common.client.data.pointers.maps.Map, String)
      • list

        public java.lang.String list(java.lang.String parentMapID)

        Метод возвращает список карт


        URL rest/api/maps/list
        Method GET

        Parameters:
        parentMapID - идентификатор родительской карты (значение по-умолчанию корневой элемент карт "Стратегия")
        Returns:
        информацию о картах как список json объектов, см. метод MapWrapper#getTreeMapJson
        See Also:
        MapWrapper#getTreeMapJson(arta.synergy.web.common.client.data.pointers.maps.TreeMap, String)
      • addPointersToMap

        public java.lang.String addPointersToMap(java.lang.String mapID,
                                                 java.util.List<java.lang.String> pointerID)

        Метод добавляет показатели на карту


        URL rest/api/maps/add_pointers
        Method POST

        Parameters:
        mapID - идентификатор карты
        pointerID - идентификатор показателя (может быть передано несколько значений)
        Returns:
      • removePointerFromMap

        public java.lang.String removePointerFromMap(java.lang.String mapID,
                                                     java.lang.String pointerID)

        Метод удаляет показатель с карты


        URL rest/api/maps/remove_pointer
        Method GET

        Parameters:
        mapID - идентификатор карты
        pointerID - идентификатор показателя
        Returns:
      • getHost

        public java.lang.String getHost()
      • getLocale

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

Class PointersService

  • java.lang.Object
    • kz.arta.synergy.api.rest.map.PointersService


  • public class PointersService
    extends java.lang.Object
    Created by IntelliJ IDEA. User: topa Date: 13.02.14 Time: 12:20 To change this template use File | Settings | File Templates.
    • Constructor Summary

      Constructors 
      Constructor and Description
      PointersService() 
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      java.lang.String createPointer()
      Метод создает/изменяет показатель

      URL rest/api/pointers/save
      Method GET
      Метод предназначен для создания/изменения показателей типов: базовый, расчитываемый, внешний.

      java.lang.String deletePointer(java.lang.String pointerID)
      Метод удаляет показатель

      URL rest/api/pointers/delete
      Method GET

      java.lang.String getHost() 
      java.lang.String getLocale() 
      java.lang.String search(java.lang.String search, int type, boolean loadFullInfo, int partNumber, int countInPart)
      Метод возвращает список показателей, с возможностью поиска

      URL rest/api/pointers/delete
      Method GET

      • Methods inherited from class java.lang.Object

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

      • PointersService

        public PointersService()
    • Method Detail

      • createPointer

        public java.lang.String createPointer()

        Метод создает/изменяет показатель


        URL rest/api/pointers/save
        Method GET

        Метод предназначен для создания/изменения показателей типов: базовый, расчитываемый, внешний. Тип создаваемого показателя зависит от параметра type, набор параметров зависит от типа показателя. Ниже перечислены все возможные параметры для каждого типа.
        Обязательные для передачи параметры отмечены *


        Базовый
        pointerID идентификатор показателя, необходимо передавать для обновления существующего показателя. Для создания нового - передавать параметр не нужно.
        type* тип показателя, значение должно быть 2
        name* название показателя
        code код показателя
        measure* единица измерения значений показателя
        update_type* Тип обновления значений показателя. Может принимать значения:

        • 1 - ежедневно
        • 2 - по дням недели
        • 3 - по дням месяца
        • 4 - ежеквартально

        update_days значение (одно или несколько) данного параметра необходимо передать, только если update_type=2 или update_type=3. Для update_type=2 - это должны быть номера дней недели от 1 до 7, для дней месяца - номера дней месяца от 1 до 31
        resUserID* идентификатор пользователя, ответственного за ввод значения показателя
        default_value значение показателя по-умолчанию
        dict_code код справочника (необходимо в том случае если значения показателя должны выбираться из справочника, а не вводиться вручную)
        min_value минимальное возможное значение показателя (число либо код другого показателя)
        max_value максимальное возможное значение показателя (число либо код другого показателя)


        Внешний
        pointerID идентификатор показателя, необходимо передавать для обновления существующего показателя. Для создания нового - передавать параметр не нужно.
        type* тип показателя, значение должно быть 4
        name* название показателя
        code код показателя
        measure* единица измерения значений показателя
        min_value минимальное возможное значение показателя (число либо код другого показателя)
        max_value максимальное возможное значение показателя (число либо код другого показателя)


        Расчитываемый
        pointerID идентификатор показателя, необходимо передавать для обновления существующего показателя. Для создания нового - передавать параметр не нужно.
        type* тип показателя, значение должно быть 1
        name* название показателя
        code код показателя
        measure* единица измерения значений показателя
        formula* формула расчета показателя

        Returns:
      • deletePointer

        public java.lang.String deletePointer(java.lang.String pointerID)

        Метод удаляет показатель


        URL rest/api/pointers/delete
        Method GET

        Parameters:
        pointerID - идентификатор показателя
        Returns:
      • search

        public java.lang.String search(java.lang.String search,
                                       int type,
                                       boolean loadFullInfo,
                                       int partNumber,
                                       int countInPart)

        Метод возвращает список показателей, с возможностью поиска


        URL rest/api/pointers/delete
        Method GET

        Parameters:
        search - поисковая строка (может отсутствовать для получения всего списка)
        type - тип показателей: 2 - базовый, 4 - внешний, 1- расчитываемый (может отсутствовать для получения полного списка)
        loadFullInfo - необходимо передать значение данного параметра true, чтобы метод вернул все поля показателей. Иначе возвращаются только поля общие для показателей всех типов: идентификатор, название, код, единица измерения
        partNumber - номер страницы возвращаемых результатов (отсчет с 0)
        countInPart - количество результатов в одной странице
        Returns:
        json следующего формата
             
        {
        "pages_count": общее количество страниц, соответствующее данным параметрам поиска
        "list": список показателей, для каждого показателя возвращаются данные согласно PointerWrapper#getPointerJson
        }
        See Also:
        PointerWrapper#getPointerJson(arta.synergy.web.common.client.data.pointers.Pointer)
      • getHost

        public java.lang.String getHost()
      • getLocale

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

Class WorkFlowService

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


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

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

      Constructors 
      Constructor and Description
      WorkFlowService() 
    • Method Summary

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

      URL rest/api/workflow/work/delete
      GET

      java.lang.String doCreateAttachment(java.lang.String workID, java.lang.String path, java.lang.String fileName, java.lang.String filePath, java.lang.String locale, int successResult, java.lang.String successMessage) 
      Response finishProcess(java.lang.String procInstID, java.lang.String signal, java.lang.String comment, java.lang.String rawdata, java.lang.String signdata, java.lang.String certificate, java.lang.String certID, boolean addSignature, java.lang.String locale)
      Метод завершает процесс согласования/утверждения/ознакомления

      URL rest/api/workflow/finish_process
      Method POST

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

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

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



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

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

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

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

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

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

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

      URL rest/api/workflow/get_counters
      Method GET

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

      Примеры

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

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

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

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

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

      URL rest/api/workflow/get_execution_process
      Method GET

      java.lang.String getFilters(java.lang.String filterType, java.lang.String parentID, java.lang.String parentObjectID, boolean getCounters, java.lang.String locale, java.lang.String userID)
      Возвращает список фильтров пользователя.
      Response getFormForCompletionResult(java.lang.String formUUID, java.lang.String formCode, java.lang.String workID, java.lang.String locale)
      Создает форму для создания результата по форме завершения "форма"

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

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

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

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



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

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

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

      URL rest/api/workflow/process_info
      GET

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

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

      URL rest/api/workflow/send_work_info
      GET

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

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

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

      URL rest/api/workflow/subworks/{workID}
      GET

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

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

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

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

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

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

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

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


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

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

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

      URL rest/api/workflow/works_by_id
      Method GET

      java.lang.String markWorkSeen(java.lang.String workID)
      Метод отмечает данную работу как "просмотренную"

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

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

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

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

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

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

      URL rest/api/workflow/work/save
      POST

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

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

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

      java.lang.String setWorkResult(java.lang.String workID, java.lang.String completionForm, java.lang.String locale)
      Задает результат завершения работы

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


      Набор полей передаваемых методу зависит от формы завершения данной работы.

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

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

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

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

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

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

      • Methods inherited from class java.lang.Object

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

      • WORK

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

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

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

      • WorkFlowService

        public WorkFlowService()
    • Method Detail

      • getWorks

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        URL rest/api/workflow/works_by_id
        Method GET

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

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

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

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


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


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

        Примеры

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

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

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

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

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

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

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


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

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

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

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

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

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

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


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

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

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

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


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



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

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

        public java.lang.String cr