RU
EN
ГЛАВНАЯ СТРАНИЦА

Общие данные

Запрос метаданных

Возвращает список всех групп элементов прейскуранта и список всех концепций.

Тип

GET

Вызов

/get-menu-groups-and-conceptions

Параметры

Без параметров.

Пример вызова

http://89.22.216.169:8090/get-menu-groups-and-conceptions

Формат возвращаемых данных

{ 
  "MenuGroups": [ 
    { 
      "mgrp_ID": "9C3D6192-9FFA-A848-8C6E-D5629F9128AD",  
      "mgrp_mgrp_ID_Parent": "BA1D021F-754A-FB4A-921B-16DD3128C478",  
      "mgrp_Name": "Чай, кофе",  
      "mgrp_Description": "ДВК",  
      "mgrp_NotForSale": false,  
      "mgrp_IsDisabled": false,  
      "mgrp_Order": 24 
    }, 
    ... 
  ], 
  "Conceptions": [ 
    { 
      "cncpt_ID": "BFB3FB23-F0CB-644C-B441-E079109753F2",  
      "cncpt_slpr_ID": "364FAAE6-4D90-4645-9523-FD9A5D54705C",  
      "cncpt_Name": "2 Палочки СПб", 
      "cncpt_Phones": "<Phones><Phone>3</Phone></Phones>"  
    }, 
    ... 
  ] 
} 

Группы прейскуранта (tp_MenuGroups)

Таблица tp_MenuGroups.

Концепции (tp_Conceptions)

Таблица tp_Conceptions.

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

Тип

GET

Вызов

/get-divisions

Параметры

Без параметров.

Пример вызова

http://89.22.216.169:8090/get-divisions

Формат возвращаемых данных

[ 
    { 
        "dvsn_ID": "B125BE00-8B8C-CC40-99AC-088B5A95EF67", 
        "dvsn_Name": "OZR_Доставка_Энгельса 124", 
        "dvsn_GeoIdentifier": "OZR_Энгельса_124"  
    }, 
   ... 
]

Запрос списка типов баллов

Тип

GET

Вызов

/get-discount-point-types

Параметры

Без параметров.

Пример вызова

http://89.22.216.169:8090/get-discount-point-types

Формат возвращаемых данных

[ 
  { 
    "dspt_ID": "A976C6ED-C511-4755-B942-636645A6A1B0",  
    "dspt_Name": "баллы 1",  
    "dspt_Description": "баллы 1",  
    "dspt_IsPermanent": false 
  }, 
  { 
    "dspt_ID": "C635BB7D-DE32-41F1-878C-8050F57C1826",  
    "dspt_Name": "баллы 2",  
    "dspt_Description": "баллы 2",  
    "dspt_IsPermanent": false 
  } 
] 

Типы баллов (tp_DiscountPointTypes)

Таблица tp_DiscountPointTypes.

Запрос списка типов счетов

Тип

GET

Вызов

/get-purse-types

Параметры

Без параметров.

Пример вызова

http://89.22.216.169:8090/get-purse-types

Формат возвращаемых данных

[ 
  { 
    "cptp_ID": "573250C8-5007-4AAF-8596-4F820E9B6648",  
    "cptp_Name": "местные счета",  
    "cptp_Description": "описание"  
  } 
] 

Типы счетов постоянных клиентов (tp_ClientPurseTypes)

Таблица tp_ClientPurseTypes.

Запрос списка групп и мест размещения

Тип

GET

Вызов

/get-places

Параметры

division-id

dvsn_ID из таблицы tp_Divisions: GUID подразделения, которому принадлежат группы мест размещения.

Если не передан, то возвращаются все группы и места.

Пример вызова

http://127.0.0.1:8090/get-places?division-id=8051B912-B90C-1045-9AA9-05A049551B57

Формат возвращаемых данных

Список групп мест размещения и мест размещения каждой группы.

Описание возвращаемых данных

Места размещения tp_Places, группы мест размещения tp_PlaceGroups.

Пример возвращаемых данных

{ 
    "PlaceGroups": [ 
        { 
            "plgr_ID": "FC2334D9-BA0E-3347-A9DC-225B27199A44", 
            "plgr_dvsn_ID": "7917642D-FF72-3B47-8ED8-04052BC144CB", 
            "plgr_Name": "Test" 
        }, 
        { 
            "plgr_ID": "2D193B75-214D-EB48-A51F-BC31143081AD", 
            "plgr_plgr_ID_Parent": "FC2334D9-BA0E-3347-A9DC-225B27199A44", 
            "plgr_dvsn_ID": "BF4EBEB6-97D1-9647-9AFB-9CB5AE39DA0A", "plgr_Name": "TestChild" 
        } 
    ], 
    "Places": [ 
        { 
            "plac_ID": "A4F7F360-C963-474A-B2ED-6C499310D9B2", 
            "plac_plgr_ID": "FC2334D9-BA0E-3347-A9DC-225B27199A44", 
            "plac_pltp_ID": "57216144-1E9A-4A5B-9AEE-0AB671B08725", 
            "plac_Name": "TestPlace", 
            "plac_ShortName": "shortname", 
            "plac_Description": "desc", 
            "plac_Number": 1, 
            "plac_Count": 0, 
            "plac_sprv_ID_Order": "A06AA357-EC7D-CC43-BA2E-E87C9776D391" 
        }, 
        { 
            "plac_ID": "BB43306C-F103-5D4C-BBEF-9A6A972C7A2C", 
            "plac_plgr_ID": "2D193B75-214D-EB48-A51F-BC31143081AD", 
            "plac_pltp_ID": "57216144-1E9A-4A5B-9AEE-0AB671B08725", 
            "plac_Name": "TestChildPlace", 
            "plac_Number": 2, 
            "plac_Count": 0 
        }, 
        { 
            "plac_ID": "B08D44A0-E6EF-8E46-8AC5-BAF7C37DF350", 
            "plac_plgr_ID": "FC2334D9-BA0E-3347-A9DC-225B27199A44", 
            "plac_pltp_ID": "27477B71-D557-4EF0-9998-BF10CD6E2BC4", 
            "plac_aordr_ID": "0A4D3F70-09EE-4149-998C-E36D698F6BC9", 
            "plac_Name": "TestPlace2", 
            "plac_ShortName": "short", 
            "plac_Description": "тест", 
            "plac_Number": 3, 
            "plac_Count": 0, 
            "plac_sprv_ID_Order": "BB080EFE-EF89-D54A-9827-D25428C35EF0" 
        } 
    ] 
}

