Получение информации о базе
Для получения информации по текущей базе нужно выполнить запрос:
GET /api/v1/BaseInfo
Ответ:
{ "@odata.context": "http://172.19.0.30:9000/MobileSMARTS/api/v1/$metadata#BaseInfo", "id": "rtl15", "name": "Магазин 15, Базовый", "folder": "C:ProgramDataCleverenceБазы Mobile SMARTSМагазин 15, Базовый", "appId": "F42C7B5F-405C-4076-AE07-9348F189EE71", "appName": "Магазин 15, Базовый", "comment": null, "allConnectionStrings": [ "https://172.19.0.30:10502/rtl15", "Доступ к swagger:" "https://172.19.0.30:10502/rtl15/swagger" ], "appDescription": { "appId": "F42C7B5F-405C-4076-AE07-9348F189EE71", "appName": "Магазин 15, Базовый", "desktopReqPayment": false, "configId": "8DC2C8BA-77CE-46AD-93CB-6CFFCA7B96D7", "serverModeSupported": true, "onlineCallsSupported": false, "batchModeSupported": true, "appLink": "http://cleverence.ru/software/mobile-smarts/rtl15/", "appSupportLink": "https://www.cleverence.ru/support/category:295/", "aboutLicLink": "http://cleverence.ru/software/mobile-smarts/rtl15/#spec", "appVersionsLink": "http://cleverence.ru/software/mobile-smarts/rtl15/#spec", "comment": "Основная поставка Магазин 15", "appVersion": "1.1.1.155", "clientVersion": "3.0.0.100", "panelVersion": "1.0", "mainServerVersion": "1.0", "appServerVersion": "3.0.0.2699", "minPlatformVersion": "1.0", "minPlatform35Version": "1.0" }, "appInstanceSettings": { "mode": "Server", "hasServerAuth": false, "serverSettings": { "dataService": { "enabled": true, "port": 9000, "useHttps": false, "deviceAuth": false, "passwordAuth": false }, "printService": { "enabled": false, "port": 9001, "useHttps": false, "deviceAuth": false, "passwordAuth": false } } } }
Группы пользователей
Работа с массивом{ "@odata.context": "string", "value": [ { "id": "string", "name": "string", "documentTypeNames": [ "string" ], ": true, "role": 0, "serverSideInventory": true, "autorunDocumentTypeName": "string", "onStartHandlerName": "string", "onFinishHandlerName": "string" } ] }
Работа с записями по идентификатору
POST /api/v1/UserGroups ('{key}')
PUT /api/v1/UserGroups ('{key}')
PATCH /api/v1/UserGroups ('{key}')
DELETE /api/v1/UserGroups ('{key}')
UserGroup {
}
Получение списка пользователей группы
GET /api/v1/UserGroups ('{key}')/users
Пользователи
Работа с массивом
GET /api/v1/Users
Работа с записями по идентификатору
POST /api/v1/Users
PUT /api/v1/Users
PATCH /api/v1/Users
DELETE /api/v1/Users
User {
}
Ячейки
GET /api/v1/Cells — Список ячеек
Работа с записями по идентификатору
POST /api/v1/Cells — Добавить/редактировать ячейку
DELETE /api/v1/Cells ('{id}') — Удалить ячейку
GET /api/v1/Cells ('{id}') — Получить ячейку по идентификатору
PUT /api/v1/Cells ('{id}') — Добавь/редактировать ячейку по идентификатору
Обновление справочника со сбросом всех записей
POST /api/v1/Cells/BeginOverwrite — начинает процедуру пакетной выгрузки ячеек на сервер. Все позиции будут накапливаться и не будут доступны до вызова функции EndOverwrite.
POST /api/v1/Cells/EndOverwrite — завершает процедуру пакетной выгрузки номенклатуры. Только после вызова этой функции сервер завершит обработку переданных позиций номенклатуры и они попадут в справочник товаров. Старый справочник товаров при этом будет полностью очищен.
Обновление записей
POST /api/v1/Cells/BeginUpdate — начинает процедуру пакетного обновления ячеек на сервере. Все позиции будут накапливаться и не будут доступны до вызова функции EndUpdate.
POST /api/v1/Cells/EndUpdate — завершает процедуру пакетного обновления ячеек. Только после вызова этой функции сервер завершит обработку переданных позиций номенклатуры и они попадут в справочник товаров. Выгруженная номенклатура будет слита с существующим на сервере справочником.
Сброс обновления/ перезаписывания
POST /api/v1/Cells/ResetUpdate — сбрасывает процедуру пакетного обновления ячеек.
Номенклатура
Получение схемы
Получение списка всех полей номенклатуры:
https://localhost:9000/api/v1/ProductSchema?$expand=allfields
Получение полей номенклатуры:
https://localhost:9000/api/v1/ProductSchema?$expand=fields
Получение списка фиксированных полей:
https://localhost:9000/api/v1/ProductSchema?$expand=defaultFields
Работа с массивом
GET /api/v1/Products — список номенклатуры.
Работа с записями по идентификатору
POST /api/v1/Products — добавить/ редактировать номенклатуру.
DELETE /api/v1/Products ('{id}') — удалить номенклатуру.
GET /api/v1/Products ('{id}') — получить номенклатуру по идентификатору.
PUT /api/v1/Products ('{id}') — добавить/ редактировать номенклатуру по идентификатору.
Обновление справочника со сбросом всех записей
POST /api/v1/Products/BeginOverwrite — начинает процедуру пакетной выгрузки номенклатуры на сервер. Все позиции будут накапливаться и не будут доступны до вызова функции EndOverwrite.
POST /api/v1/Products/EndOverwrite — завершает процедуру пакетной выгрузки номенклатуры. Только после вызова этой функции сервер завершит обработку переданных позиций номенклатуры и они попадут в справочник товаров. Старый справочник товаров при этом будет полностью очищен.
Обновление записей
POST /api/v1/Products/BeginUpdate — начинает процедуру пакетного обновления номенклатуры на сервере. Все позиции будут накапливаться и не будут доступны до вызова функции EndUpdate.
POST /api/v1/Products/EndUpdate — завершает процедуру пакетного обновления номенклатуры. Только после вызова этой функции сервер завершит обработку переданных позиций номенклатуры и они попадут в справочник товаров. Выгруженная номенклатура будет слита с существующим на сервере справочником.
Сброс обновления/ перезаписывания
POST /api/v1/Products/ResetUpdate — сбрасывает процедуру пакетного обновления номенклатуры.
Обновление номенклатуры таблицей значений
POST /api/v1/Products/BeginUploadProducts — начинает выгрузку позиций номенклатуры.
POST /api/v1/Products/AddProductToUpload — добавляет в выгрузку товаров товар с упаковкой.
POST /api/v1/Products/AddProductsToUpload — добавляет в выгрузку товаров товарs с упаковками.
POST /api/v1/Products/EndUploadProducts — завершает выгрузку товаров.
Таблицы
Работа с массивом
GET /api/v1/Tables/BiznesProcessy — получить все записи таблицы.
Работа с записями по идентификатору
POST /api/v1/Tables/BiznesProcessy — редактировать/ добавить запись.
DELETE /api/v1/Tables/BiznesProcessy ('{uid}') — удалить запись из таблицы.
GET /api/v1/Tables/BiznesProcessy ('{uid}') — получить запись по идентификатору.
PATCH /api/v1/Tables/BiznesProcessy ('{uid}') — редактировать запись.
PUT /api/v1/Tables/BiznesProcessy ('{uid}') — редактировать/добавить запись по известному идентификатору.
Обновление справочника со сбросом всех записей
POST /api/v1/Tables/BiznesProcessy/BeginOverwrite — начинает процедуру пакетной выгрузки строк таблицы на сервер. Все позиции будут накапливаться и не будут доступны до вызова функции EndOverwrite.
POST /api/v1/Tables/BiznesProcessy/EndOverwrite — завершает процедуру пакетной выгрузки строк таблицы. Только после вызова этой функции сервер завершит обработку переданных позиций и они попадут в таблицу. Старое содержимое при этом будет полностью очищено.
Обновление записей
POST /api/v1/Tables/BiznesProcessy/BeginUpdate — начинает процедуру пакетного обновления строк таблицы на сервере. Все передаваемые будут накапливаться и не будут доступны до вызова функции EndUpdate.
POST /api/v1/Tables/BiznesProcessy/EndUpdate — завершает процедуру пакетного обновления строк таблицы. Только после вызова этой функции сервер завершит обработку переданных позиций и они попадут таблицу. Выгруженные позиции будут слиты с существующей на сервере таблицей.
Сброс обновления\перезаписывания
POST /api/v1/Tables/BiznesProcessy/ResetUpdate — сбрасывает процедуру пакетного обновления строк таблицы.
Документы
Получение списка типов документов
GET /api/v1/DocTypes — список типов документов.
GET /api/v1/DocTypes ('{uni}') — получить тип документа по идентификатору.
Получение всех полей типа документа
https://localhost:9000/api/v1/DocTypes?$expand=allfields
Работа с массивом
GET /api/v1/Docs — список документов.
POST /api/v1/Docs редактировать/ добавить документ.
Работа с записями по идентификатору
DELETE /api/v1/Docs ('{id}') — удалить документ.
GET /api/v1/Docs ('{id}') — получить документ по идентификатору.
PATCH /api/v1/Docs ('{id}') — редактировать документ.
PUT /api/v1/Docs ('{id}') — редактировать/добавить документ по известному идентификатору.
Обновление записей
При любом редактировании документа, он сразу не сохраняется в систему. Сохранение происходит, если вызвать принудительное сохранение (EndUpdate), либо через 30 сек от последнего изменения.
POST /api/v1/Docs ('{id}')/EndUpdate — принудительно сохраняет документ, когда все строки уже загружены (не дожидаясь сохранения через 30 сек, как указано выше).
Получение строк документа
GET /api/v1/Docs ('{key}')/declaredItems — получить строк документа.
POST /api/v1/Docs ({key})/declaredItems — редактировать/добавить строку документа.
https://localhost:5001/api/v1/Docs ('{id}') ?$expand=currentItems — получить CurentItems строк документа по его ID.
Блокировка документа
POST /api/v1/Docs ('{id}')/Block — блокирует документ для совместной работы.
Тело запроса:
{"timeout»:1000}
, где timeout — время блокировки документа
POST /api/v1/Docs ('{id}')/Unblock — разблокирует документ для совместной работы.
Склады
Работа с массивом
GET /api/v1/Warehouses — получить список складов.
Работа с записями по идентификатору
POST /api/v1/Warehouses — добавление/ редактирование склада.
DELETE /api/v1/Warehouses ('{id}') — удаление склада.
GET /api/v1/Warehouses ('{id}') — получить конкретный склад.
PATCH /api/v1/Warehouses ('{id}') — редактирование существующего склада.
PUT /api/v1/Warehouses ('{id}') — добавление/ редактирование склада по существующему идентификатору.
Warehouse {
Получение информации о подключенных устройствах
GET /api/v1/Devices — список устройств.
DeviceInfo {
}
Настройки
GET /api/v1/CustomSettings — cписок настроек
Результат:
{ "@odata.context": "http://localhost:9000/MobileSMARTS/api/v1/$metadata#CustomSettings", "value": [ { "name": "testProp", "value": "testValue" } ] }
POST /api/v1/CustomSettings — Добавить/отредактировать настройку
Тело запроса:
{ "name": "testProp", "value": "testValue" }
Также можно добавлять массив настроек:
{ "value":[ { "name": "testProp", "value": "testValue" }, { "name": "testProp1", "value": "testValue1" } ] }
GET /api/v1/CustomSettings ('{name}') — получить настройку
Тело ответа:
{ "@odata.context": "http://localhost:9000/MobileSMARTS/api/v1/$metadata#CustomSettings/$entity", "name": "testProp", "value": "testValue" }
PUT /api/v1/CustomSettings ('{name}') — Добавить/отредактировать настройку по известному идентификатор.
Тело запроса:
{ "name": "testProp", "value": "testValue" }
DELETE /api/v1/CustomSettings ('{name}') — удалить настройку
Сообщения
Действия с сообщениями:
GET /api/v1/Messages — список сообщений.
POST /api/v1/Messages — добавить/отредактировать сообщение.
GET /api/v1/Messages ('{id}') — получить сообщение по идентификатору.
MessageInfo {
}