Формирование идентификаторов

Тип

POST

Вызов

/post-identifier

Формат возвращаемых данных

{
  "idnt_ID": "670BF67D-5CA1-D949-A7A9-9BC79AA30EA3"
}

Параметры

В секции BODY запроса содержимое идентификатора. В секции HEADER необходимо указать "Content-Type: application/json".

Все даты в формате 'yyyy-MM-dd'T'HH:mm:ss'.

Пример формирования идентификатора

  • Идентификатор на входе

    {
      "idnt_Code": "123", "idnt_Name": "Name"
    }
  • Ответ

    { 
      "idnt_ID": "E90648DF-5F4A-1A4F-990A-E4BF2B09FA2E" 
    }

Соглашения

  1. Если идентификатор с idnt_Code и idnt_idtp_ID уже существует, то будет возвращена ошибка.

  2. Если значение idnt_idtp_ID не передано, оно может быть получено от устройства.

  3. Если значение idnt_idgr_ID не передано, оно может быть получено от устройства.

  4. Если не было передано значение idnt_Name, то оно будет получено из idnt_Code.

  5. У устройства с программным модулем Модуль связи с сервисом Tillypad API на панели «Настройка» должны быть заполнены поля Группа для новых идентификаторов и Тип для новых идентификаторов.

Запрос ID идентификатора

Тип

GET

Вызов

/get-identifier-id

Формат возвращаемых данных

{ 
   "idnt_ID": "670BF67D-5CA1-D949-A7A9-9BC79AA30EA3"  
}

Параметры

code

Код идентификатора. Обязательный параметр.

type

Тип идентификатора. Обязательный параметр.

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

Пример вызова

http://localhost:8090/get-identifier-id?code=123&type=CC5A66E6-6062-F147-AD9B-49F1F299EBDB 

Ответ:

{ 
  "idnt_ID": "E90648DF-5F4A-1A4F-990A-E4BF2B09FA2E" 
} 

Соглашения

  1. Если введенные code и type не будут найдены - вернется HttpStatus 404 с ошибкой.

Выполнение своих запросов

Тип

GET, POST

Вызов

/custom-execute

Параметры

Имя запроса как указано в параметрах устройства, список параметров, если есть, в формате.

parameter1=value1&parameter2=value2... 

Имена параметров запроса должны полностью соответствовать параметрам % в самом запросе.

Пример вызова

http://127.0.0.1:8090/custom-execute/MyQuery?parameter1=value1&parameter2=value2 

Формат возвращаемых данных

application/json, структура соответствует данным, поднимаемым запросом.

Описание метода Выполнение своих запросов

В Tillypad API реализован новый метод Выполнение своих запросов. У устройства Модуль связи с сервисом Tillypad API добавлен параметр, в котором можно прописать свой метод.

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

Этот посредник получит данные по этому запросу через наш API, добавит свои данные и вернет ответ в том виде, который нужен Клиенту.

Для случаев, когда нужно получить данные из Tillypad и передать их в какую-то другую базу (программное обеспечение), в том числе, когда данные в стороннем программном обеспечении сливаются из различных источников.

Важно

Свой запрос нужно прописывать в параметрах устройства Модуль связи с сервисом Tillypad API.

Например, надо добавить метод POST.

http://127.0.0.1:8090/custom-execute/MyQuery?parameter1=value1

Любой http-тип подходит, в том числе POST. Не обязательно добавлять external-процедуру в базу. Можно просто задать ее текст в ini-файле QueryExecutor (в параметрах устройства Модуль связи с сервисом Tillypad API).

Для приведенного примера можно добавить в ini-файл:

CustomQueries = ( Item = ( Name = 'MyQuery' Streams = 'main' SQL = 'SELECT * FROM MenuItems WHERE mitm_ID=%value1' ) )

Если вы хотите добавить в базу данных external-процедуру, например, MyProc, нужно создать что-то типа:

CREATE PROCEDURE MyProc_External ... ... 

В параметре SQL будет просто:

SQL = 'EXEC MyProc_External %value1'